Skip to content

geek-bigniu/js-decode-api

Repository files navigation

decode-js

基于 Babel 的 AST 分析器和处理器,可以处理以下情况:

  • stringArray(包括添加了旋转操作,以及嵌套调用的情况)
  • 死代码
  • 控制流扁平化(switch)
  • 局部代码变换(Object表达式、字符串分割等)
  • 自定义代码(自保护,禁止控制台调试,禁止控制台输出)

An AST analyzer and processor based on Babel that can handle the following situations:

  • stringArray (including Rotate, Wrappers, and ChainedCalls)
  • deadCode
  • controlFlowFlattening (switch)
  • transformer (ObjectExpression, SplitString, and etc.)
  • customCode (self-defending, debug-protection, console-output)

使用 Usage

  1. 准备一个nodejs环境

    Prepare a nodejs environment

  2. 通过npm i安装依赖

    Install the dependencies via npm i

  3. 按如下方式运行插件:

    Run the plugins as follows:

# pre-defined command
npm run xxx
# or full command
npm run decode -- -t type [-i input.js] [-o output.js]

xxx为预定义的指令,见package.json中的scripts字段。

xxx are predefined commands, see the scripts field in package.json.

type

  • common (高频局部混淆)
  • jjencode (sojson.com 版本)
  • sojson
  • sojsonv7
  • obfuscator

默认输入文件为input.js,文件中不能包含除混淆代码以外的内容(例如非混淆代码)。

The default input file is input.js. The file cannot contain additional codes other than obfuscated code (such as non-obfuscated code).

默认输出文件为output.js

The default output file is output.js.

Related Projects

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published