- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
抓取微信⼩程序数据包的三种⽅法
前⾔
做安全测试的都会遇到测试某微信⼩程序,⽽微信⼩程序基本都是基于HTTPS的,所以抓取HTTPS数据包就是最关键的⼀步。最近⼏天折
腾了⼀下,整理了⽐较简单、⽅便的三种⽅法。
条件
抓取微信⼩程序数据包的关键点,就是SSL证书绑定的问题。
在安卓系统7.0以下的版本,不管微信是什么版本,都会信任系统提供的证书,⽽现在微信版本已经到了7.0.15 且安装⽼版本也会强制⽤户
升级,且微信只信任系统及⾃⾝内置的证书。
具体如下
安卓系统7.0以下:微信的任意版本,都会信任⽤户提供的证书
安卓系统7.0以上:微信7.0以下版本,微信会信任⽤户提供的证书
安卓系统7.0以上:微信7.0以上版本,微信只信任系统及⾃⾝内置的证书
IOS不做探讨。
实验环境
Redmi Note 4X ⼿机(未ROOT)
Android ⼿机:MIUI 11.0.2
Android 内核版本:7.0
微信:WeChat 7.0.15
MuMu 模拟器 版本:1.9.15
Android 内核版本:6.0.1
微信:WeChat 7.0.10
VirtualXposed :0.15.1
XPosed和 JustTrustMe抓包
简介:XPosed 是⼀个框架,⽤来改变系统的某些关键操作。JustTrustMe ⽤来禁⽤、绕过SSL 证书验证。
使⽤这种⽅法进⾏抓包的时候要求安卓⼿机必须需要ROOT。
所以我这⾥采⽤⽹易MuMu模拟器。
官⽹直接下载MAC版本,安装。Android 内核版本为6.0.1。
Android 版本5.0 以上点击该链接。
来到该页⾯。点击apk下载并安装到⽹易MuMu模拟器。
安装Xposed框架。
注意这⾥设置MuMu开启ROOT权限。否则安装不成功。
勾选开启ROOT权限。解决Failed to get root access错误。
下载安装以后。
点击允许,之后重启设备。
显⽰Xposed框架成功激活。
接下来下载安装JustTrustMe。后拖进MuMu模拟器即可。
在Xposed install 中选择模块,勾选JustTrustMe
重启设备后即可抓取微信⼩程序数据包。
配置⼿动代理。
burpsuite添加Proxy。即可抓取数据包。
VirtualXposed 和 JustTrustMe 抓包
简介:和上⼀种⽅法原理⼀样。都是利⽤的Xposed框架和JustTrustMe模块。只不过可以在⾮ROOT环境下运⾏。这是因为
VirtualXposed是基于VirtualApp和epic在⾮ROOT环境下运⾏Xposed框架的实现。
我这⾥选择安装在红⽶⾮ROOT的安卓⼿机上。
安装完成显⽰Xposed框架为激活状态。
接着下载JustTrustMe,从后,再将JustTrustMe克隆安装在VirtualXposed中,并启⽤JustTrustMe模块。
重启设备。再将需要抓取数据包的app(微信)克隆到VirtualXposed中。
打开微信的⼩程序。
并在⼿机的⽹络上配置代理。burpsuite抓包即可。
坑点:
在VirtualXposed打开微信时,有可能提⽰打开应⽤ com.tencent.mm 失败。尝试从⽼版本微信更新有可能解决该问题。
Burp CA抓包
本7.0以下。
先导出burp CA证书,以DER格式导出CA证书,保存为cacert.der。
Android使⽤PEM格式的证书,并且⽂件名为subject_hash_old值并以.0结尾,存储在/system/etc/security/cacerts⽬录下。我们需要
使⽤openssl⼯具将DER转换成PEM,然后输出subject_hash_old并重命名该⽂件。
命令为
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 hash.0
在MAC终端上依次运⾏以上命令。
本地就会输出9a5ba575.0⽂件。
然后将该证书⽂件拷贝到MuMu模拟器的/system/etc/security/cacerts ⽬录下。
配置⽹络代理,burp即可抓取微信⼩程序数据包。
注意:这⾥测试的是微信 6.6.0版本(从PP助⼿的历史版本下载来的)。测试微信7.0版本⽆法抓取HTTPS数据包。
总结
文档评论(0)