/unveilr

小程序反编译工具

Primary LanguageTypeScriptGNU General Public License v3.0GPL-3.0

logo
badge license languages visitor visitor https://img.shields.io/npm/v/unveilr.svg unveilr unveilr release release vul

!!!声明!!!

本程序仅供于学习交流,请使用者遵守《中华人民共和国网络安全法》,勿将此工具用于非授权的测试,开发者不负任何连带法律责任。

✨新版本特性 (项目重构中 预计 3月底发布 2.0正式版)

  • 🔥支持自动解密(windows从路径上提取wxAppId)
  • 🔥自动合并子包
  • 🔥支持解析最新版wxapkg (APP_V3/APP_V4/APP_SUBPACKAGE_V2)
  • 🔥支持解析最新版小程序插件 (APP_PLUGIN_V1)
  • 🔥采用@babel/core直接解析语法树,精准提取源码(1.x是正则提取)
  • 🔥使用Threadjs做的线程池,cpu直接干到顶(🤡解析语法树特别吃cpu)

✅安装方法

1. 下载可执行文件

  • 下载地址下载对应操作系统的可执行文件
  • 运行 unveilr@[version]-[platform]-[arch][.exe] --help

2. npm 安装

# npm
npm i unveilr -g
# yarn
yarn global add unveilr

unveilr --help
# 简称
uvr -h

📝参数详解

  • 子命令是为了后续集成别的平台小程序解包功能
  • 子命令默认为 wx
  • 如果有线索可以提供一下 ⚗️discussions
子命令 参数 解释
global -l, --log-level <level> 设置日志等级 debuginfowarnerror 默认 info
wx <packages...> wxapkg的路径,可以是多个,也可以是一个目录
wx -i, --appid <appid> 解密windows上的 wxapkg时需要提供🔥已经支持自动从路径中提取
wx -f, --format 是否需要格式化解析出来的代码
wx --no-clean 不清除残留文件
wx --no-parse 只提取wxapkg中的文件,不进行反编译
wx -o, --output <path> 设置保存的路径

💡使用示例

# 直接解包整个目录
$ unveilr /path/to/wxapkg/dir/
# 解包多个包
$ unveilr /path/to/1.wxapkg /path/to/2.wxapkg ...
# 指定子命令并指定微信AppId
$ unveilr wx /path/to/wxapkg/dir/ -i wx11aa22bb33cc44dd
# 格式化解析出来的代码
$ unveilr wx /path/to/wxapkg/dir/ -f
# 只提取源文件不解析进行反编译
$ unveilr wx /path/to/wxapkg/dir/ --no-parse

旧版本可以使用 1.0.2版本

💬其他说明

  • 本程序现在使用的开源协议是 GPLv3

🍻特别感谢