前言
微信小程序源反编译其实非常简单,基本是傻瓜式操作,网上有很多软件基本可以一键反编译了。我们只需要找到源文件在手机存放的位置,用反编译脚本跑一下,微信小程序代码包里的所有文件、所有资源就出来了。
准备软件
1.手机模拟器
2.RE文件管理器(拖到模拟器内自动安装)
3.nodejs运行环境
4.反编译脚本
反编译步骤
1. 安装夜神模拟器、RE文件管理器。
2. 打开手机设置->找到超级用户->右上角三个小点点击一下,设置->点击‘超级用户访问权限’,选择‘仅限于应用’,这样超级用户权限就拿到了。
3. 打开微信,没有的在应用市场下载就行,打开想反编译的微信小程序,小程序打开后,可以切换到RE文件管理器去找源文件了。
4. 打开RE文件管理器,从更目录开始,/data/data/com.tencent.mm/MicroMsg/.../appbrand/pkg/,找到源文件后,长按->点击右上角三个小点,打开菜单,选择‘压缩所选文件’->完成后,点击查看->长按,还是右上角,将压缩包从模拟器发送出来到电脑上,方式多种,随意。
5. 上面找到源文件并把源文件拉出来,从Github下载反编译文件后,在桌面就有了这样的文件夹结构
nimi-yuan这个文件夹下这里放的是微信小程序源文件
lib这个文件夹下放的是反编译脚本
6. 进入到lib文件夹下,右键,在这里打开命令行窗口,将这几句命令跑一下
npm install esprima npm install css-tree npm install cssbeautify npm install vm2 npm install uglify-es npm install js-beautify npm install escodegen
最后使用这个命令进行反编译源文件:node wuWxapkg.js filepath,例如我的是:node wuWxapkg.js C:UserszwDesktopfanbianyimini-yuan_1034625975_4.wxapkg,反编译过程过如遇到抛出缺少某个文件的提示,用npm install filename再次跑一下就行(filename为抛出缺少文件名)。
7. 反编译完成,用node wuWxapkg.js filepath执行成功后
查看反编译成功后的文件夹,源码中除了project.config.JSON这个配置文件,其他的都有。
至此微信小程序的反编译过程就结束了,学会之后,欣喜若狂,一顿操作猛如虎,拉了两个小程序源码后,心生一种罪恶感。这种反编译方法很简单,由此可见微信小程序源码的安全性不好,过不久估计就不能这么干了,漏洞终究会被填补的。