跳至内容

这个开源的小程序反编译工具真不错,2022年亲测成功

大家好,我是副都督,我们常常看到优质的小程序想要学习它的逻辑或样式,但是因为小程序与网页不同,无法通过浏览器访问查看源代码。​
这篇文章将介绍如何通过通过反编译线上小程序的方式来了解它。

反编译的前提是需要拿到小程序的代码包,其后缀为.wxapkg。

获取代码包(移动端)

1、Android环境Android系统的手机或者模拟器,如果没有Android手机可以下载任意模拟器,如腾讯手游助手(腾讯手游助手官网_腾讯安卓模拟器_安卓模拟器电脑版下载 (qq.com))

2、安装微信这是必要条件,因为我们要获取的就是微信小程序的代码包

3、安装RE管理器RE管理器 应用宝下载 安装完成后给RE授权ROOT地址:RE管理器 rootexplorer (qq.com)

4、获取代码包启动微信小程序,尽可能的点击全部页面,然后进入RE管理器,在/data/data/com.tencent.mm/MicroMsg/用户ID/appbrand/pkg/ (用户ID为32位字母或数字组成的名称)路径下找到刚才启动的小程序包,发送到电脑端

获取代码包(PC端)

1、安装PC版微信官方下载地址:微信 Windows 版 (qq.com)
2、获取代码包
首先打开微信后进入想要反编译的小程序,默认路径在文档/WeChat Files/Applet路径下,以小程序ID命名,_APP__.wxapkg就是我们要找的加密包

解密代码包

经过上述不同方式,我们可以得到微信小程序的代码包,但是这个时候此包还属于加密状态,需要使用工具解密

这里我们用到了解密工具“UnpackMiniApp”,工具作者为代码果,来源未知

1、解压下载好的解密工具

2、运行UnpackMiniApp.exe

3、选择加密小程序,这里默认点击跳转至PC端小程序路径

4、解密好的小程序放在wxpack文件夹中

反编译代码包

反编译之前我们需要做两件事情进行环境配置。

1、安装nodejs环境

下载地址:下载 | Node.js (nodejs.org)

安装依赖,以开源库中最新更新的依赖为准,当前更新日期2022-1-12:

npm install esprima
    
npm install css-tree
    
npm install cssbeautify
    
npm install vm2
    
npm install uglify-es
    
npm install js-beautify

2、下载开源的小程序反编译工具

下载地址:wxappUnpacker: 小程序反编译(支持分包) (gitee.com)

3、开始反编译


    – 打开下载好的wxappUnpacker逆向工具

– 打开目录下的README.md 按照说明安装依赖

    – 在wxappUnpacker目录下执行cmd命令

bingo.bat xxx.wxapkg

    – 执行过程

4、检查反编译结果

此时反编译代码就在当前目录下以小程序id命名的文件夹

反编译代码演示

反编译的代码可以正常运行,使用测试号或者自己的小程序ID均可以。

在进行代码调试时也会发现,虽然代码逻辑没问题,但是部分变量和函数都或多或少有代码混淆,显示abcd之类,不过并不影响程序使用,耐心看还是可以看懂的

总结

总结下来如何进行反编译就是:
获取小程序原始代码包->解密小程序代码包->安装nodejs环境以及所需模块->下载逆向小程序工具包->反编译->工具调试
这里技术只做分享,千万不要没事扒别人的小程序自己上线哦!

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注