2023年12月14日发(作者:)

微信小程序小游戏逆向超详细教程---绝对实操干货

写在开头

操作步骤

安装 环境

下载逆向工具包并更新包

获取小程序 .wxapk 文件

还原小程序源代码

遇到的问题

安装 环境

下载逆向工具包并更新包

下载完以后 cmd 进入目录运行 npm install

获取小程序 .wxapk 文件

安装夜神模拟器 安装微信 在微信中打开需要的小程序完全加载完以后 去模拟器的目录下找到 .wxapk文件

安卓具体目录位置:

/data/data//MicroMsg/{{user哈希值}}/appbrand/pkg/

在这个目录下,会发现一些 类型的文件,这些就是微信小程序的包

想办法复制的电脑中 (不会的直接搜索夜神模拟器文件复制到电脑中)

还原小程序源代码

进入逆向工具包目录 在cmd下 运行以下命令 之后会在相同的目录下生成解析出来的目录 然后导入小程序开发者工具即可

node

常见问题

1. Module build failed: Error: Cannot find module 'escodegen'(本项目已经修复该问题)

####### 解决方法:

npm i escodegen -S

2. Error: This Package is unrecognizable, please decrypted every type of file by hand.

解决办法:虽然微信小程序的包后缀是.wxapkg,但有一些包的依赖后缀也是.wxapkg,真正的小程序包大小1M左

右,而依赖包大小2、3M甚至更多。所以一股脑的反编译.wxapkg 类型的文件可能会报错,遇见这个问题的小伙伴请

自知,你可能没找对包哦

3. _vd_version_info__ is not defined (本项目已经修复该问题)

解决办法: 修改反编译目录下的文件,修改RunVm方法为

function runVM(name,code){

let wxAppCode={},handle={cssFile:name};

let tsandbox = {

__vd_version_info__:"",

$gwx:ype["$gwx"],

__mainPageFrameReady__:ype["$gwx"],

__wxAppCode__:wxAppCode,

setCssToHead:(handle)

}

let vm = new VM({sandbox:tsandbox});

(code);

for(let name in wxAppCode){

if(th(".wxss")){

e = e(frameName,"..",name);

wxAppCode[name]();

}

}

}

以上问题我只遇到第2个问题 是我的wxapk文件问题 文件大小应该在3M左右

测试 了一个小程序 完美解析 只是小程序端页面

测试了一个小游戏 解析成功 但运行时白屏 提示编译出错

写在最后

对于不想写小程序页面的小伙伴们可以照此方法操作 技术让我慢慢变懒.....