2019 微信小程序反编译最新教程 $gwx is not defined 和__vd_version_info__ is not defined 已解决 。可解分包

96
ssMoon 22d8d123 271c 4d80 9c59 6990844a9e37
1.2 2019.01.30 12:53* 字数 2063

前言

$gwx is not defined 报错 __vd_version_info__ is not defined 报错 看下一篇文章

由于微信小程序内部升级的原因,最近github上的wxappUnpacker-master小程序反编译工具已部分失效,运行node wuWxapkg.js  <file>  命令的时候会报 $gwx is not defined 错误,

导致 page-frame.html 文件无法反编译,无法解开wxss格式文件。

经过作者对小程序混淆源码的分析,重新更改了部分wxappUnpacker-master的逻辑源码,再次成功反编译小程序。

1、准备工作

1、node.js运行环境

我用的是mac电脑,可以在终端用 node -v 指令查看是否安装了node的最新版本,如果已安装,可以看到node的版本号

2、反编译的脚本wxappUnpacker下载地址 https://github.com/qwerty472123/wxappUnpacker

这是Github上qwerty472123大神写的反编译工具

3、root 过的安卓手机一台

看很多教程推荐夜神模拟器,但是我新安装的夜神模拟器微信点开会闪退,所以只能用root手机

微信小程序的wxapkg包,在手机里的目录/data/data/com.tencent.mm/MicroMsg/appbrand/{user}/pkg/里,我用的是RE文件管理器获取,如下图

先将目录下的wxapkg压缩成zip格式文件再发送到电脑上,获取到wxapkg包后,就可以进行正式的反编译了。

1、打开终端cd 到你clone或者下载好的反编译脚本wxappUnpacker目录下,依次输入如下命令安装反编译脚本的运行依赖

1、npm install esprima

2、npm install css-tree

3、npm install cssbeautify

4、npm install vm2

5、npm install uglify-es

6、npm install js-beautify

安装好依赖之后,就开始反编译 .wxapkg 文件

在当前目录下输入 node wuWxapkg.js  <files>  files 就是你想要反编译的包的路径 例如:我有一个需要反编译的文件 776200096_15.wxapkg 已经解压到了桌面目录下(mac电脑),那么就输入命令 node wuWxapkg.js  /Users/apple/Desktop/_-776200096_15.wxapkg

由于近期微信内部的升级,会报如下错误

$gwx is not defined

要正常反编译小程序,目前需要更改部分反编译工具的源码,本次完美反编译飞讯卡片小程序的源码示例如下


图片发自简书App


下面讲解需要更改的源码和操作步骤:

日记本
Gupao