APP渗透—微信小程序、解包反编译、数据抓包

admin 2023年6月5日20:18:04评论109 views字数 3768阅读12分33秒阅读模式

0.前言

由于都是发自己的文章,所以也不会有那么多的内容发布,最近的这个APP系列知识更新完,后续将更新内网或者工具类。

0.1.免责声明

传播、利用本公众号剁椒鱼头没剁椒所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号剁椒鱼头没剁椒及作者不为此承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!

0.2.其它

部分文章由于之前授权给其它公众号发布,所以有些并未加入相关的系列中,还请到历史文章中查看,尤其的提取方面的文章。

由于不少朋友和我说使用CSDN看文章不方便,有时候设置粉丝阅读后还需要登陆账户,所以这里我准备了一个公众号,会陆续将文章同步过来,期间可能也会发一些其它内容。

文章内容太多不适合使用手机观看,手机只适合用来点赞😀

内容同步于CSDN:剁椒鱼头没剁椒

1. 前言

在之前的第一篇文章中简单的描述了一下微信小程序抓包的过程,但是不是很详细,所以这里单独写一篇关于微信小程序抓包、解包、反编译的一篇文章。

这里对小程序进行抓包、反编译等操作,都是为了进行信息收集,主要就是提取资产进行渗透测试。

2. 小程序抓包

不管是在真机还是模拟器中在安卓系统上抓包,可能会存在以下问题:

  • 安卓系统 7.0 以下版本,不管微信任意版本,都会信任系统提供的证书
  • 安卓系统 7.0 以上版本,微信 7.0 以下版本,微信会信任系统提供的证书
  • 安卓系统 7.0 以上版本,微信 7.0 以上版本,微信只信任它自己配置的证书列表

相应的解决办法就是如下:

  • 将证书安装到系统证书中(需要 root)
  • 苹果手机(苹果手机不受此影响)
  • 采用安卓系统低于 7.0 的模拟器

2.1. 安卓系统5.0版本测试

这里我使用夜神安卓系统5.0版本进行测试。

2.1.1. 添加模拟器

这里只需要在模拟器助手中点击添加模拟器,选择安卓5即可。

APP渗透—微信小程序、解包反编译、数据抓包
image-20230505080630043

2.1.2. 安装证书

这里使用Burp来进行抓包,至于Fiddler在之前已经提过了,这里就不再提了。

2.1.2.1. 确保在同一局域网

关于如何确保在同一局域网这方面我就不再赘述了,之前的文章中也是多次提到,这里我们直接设置burp工具。

2.1.2.2. 设置burp工具

首先打开burp,添加一个监听端口,这里的监听IP要与你主机的IP是一致的才可以。

APP渗透—微信小程序、解包反编译、数据抓包
image-20230505081724124

2.1.2.3. 设置模拟器代理

这里进入WIFI``长按WIFI``设置代理,这里的IP地址也同样是主机的IP地址端口需要和burp工具上的端口对应,详细的教程可以看之前的文章,之前的文章中有非常详细的介绍。

APP渗透—微信小程序、解包反编译、数据抓包
image-20230505081847892

2.1.2.4. 下载证书

这里就需要安装burp证书了,访问IP:端口,即可下载证书。

APP渗透—微信小程序、解包反编译、数据抓包
image-20230505082210555

2.1.2.5. 修改证书

证书下载完之后,需要将下载的证书 cacert.der 修改为cacert.cer,否则无法安装证书,下载后打开模拟器共享,就能够看到这个证书了,这里将cacert.der 修改为cacert.cer即可。

APP渗透—微信小程序、解包反编译、数据抓包
image-20230505082405624

2.1.2.6. 安装证书

这里需要提前找到证书存放的位置,可以去按照共享中找一找。

APP渗透—微信小程序、解包反编译、数据抓包
image-20230505082632609

打开设置安全从SD卡安装cacert.cer设置一个密码为证书命名确定证书就安装了,这里我没截到图,我用之前的图片代替一下。

APP渗透—微信小程序、解包反编译、数据抓包
image-20230505083217019

2.1.3. 抓包测试

在我们把证书按照完成后,就可以进行抓包测试了,这里可以看到已经抓到包了。

APP渗透—微信小程序、解包反编译、数据抓包
image-20230505084148094

2.2. 电脑版微信抓包

在电脑版中进行小程序抓包,其实也是可以的。

2.2.1. 下载证书

这里使用Fiddler来抓电脑版微信小程序的包,由于我看了一下使用burp老是会跳,并不会停留,虽然也能够抓取到,但是一瞬间就消失了,所以还是使用Fiddler来抓取。

这里选择第二个就会在桌面上生成一个证书。

APP渗透—微信小程序、解包反编译、数据抓包
image-20230505193527624

2.2.2. 安装证书

这里需要将Fiddler的证书安装到浏览器中,注意这里安装证书一定要在控制面板中打开internet选择进行安装证书,同时在安装的时候一定要选择受信任的根证书颁发机构,这样安装的证书才有效果。

APP渗透—微信小程序、解包反编译、数据抓包
image-20230505192133465

2.3. 尝试抓包

