文章转自 戟星安全实验室 侵权请联系删除
0x01 微信代理抓包
以Windows系统为例,打开微信客户端,点设置按钮,添加本地代理:
打开IE浏览器,为本地服务开启相同的本地代理:
burp打开代理,就可直接抓取微信数据包了:
但由于代理本地服务,很多流量都会通过IE内核,存在流量复杂的问题,加上微信7.0之后只信任内置证书,部分小程序不能有效抓包。
0x02 模拟器抓包(Burp CA)
在此我使用的是MUMU模拟器,官网直接下载最新版就行。首先需要打开模拟器root权限:
导出burp CA证书,以DER格式导出CA证书,保存为cacert.der :
Android使用PEM格式的证书,并且文件名为subject_hash_old值并以.0结尾,存储,在/system/etc/security/cacerts目录下。我们需要使用openssl工具将DER转换成PEM,然后输出,subject_hash_old并重命名该文件。
MAC终端执行如下命令生成相关文件:
openssl x509 -inform DER -in cacert.der -out cacert.pem
openssl x509 -inform PEM -subject_hash_old -in cacert.pem |head -1 mv cacert.pem 9a5ba575.0
9a5ba575.0文件输出在cacert.der文件同目录下:
将生成的.0文件通过MUMU模拟器的共享文件,拷贝到模拟器的 /system/etc/security/cacerts 目录下:(这里推荐使用ES文件浏览器)
给MUMU模拟器的设置-wifi配置代理,即可登入模拟器微信抓包:(代理地址为物理机内网地址,同时在本机Burp上设置同样的代理即可)
0x03 模拟器抓包 (XPosed+JustTrustMe)
根据模拟器安卓版本,选择合适的XPosed框架进行下载,将下载好的XPosed.apk文件放入MUMU模拟 器的共享文件夹双击安装即可:(此处MUMU模拟器也需要开启root权限)
安装过程中如果多次显示XPosed框架未激活,可尝试更改为移动手机热点重试,自己下载对应sdk解决,安装好XPosed之后,下载JustTrustMe.apk放入MUMU共享文件夹安装。按照Burp CA方式配置手机代理即可抓包,这里不再演示。
0x04 手机代理抓取微信数据包
网上有很多关于手机抓包设置,相关证书导入等文章,
根据自己使用感受,手机代理直接抓包丢包问题稍微有点严重,不知道是不是本人ios系统的原因,有 时候还不能抓到,这里首先还是推荐Burp CA和XPosed框架代理两种方式,相对稳定很多。
以上就是自己在小程序渗透测试过程中所使用过的数据包截取方式,如果有合适的好方法,还希望大家分享。