今天想用burp对PC的微信小程序进行渗透测试,发现怎么抓也抓不到,明明之前可以抓的,经过几小时的研究和资料搜集,终于解决。顺手把如何对手机/模拟器进行抓包也写了下,在文末我会提到是如何解决这个头疼且深刻的问题,这个问题我相信大家应该都会有,希望能帮助到大家。
一、抓手机/模拟器的微信公众号、小程序、APP
前提:保证电脑和手机在同一局域网
(1)初阶
电脑端使用ipconfig
查看当前IP地址
手机端打开WLAN设置,手动指定代理,代理IP地址为电脑端的IP地址例如上面的192.168.43.170,端口设置为例如8081
此时打开burp,设置监听(非本地回环地址)
此时,burp就能抓手机访问网页的包了。
但是对于一些HTTPS的站点,手机访问会弹出警告——证书不受信任
点击确定继续后,burp才可以抓到该数据包
(2)进阶
上面的方法很快就能用手机进行渗透测试,但是有一个问题:**对HTTPS站点的渗透很繁琐甚至无效,以及对微信公众号(抓不全)和小程序会出现抓不到包、无法抓取app的情况。**在手机导入一个burp证书即可
手机设置好代理后,访问http://burp下载证书,下载的一般默认是der格式,修改成cer格式,然后从存储设备安装即可,凭据用途可以“WLAN”、“VPN和应用”都安装。
安装好证书后,即可抓取公众号、小程序、app的包
二、抓电脑端微信公众号、小程序
burp设置好代理,导出证书
打开Edge浏览器——设置——隐私、搜索和服务——管理证书,下载证书并导入,注意一定是选择受信任的根证书颁发机构
导入好证书后,设置好代理
按理来说,这样就可以抓到公众号和小程序的包了,但实际情况是完全抓不到小程序的包。
我们可以退出微信PC端,将目录C:\Users\用户名\AppData\Roaming\Tencent\WeChat\XPlugin\Plugins\WMPFRuntime
目录下的所有文件删除
重新登录微信,再次尝试抓小程序的包,就可以抓到包了。
可能有的师傅没有这个目录,我们可以随便打开一个微信小程序,打开任务管理器,定位到小程序的进程,打开文件所在位置
回退到Plugins目录下,进入WMPFRuntime文件夹,退出微信,删除该文件夹目录下所有文件,重新登录微信PC端即可抓到小程序的包。
这样不是长久之计,但目前能做的只有抓不到就删除一次,抓不到删除一次,问我为什么这样就可以了,我也不懂hhh。有师傅有更好的解决方案,欢迎评论区提出~