0x01 材料准备
burp suite
、模拟器(把微信装好)、node.js、wxappUnpacker、root explorer
0x02 操作流程
步骤1: 配置Burp和模拟器(模拟器需导入ca证书),打开模拟器的WLAN-->高级设置-->输入物理机的ip以及一个没被占用的端口,Burp用于代理该端口
步骤2:打开微信-->随便点击一个小程序进入小程序主界面,然后打开文件管理器
在/data/data/com.tencent.mm/MicroMsg/xxxxxxx
(不同微信文件夹也不同)/appbrand/pkg/
目录下存放着刚才访问这个小程序的两个数据包。
两个包分为子包和主包 压缩后通过模拟器的微信发送到物理机进行反编译
可以直接用notepad++
但是会有乱码,这里使用git下载的wxappUnpacker
进行反编译 CMD进入wxappUnpacker
的下载目录,安装依赖包
Shell
npm install esprima
npm install css-tree
npm install cssbeautify
npm install vm2
npm install uglify-es
npm install js-beautify
复制文本
依赖包安装好后 使用命令node wuWxapkg.js C:xxxxxxxxxxxx_-1971317095_1.wxapkg
进行反编译(如果是子包的话需要加-s参数)
反编译完成 接下来就是针对所有js、html
进行漏洞分析,寻找突破口
通过简单的信息收集得知该小程序是windows+iis7.5+.net+mssql``80、443、3389
端口开启 从js中得到一个接口用于判断手机号是否注册
通过单引号 和'--(单引号+mssql闭合)
发现返回包不同
使用单个单引号 报错:系统故障
使用 单引号跟闭合 返回正确数据包 因此判断该处通过单引号闭合
最后验证存在SQL注入
注入点权限很小--os-shell
权限为iis
且注入点只能布尔和延迟,列目录写shell属实浪费时间通过子域名扫描得到后台一枚,且发现该程序居然还是一个通用系统。
通过注入点拿到后台账号密码后 就是常规的渗透思路了,本文着重于微信公众号的反编译。
作者:0x09_A
★
免责声明由于传播、利用本公众号李白你好所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号李白你好及作者不为此承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!
”
end
网络¥安全联盟站—李白你好
欢迎关注[李白你好]-文章内容涉及网络¥安全,web渗透测试、内网安全、二进制安全、工业控制安全、APP逆向、CTF、SRC等。
微信:libaisec
微信交流群:加我微信拉你进群和工程师们学技术聊人生
原文始发于微信公众号(李白你好):微信小程序渗透测试
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论