针对微信小程序的渗透测试(附实战)

华盟原创文章投稿奖励计划

针对微信小程序的渗透测试(附实战)

材料准备:

burp suite、模拟器(把微信装好)、node.js、wxappUnpacker、root explorer

操作流程:

步骤1: 配置Burp和模拟器(模拟器需导入ca证书),打开模拟器的WLAN-->高级设置-->输入物理机的ip以及一个没被占用的端口,Burp用于代理该端口

针对微信小程序的渗透测试(附实战)

步骤2:打开微信-->随便点击一个小程序进入小程序主界面,然后打开文件管理器

针对微信小程序的渗透测试(附实战)

 

 

在/data/data/com.tencent.mm/MicroMsg/xxxxxxx(不同微信文件夹也不同)/appbrand/pkg/目录下存放着刚才访问这个小程序的两个数据包,

 

针对微信小程序的渗透测试(附实战)

 

两个包分为子包和主包 

压缩后通过模拟器的微信发送到物理机进行反编译

针对微信小程序的渗透测试(附实战)

 

可以直接用notepad++ 但是会有乱码,这里使用git下载的wxappUnpacker进行反编译CMD进入wxappUnpacker的下载目录,安装依赖包

 

Shellnpm install esprimanpm install css-treenpm install cssbeautifynpm install vm2npm install uglify-esnpm install js-beautify

 复制 文本

 

针对微信小程序的渗透测试(附实战)

 

 

依赖包安装好后 使用命令node wuWxapkg.js C:xxxxxxxxxxxx_-1971317095_1.wxapkg

进行反编译(如果是子包的话需要加-s参数)

 

针对微信小程序的渗透测试(附实战)

反编译完成

接下来就是针对所有js、html进行漏洞分析,寻找突破口

针对微信小程序的渗透测试(附实战)

 

针对微信小程序的渗透测试(附实战)

 

 

通过简单的信息收集得知该小程序是windows+iis7.5+.net+mssql80、443、3389端口开启从js中得到一个接口用于判断手机号是否注册

针对微信小程序的渗透测试(附实战)

 

通过单引号 和 '--(单引号+mssql闭合) 发现返回包不同 

 

使用单个单引号 报错:系统故障

 

针对微信小程序的渗透测试(附实战)

 

使用 单引号跟闭合 返回正确数据包  因此判断该处通过单引号闭合

 

针对微信小程序的渗透测试(附实战)

 

最后验证存在SQL注入

 

针对微信小程序的渗透测试(附实战)

 

注入点权限很小 --os-shell权限为iis且注入点只能布尔和延迟,列目录写shell属实浪费时间通过子域名扫描得到后台一枚,且发现该程序居然还是一个通用系统。。

针对微信小程序的渗透测试(附实战)

针对微信小程序的渗透测试(附实战)通过注入点拿到后台账号密码后 就是常规的渗透思路了,本文着重于微信公众号的反编译(最后好像有点跑题),有不足之处希望私信留言指正!

 

 内容来源:https://www.bilibili.com/read/cv9986715

黑白之道发布、转载的文章中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途及盈利等目的,否则后果自行承担!

如侵权请私聊我们删文


END

针对微信小程序的渗透测试(附实战)

本文来源https://www.bilibili.com/read/cv9986715,经授权后由华盟君发布,观点不代表华盟网的立场,转载请联系原作者。

发表评论