关于渗透实战中分析微信小程序前端代码的诸多问题

版本问题

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浏览器的原因。

更多内容关注笔者公众号:极客随想

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值