问答
发起
提问
文章
攻防
活动
Toggle navigation
首页
(current)
问答
商城
实战攻防技术
漏洞分析与复现
NEW
活动
摸鱼办
搜索
登录
注册
攻防演练之迂回技战法真实案例
渗透测试
在攻防演练面对一套系统无从下手时,应该怎么采用迂回打法的思路通过代码审计拿0day砸进去呢?且看该案例
目标 == 开局一个登录框,目标这个样子,记为A,通过常规测试没有突破,从html中提取一些关键字,通过测绘平台搜一下,看能不能打同类型站点获取源码,然后审计出漏洞点。  搜索结果,我一般挑选云厂商的机子打,因为在云上的机器一般有多个站点可以打且防护做的不到位。  突破 == 又对A同类型站点测试后依然没有突破,挑选其中一个ip信息收集后,发现开放的站点B,如图  注入进入后台,可以直接上传webshell  然后把使用A的源码打包下载,本地审计后,通过 登录绕过+文件上传 组合拳成功拿下A的同类型测试站   曲折 == 然后去打目标A的时候发现了不对劲,对应的接口没有成功  回头重新看有什么细节不对 目标A登录包:  测试站登陆包:  在手上的源码里没有搜到 `getPhoneByLoginName` 这个接口,那就是目标A的版本与测试站的版本不同 ,白忙活 :( 重来 == 再次提取A的特征,重新通过测绘搜索同类型站点,这次就三个资产,再次信息收集,通过云主机ip的其他端口站点进行打点。  成功进来,但是这个byd站点很多,根本找不到哪一个网站是目标源码,而且是低权限+360  先提一下权  然后列一下开启的站点:`C:\Windows\System32\inetsrv\appcmd list site`,成功找到  然后打包源码,dnspy启动  审计后发现登录流程分为三步 1. 通过用户名验证手机号是否存在 2. 登录时需要手机验证码 3. 通过 /Login/loginUser 再次验证用户 但是真正赋予登录session的是第三步  其中第三步本质还是通过验证账号密码,根本不需要手机验证码参与验证,也就是说只要知道账号和密码,就能无视验证码,直接构造/Login/loginUser对应的数据包即可。  但是账号密码我怎么知道,回过头看拿下的测试站,互联网上站点数量这么少并且机器上有很多站点,那么很有可能这个站点就是开发商的定制开发测试站,定制开发完交给客户,那么必有一定的测试文件以及数据库文件。 拿下 == 通过对目录的仔细翻找,成功找到与目标站有关系的信息,包含一个用户名与明文密码  甚至历史数据库  凭借这些信息,成功登录目标站  已经后台了,getshell轻轻松松  顺带一个waf后缀绕过  总结 == 通过 **找源码->审计->未授权RCE** 或 **同系统站点->渗透测试->RCE->审计->未授权RCE** 的迂回打法思路,在攻防演练中会有奇效。引用远海师傅的图:  
发表于 2024-09-09 09:00:02
阅读 ( 3615 )
分类:
渗透测试
5 推荐
收藏
2 条评论
我是小学生
2024-10-29 02:02
您好 您文章里提到的 测绘平台 是哪个平台呢 我想实操一下试试
请先
登录
后评论
PumpkinBridge
2025-03-05 09:58
hunter
请先
登录
后评论
请先
登录
后评论
Y0ng
1 篇文章
×
发送私信
请先
登录
后发送私信
×
举报此文章
垃圾广告信息:
广告、推广、测试等内容
违规内容:
色情、暴力、血腥、敏感信息等内容
不友善内容:
人身攻击、挑衅辱骂、恶意行为
其他原因:
请补充说明
举报原因:
×
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!