记录微信小程序反编译过程

image.png

进入星巴克小程序点单列表,要获取店铺的所有商品信息,请求如下:


image.png

有个sign,

Android:
/data/data/com.tencent.mm/MicroMsg/{{user哈希值}}/appbrand/pkg/
iOS:
/User/Containers/Data/Application/{{系统UUID}}/Library/WechatPrivate/{{user哈希值}}/WeApp/LocalCache/release/
Windows:
C:\Users{{系统用户名}}\Documents\WeChat Files\Applet\
macOS:
/Users/{{系统用户名}}/Library/Containers/com.tencent.xinWeChat/Data/Library/Containers/com.tencent.xinWeChat/Data/Library/Caches/com.tencent.xinWeChat/2.0b4.0.9/{{user哈希值}}/WeApp/LocalCache/release/

为避免蒙圈,先把曾经用过的小程序全删除,上面目录里的所有文件

打开微信,搜索小程序(如果之前使用过,最好删除小程序,从来一遍):

把想要采集的数据点一点,划一划,回到上面那个目录,看多出了一堆.wxapkg文件,把这些全部pull到电脑上。


image.png
#可以把这几个.wxapkg文件打包放到/sdcard目录下pull过来
adb pull /sdcard/pkg.tar.gz
#解压
cd pkg
 ls
_-1984886932_119.wxapkg _1123949441_774.wxapkg  _152740959_11.wxapkg
_-895554503_119.wxapkg  _1505628652_119.wxapkg

去这里down反编译的项目:https://gitee.com/ksd/wxappUnpacker?_from=gitee_search
进入项目,按read.me操作(安装弄得之类的就按部就班就好):
第一次要先安装依赖:npm install

按顺序解包:


image.png

第一个包报错,这是子包,继续解,直到这个包出现这些信息,就是主包了:


image.png

一堆信息完了,显示这些信息就说明主包解完了,
image.png

然后解子包:
刚才报错的包重新解一下:


image.png

_152740959_11和_1123949441_774这两个报这个错:
Error: ENOTDIR: not a directory
先不用管,如果报这个错:SyntaxError: Unexpected end of input:
把git 项目里的wuWxss.js这个文件的这里改一下应该就OK了
image.png

安装微信开发者工具
打开刚解开的包:
image.png

image.png

报错了


image.png

删完点击上面编译,重新弄一下
image.png

把每个vender.js带这个字符串的全部注释,
image.png

得有好几十个,完了后保存,可以看到界面出来了
image.png

但是一直转圈,因为需要用微信信息登录,我们需要模拟一下,用Charles转发:
微信删除这个小程序,重新打开,用Charles抓手机微信小程序登录的包:
image.png

手机退出代理,微信开发者打开代理:
image.png

找到刚才的登录请求,右键-->map local:
image.png

可以看到不再转圈了,但是这里又报错了,
image.png

打开这个文件shares/mop/pages/pieceOrder/inviter.wxml
image.png

随便选个门店,页面可能会比真实的界面错乱,看看请求:
image.png

已经有了

image.png

在initor里朝朝sign这个参数:


image.png

果然和请求里的sign差不多


image.png

未完待续。。。

你可能感兴趣的:(记录微信小程序反编译过程)