微信小程序11177版本开启控制台方法

文摘   2024-08-17 16:47   陕西  

前言:

好久没写东西了,这个文章属于抄作业,看着大佬的教程调试的,别喷


获取WeChatAppEx位置

打开任意小程序后,调出任务管理器

单机鼠标右键,选择打开文件位置,即可跳转至WeChatAppEx.exe目录

%USERPROFILE%\AppData\Roaming\Tencent\WeChat\XPlugin\Plugins\RadiumWMPF

WeChatOpenDevTools工具地址:

https://github.com/JaveleyQAQ/WeChatOpenDevTools-Python

下载后,在WeChatOpenDevTools-Python-main\configs创建address_11177_x64.json文件,文件内容如下:

{
"LaunchAppletBegin": "0x289F94C",
"MenuItemDevToolsString":"0x28AD361",
"SwitchVersion":"0x26D10A8",
"Version":11177
}

并修改WeChatOpenDevTools-Python-main\scripts\hook.js文件

增加

case 11177:
Interceptor.attach(address.SwitchVersion, {
onEnter(args) {
this.context.r8 = this.context.rax
sendMessage()
}
})
break;

使用ida pro查看WeChatAppEx文件

本次需要找三个地址,首先搜索“WxWork isMiniGame, exit!” 字符串,(快捷键shift+f12)

双击鼠标左键即可进入

按一下 fn+x或者双击sub_14289F940+142↑o 直接跳转

跳转过去函数位置如下图所示

直接向上滑,找到上一个函数结束的位置

14289F94C 地址其实是先push上一个函数结束的地址后再call一下留出内存空间,最后还会pop保证堆栈平衡(大佬是这么说的)

去掉前面的14 第一个地址就是

{

 "LaunchAppletBegin": "0x289F94C",

 "MenuItemDevToolsString":"",

 "SwitchVersion":"",

 "Version":11177

}

接着,在IDA里面搜索  engineStart

在该位置的上面就是Devtools字符串,若是显示的是十六进制的,可以按A进行转码

跳转到sub_1428AD0B0地址

得到第二个地址1428AD361  ,那么就是0x28AD361

{

 "LaunchAppletBegin": "0x289F94C",

 "MenuItemDevToolsString":"0x28AD361",

 "SwitchVersion":"",

 "Version":11177

}

继续搜索 字串"/devtools/wechat_%s.html" 在其上方 cmovnz 指令处即为SwitchVersion处的地址

跳转到sub_1426D0FD0地址

找到上面的cmovnz 指令处即为SwitchVersion处的地址

1426D10A8 地址为0x26D10A8

{

 "LaunchAppletBegin": "0x289F94C",

 "MenuItemDevToolsString":"0x28AD361",

 "SwitchVersion":"0x26D10A8",

 "Version":11177

}

最后就是

保存后,执行脚本

打开小程序


文章参考:

https://mp.weixin.qq.com/s/iha8r5nqfc_TwwsIYwovkg

爱喝酒烫头的曹操
主要分享一些漏洞挖掘小技巧,代码审计、web安全、内网渗透以及一些实战案例、快速获得edu及cnvd漏洞报送证书小技巧。
 最新文章