这里其它的设置,看了那么多篇APP渗透测试,想必一些常见的设置都会了,这里我就不在赘述了,直接开始尝试抓包。

2.3.1. 微信设置代理

这里需要在微信的登陆页面设置代理,IP地址就是你主机的IP地址,端口与Fiddler中设置的是一样的即可,这里点击确定后会自动显示是否能够连接成功,一般都会显示连接成功的,如果显示连接不成功请提前将Fiddler打开。

APP渗透—微信小程序、解包反编译、数据抓包
image-20230505193856692

2.3.2. 登陆微信

这里就只需要登陆微信,在登陆过程中其实就能够看到有很多的数据包了。

APP渗透—微信小程序、解包反编译、数据抓包

2.3.3. 抓取小程序

这里就可以抓取小程序了,不过最好可以将之前的数据包删除,这里可以看到我打开了逆水寒手游,获取到https的信息,那么这样就是获取成功了。

APP渗透—微信小程序、解包反编译、数据抓包
image-20230505194357604

2.3.4. 注意事项

在一些情况下,你会发现之前还是能够获取好好的,突然无法获取了,这个由于你使用电脑版微信在登陆一下小程序后。

这时候就需要将C:UsersAdministratorAppDataRoamingTencentWeChatXPluginPluginsWMPFRuntime这个目录下的所有文件夹都清空,这个文件夹主要就是加载小程序的。

这里是我提前删除了。

APP渗透—微信小程序、解包反编译、数据抓包
image-20230505194703380

3. 小程序分包反编译

关于小程序的分包反编译,目前没有特别好的免费工具来进行,好的工具都需要充值vip。

3.1. 小程序缓存目录

找到微信小程序的缓存目录,当然里面会存在很多的文件夹,可以都删除,然后打开一个小程序加载。

APP渗透—微信小程序、解包反编译、数据抓包
image-20230505200126483

3.2. 尝试加载小程序

这里我们只点击一个小程序加载,太多的话容易搞混,在wx开头的文件夹下面会有一个后缀为wxapkg文件,这个文件就是小程序编译后的文件。

APP渗透—微信小程序、解包反编译、数据抓包
image-20230505202234714

3.3. 尝试反编译小程序

这里我们就尝试手动反编译吧,不过会存在问题哦,不一定是百分比能够成功的,毕竟像之前说的好工具是要钱的,尝试找破解版的,但是没用。

3.3.1. 安装nodejs

这里我不知道我是什么时候安装的,可能安装的工具多了就曾经在某一刻是安装过的,这里我就不再安装了,给个连接自行安装吧。

nodejs[1]

安装后打开cmd输入node -v看到显示版本就证明安装成功了。

APP渗透—微信小程序、解包反编译、数据抓包
image-20230505202556568

3.3.2. 解密小程序

这里我们将加密的小程序添加进去,然后在wxpack文件夹中找到刚刚解密的文件夹即可。

解密小程序[2]提取码:tncx

APP渗透—微信小程序、解包反编译、数据抓包
image-20230505203017024

3.3.3. 反编译脚本

打开反编译脚本,将刚刚解密后的文件放入该目录下。

反编译脚本[3]提取码:031b

APP渗透—微信小程序、解包反编译、数据抓包
image-20230505203354454

3.3.3.1. 安装依赖

这里就需要先在反编译脚本目录下安装依赖,这里挺麻烦的,但是没办法呀,穷买不起会员,无法一键反编译。

npm install esprima
npm install css-tree
npm install js-beautify
npm install uglify-es
npm install vm2
npm install cssbeautify
APP渗透—微信小程序、解包反编译、数据抓包
image-20230505203724403

3.3.3.2. 执行反编译

如果上面一切顺利的话就可以执行反编译了。

node wuWxapkg.js wx6642bb131bfd374b.wxapkg
APP渗透—微信小程序、解包反编译、数据抓包
image-20230505203906359

3.3.4. 查看反编译后文件

这里我们就可以在当前目录下查看对应的反编译文件夹了,看到后就可以使用微信开发者工具打开了。

微信开发者工具[4]

APP渗透—微信小程序、解包反编译、数据抓包
image-20230505204229668

3.3.5. 查看工程

到这里就可以将文件加入微信开发者工具的工程中了,不过这里需要申请一个测试账号,非常简单,无需什么麻烦的操作。

APP渗透—微信小程序、解包反编译、数据抓包
image-20230505204937490

参考资料

[1]

nodejs: https://nodejs.org/zh-cn/download

[2]

解密小程序: https://pan.baidu.com/s/1lEcUJb3YlP4rgqitpjS3bg?pwd=tncx

[3]

反编译脚本: https://pan.baidu.com/s/1VCxqWhx6jaOmdlSThFthTw?pwd=031b

[4]

微信开发者工具: https://developers.weixin.qq.com/miniprogram/dev/devtools/stable.html

原文始发于微信公众号(剁椒鱼头没剁椒):APP渗透—微信小程序、解包反编译、数据抓包

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年6月5日20:18:04
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   APP渗透—微信小程序、解包反编译、数据抓包https://cn-sec.com/archives/1778939.html

发表评论

匿名网友 填写信息