新年
快乐

垃圾堆中的精品

垃圾堆中的精品

反编译微信小程序

将微信中的wxapkg文件解包为可以编辑查看的小程序源代码,妥妥的黑科技

一、从手机中提取出wxapkg文件

iOS端需要越狱,安卓端需要root。

以安卓为例,进入以下目录:

/data/data/com.tencent.mm/MicroMsg/(一长串字符串)/Appbrand/pkg

可以找到wxapkg文件,把它提取到电脑上。

二、准备解包工具

首先下载工具,这是GitHub地址

安装node,并且安装这些依赖:

cssbeautify、CSSTree、VM2、Esprima、UglifyES、js-beautify

安装命令为npm install [依赖包]

修改wxWxss.js文件中的runVM方法:

function runVM(name, code) {
    let wxAppCode = {}, handle = {
        cssFile: name
    };
    let gg = new GwxCfg();
    let tsandbox = {
        $gwx: GwxCfg.prototype["$gwx"],
        __mainPageFrameReady__: GwxCfg.prototype["$gwx"],
        __vd_version_info__: GwxCfg.prototype["$gwx"],
        __wxAppCode__: wxAppCode,
        setCssToHead: cssRebuild.bind(handle)
    };
    let vm = new VM({
        sandbox: tsandbox
    });
    vm.run(code);
    for (let name in wxAppCode)
        if (name.endsWith(".wxss")) {
            handle.cssFile = path.resolve(frameName, "..", name);
            wxAppCode[name]();
        }
}

不进行这一步的话,提取不出wxss文件。

三、运行解包工具

cd到解包工具目录,运行命令:

node wuWxapkg.js [wxapkg文件名]

运行完毕后可以看到解包后的源码目录。

评论回复

回到顶部