echo094/decode-js

GitHub: echo094/decode-js

基于 Babel AST 的 JavaScript 反混淆工具,专注处理 obfuscator、sojson 等常见混淆器的代码还原。

Stars: 1010 | Forks: 393

# decode-js 基于 Babel 的 AST 分析器和处理器,可以处理以下情况: * stringArray(包括添加了旋转操作,以及嵌套调用的情况) * 死代码 * 控制流扁平化(switch) * 局部代码变换(Object表达式、字符串分割等) * 自定义代码(自保护,禁止控制台调试,禁止控制台输出) 基于 Babel 的 AST 分析器和处理器,可以处理以下情况: * stringArray(包括旋转、包装器和链式调用) * 死代码 * 控制流扁平化(switch) * 转换器(Object表达式、字符串分割等) * 自定义代码(自保护、调试保护、控制台输出) ## 使用说明 **如果在安装和运行过程中出现问题,请先排查 [isolated-vm](https://github.com/laverdet/isolated-vm?tab=readme-ov-file#requirements) 的安装和使用要求** 1. 准备一个 nodejs 环境(22.x 及以上版本) 2. 通过 `npm i` 安装依赖 3. 按如下方式运行插件: ``` # 预定义命令 npm run xxx # 或完整命令 npm run decode -- -t type [-i input.js] [-o output.js] ``` `xxx` 为预定义的指令,见 [package.json](package.json) 中的 `scripts` 字段。 `type`: * common(高频局部混淆) * jjencode(sojson.com 版本) * sojson * sojsonv7 * obfuscator 默认输入文件为 `input.js`,文件中不能包含除混淆代码以外的内容(例如非混淆代码)。 默认输出文件为 `output.js`。 ## 相关项目 * [cilame/v_jstools](https://github.com/cilame/v_jstools) * [j4k0xb/webcrack](https://github.com/j4k0xb/webcrack) * [NXY666/Jsjiemi](https://github.com/NXY666/Jsjiemi)
标签:Babel, CMS安全, DNS 反向解析, GNU通用公共许可证, isolated-vm, JavaScript, JJEncode, MITM代理, Node.js, Obfuscator.io, SoJson, Web安全, 云安全监控, 云资产清单, 代码反混淆, 代码混淆, 代码美化, 去壳, 字符串解密, 恶意代码分析, 控制流还原, 数据可视化, 死代码消除, 网络安全, 脚本解密, 自动化payload嵌入, 自动化处理, 自定义脚本, 蓝队分析, 解密, 逆向工程, 配置文件, 隐私保护, 静态分析