目录
一、信息收集第一枪:从微信公众号到APP,如何高效定位脆弱资产
二、SQL 注入突破实战
三、总结
一、信息收集第一枪:从微信公众号到APP,如何高效定位脆弱资产
通过某次众测,本次众测目标为某企业系统,仅提供公司名称,未给任何IP、域名或测试账号。这意味着,信息收集必须从零开始,完全依赖公开渠道。


1、信息收集阶段严格限定在授权范围内,通过多源被动情报搜集与轻量级主动探测,完成了对子域名及 C 段资产的测绘工作。
子域名探测:通过 DNS 历史解析记录、第三方情报平台与字典爆破结合的方式,交叉验证并获取目标授权域名下的存活子域名,同时基于 HTTP 响应码、标题与服务指纹完成资产分类。 C 段资产测绘:基于存活域名对应的 IP 地址,定位授权网段并进行非破坏性端口与服务探测,梳理同网段关联资产,为后续入口突破提供基础支撑。

2、对目标站点进行快速高危漏洞探测后,未发现未被提交的有效漏洞;随后调整策略,通过公开情报平台及公众号、小程序、APP等多入口,拓展目标关联资产范围。
对目标主站进行了快速高危脆弱点探测,尝试覆盖 SQL 注入、XSS、文件上传等常见漏洞,但未发现可利用的唯一性高危漏洞(项目规则为先提先得)。于是调整策略,转向多维度资产拓展,通过 “小蓝本” 等平台查询目标关联资产,同时主动溯源相关公众号、小程序及移动端 APP 入口,寻找新的突破方向。

3、APP 与公众号入口测试:配置手机代理,使用 Fiddler/Burp Suite 抓包,对业务流量进行分析。
通过公众号可找到以下界面

4、点击公众号左下角的功能模块后,通过抓包分析发现,其请求接口参数存在 SQL 注入风险。

通过注入参数:catalog_ids可以得到以

不难想象到对catalog_ids添加 ' 来测试是否存在sql注入 通过添加一个 ' 得到以下响应

通过添加两个 ' 得到以下响应

多次测试发现对单引号敏感,判断出存在sql注入
二、SQL 注入突破实战
接下来便是sql注入完整过
1、先构造常规注入载荷测试点位,尝试' and '1'='1等各类基础语句。测试发现站点部署 WAF 防护,常规攻击语句均被拦截,防护策略具备一定防护效果。随即开启模糊测试摸索拦截规则,梳理出基础绕过思路后,不断变形调整载荷,尝试获取数据库数据。

当' and 99999999999999999999999*9999999999999999999999999999999999+='1 溢出报错并且尝试发现使用case when语句会被拦截,准备bypass
2、bypass可以参考以

3、准备bypass


根据尝试使用' and 1+='1测试,页面正常返回数据。再传入超大数值乘法语句,触发数值溢出报错。据此构造报错注入 Payload:'or/**/case when length(user)='1' then 1 else/**/999999999999999999999999999*99999999999999999999999999999999999999999999999999999(在else后面使用/**/隔开就好了)

4、爆破数据库
得到用户名为20位,那么我选择爆破数据库

然后便可以轻易得到数据库名类似于database为:****_client 最后构建poc:' or/**/ case when database() like '&a&%' then 1 else/**/999999999999999999999999999*9999999999999999999999999999999999999999999999999999999 end ='1

app端与公众号端一样,无任何区别
三、总结
本次渗透从域名、C 段开展基础信息搜集,探查主站未挖到新增高危漏洞后,转而挖掘公众号与 APP 这类易忽略入口。通过抓包分析交互请求,成功定位 SQL 注入点位。初始常规载荷遭到 WAF 拦截,经模糊测试摸索防护规则,借助数值溢出报错特性构造绕过 Payload,最终实现数据库信息读取,印证移动端入口是渗透测试中重要的突破方向。






