PC微信小程序包解密工具C#版无需root或模拟器

前提:略微有些编程基础。目的:C#实现小程序包wxapkg文件解密算法。

工具:vs2015+百度 .net版本选择2.0(环境依赖低)

备注:热乎的,昨晚刚完成。已知有python版本,有点重复造轮子。但exe的不用其它依赖,双击打开就能用岂不美哉!

首先我们通过GitHub大神获得小程序包已知加密算法:

 

提示:鉴于有网友回复不知道干什么用的,因此有必要重新修改一次,写上完整的使用说明,说白了就是获取线上小程序源码的辅助工具,电脑端访问微信小程序会在C:\Users\用户\Documents\WeChat Files\Applet(即【我的文档 】下寻找WeChat Files 目录)目录以wx开头生成小程序包,不过是加密的,因此我们用此程序解密,配合小程序解包工具获取源码,比如wuWxapkg.js获取小程序源码。

一般的小程序反编译教程就是手机root然后在XXX目录下寻找wxapkg包,或者安装模拟器然后在寻找,其实可以更简单:登录电脑端微信,访问你想解包的小程序,小程序包会在:我的文档\WeChat Files\Applet下生成wx开头的文件夹,里面包含__APP__.wxapkg文件,这个文件就是小程序包(不要复制出来)。

PC端微信把wxapkg给加密,加密后的文件的起始为V1MMWX。

加密方法为:

首先pbkdf2生成AES的key。利用微信小程序id字符串为pass,salt为saltiest 迭代次数为1000。调用pbkdf2生成一个32位的key

取原始的wxapkg的包得前1023个字节通过AES通过1生成的key和iv(the iv: 16 bytes),进行加密

接着利用微信小程序id字符串的倒数第2个字符为xor key,依次异或1023字节后的所有数据,如果微信小程序id小于2位,则xorkey 为 0x66

把AES加密后的数据(1024字节)和xor后的数据一起写入文件,并在文件头部添加V1MMWX标识

一 准备工具

1 node.js 运行环境

下载地址:https://nodejs.org/en/

2 反编译的脚本

https://github.com/xuedingmiaojun/wxappUnpacker

3 小程序包解密工具【C#版原创】

https://share.weiyun.com/uMqNGOXv

二 开始反编译

1 获取小程序pkg包:

登录电脑端微信,访问你想解包的小程序,小程序包会在:我的文档\WeChat Files\Applet下生成wx开头的文件夹,里面包含__APP__.wxapkg文件,这个文件就是小程序包(不要复制出来)。

我们用解密工具解密:

图片[1]-PC微信小程序包解密工具C#版无需root或模拟器-共赢传播官博 ||

下载地址:https://share.weiyun.com/uMqNGOXv

图片[2]-PC微信小程序包解密工具C#版无需root或模拟器-共赢传播官博 ||

核心代码移步:https://www.52pojie.cn/thread-1336342-1-1.html

 

图片[3]-PC微信小程序包解密工具C#版无需root或模拟器-共赢传播官博 ||

解密后的小程序包就在程序的 wxpack目录下以小程序ID命名。

2 安装脚本依赖

利用cmd cd到你刚刚下载下来的脚本目录下,执行npm install安装依赖

 

3 执行脚本命令

复制小程序pkg的路径执行bingo.bat d:\wxpack\wx1e4eb0f8a10e5177.wxapkg

三 反编译成功

 

图片[4]-PC微信小程序包解密工具C#版无需root或模拟器-共赢传播官博 ||

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片