版本问题
Android版本和微信版本在7.0以上,不再信任用户安装的证书,只信任软件内置的证书,这样无法抓包。
直接抓包
开启代理(例如:fiddler)进行抓包,发现小程序页面加载不全,且无法抓到https的包。此方法行不通了。
模拟器
使用夜神模拟器配合 burpsuite 进行抓包。夜神模拟器不一定要老版本,有人会觉得新版本抓取 HTTPS 包会比较麻烦,所以一直不敢换版本。其实模拟器最大的好处就是随意开启root权限,这样就算是Android7.0以上,我们只需使用root权限把证书安到系统内置列表就行。
然后就是常规的看IP、设端口、手机WiFi设置代理(代理地址和代理端口与bp需要一致)、浏览器访问IP:端口、下载证书、安装证书。
这方法也不行了。
PC端
既然移动端这么难搞,那么转移到PC端。PC端微信小程序直到2019年8月更新至2.7.0版本才有。相较于移动端,那抓包要容易的多。
PC端打开微信小程序,开启Fiddler代理,直接可以抓包。
(此方法也已经不行了)
PC端Plus
接上一小节,桌面端微信小程序升级,使用了不同的架构,Fiddler无法获取到参数信息。观察发现,小程序进程的名字从【WeChatApp.exe】
变成了【WeChatAppEx.exe】,如图:
有个临时解决方法。结束小程序进程,退出电脑微信,然后找到这个目录:
删除WMPFRuntime下所有的文件夹,然后重启PC微信,重新开始抓包即可。
PS:根据小程序功能的不同,该目录会有所区别。如果是类似于Web框架的,可以找到这个目录:
删除目录下的所有内容,在重新启动微信即可抓包。
(以上方法极不稳定)
流量转发
利用流量转发可以彻底解决这一的问题。 可以用sockscap或者Proxifier,或者其它的软件都行。俺用的是Proxifier。
Proxifier是一款功能非常强大的socks5客户端,可以让不支持通过代理服务器工作的网络程序能通过HTTPS或SOCKS代理或代理链。即:让代理不支持代理的程序变的可行(言语理解)。
Proxifier支持各种操作系统和各代理协议,它的运行模式可以指定端口,指定程序的特点。
我们指定的程序就是上面提到的【WeChatAppEx.exe】。
可以设置代理服务器。
代理规则需要设置优先级,一般俺放在最前面。
然后bp就可以像代理浏览器一样正常工作了。这里需要开全局代理。像Chrome浏览器其本身并没有用于设置代理服务器的任何特定配置选项,也就只能开全局代理。这也是一部分人喜欢用Firefox浏览器的原因。文章来源:https://www.toymoban.com/news/detail-445656.html
更多内容关注笔者公众号:极客随想。文章来源地址https://www.toymoban.com/news/detail-445656.html
到了这里,关于关于渗透实战中分析微信小程序前端代码的诸多问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!