工具:
一部root的安卓手机
MT文件管理器
反编译小程序包的脚本:
https://github.com/xuedingmiaojun/wxappUnpacker
微信开发者工具:
https://developers.weixin.qq.com/miniprogram/dev/devtools/stable.html
burp插件:
https://github.com/whwlsfb/BurpCrypto
0x01 获取微信小程序的包
在小程序中打开小程序
打开小程序之后等待加载完整,等待对应的js文件下载下来
然后从手机的
/data/data/com.tencent.mm/MicroMsg/15505efeefb7e748aecc13da009de933/appbrand/pkg
这个路径下找到对应的包
15505efeefb7e748aecc13da009de933为小程序的序号
由于这个序号是每打开一个小程序就会生成一个 因此为了避免干扰 可以通过时间排序或者将其他的序号都删除的办法去找到对应的包
wxapkg后缀就是小程序的包
然后将这个些包先拷贝到/sdcard 目录
之后再用adb pull命令将其拉取出来
cp /data/data/com.tencent.mm/MicroMsg/15505efeefb7e748aecc13da009de933/appbrand/pkg_1016245346_187.wxapkg /sdcard/
adb pull /sdcard/pkg_1016245346_187.wxapkg/ C:UsersadminDesktop
这样就可以在电脑上获取了小程序的包
0x02 反编译小程序的包
工具下载:
https://github.com/xuedingmiaojun/wxappUnpacker
使用命令对wxapkg包进行反编译
编译的一般是那个3M左右的wxapkg包
解出来的包有app.js和app.json是对的 因为这个是小程序的入口文件
0x03 将文件导入开发者工具中调试
工具下载:
https://developers.weixin.qq.com/miniprogram/dev/devtools/stable.html
导入解开的文件夹
把这个给勾上
然后就可以进行调试了 能调试的前提是获取的文件一定要完整
就可以看到一些加密方式和密钥
0x04 使用burp进行加解密
有了加解密方式和KEY就需要进行加解密脚本的编写
工具:https://github.com/whwlsfb/BurpCrypto
可以使用这个写好的burp插件 它自带的一些算法可以直接使用
但是很多时候这些算法都不是这么简单的加解密算法 因此用的更多的还是Exec Js这个模块 自己写加解密
首先需要将CryptoJs加入到代码行中 后面才可以进行调用
通过逆向小程序的得到的算法为aes,那么就写一个aes解密算法
添加到脚本里
选中要解密的字符串,然后再选择添加的算法皆可进行解密
解开
当然也可以正则匹配去自动生成一些加密参数
如果需要进行爆破 只需要在这里添加即可
团队logo刚刚定下来,欢迎大家多多点赞,啾咪~~~~~
原文始发于微信公众号(横戈安全团队):小程序逆向与BURP加解密脚本编写
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论