{
  "added_at": "2026-10-19",
  "additional_evidence_urls": [
    "https://github.com/ben-sb/javascript-deobfuscator/blob/4107a8a59d9a2267f921148cb33d3abf0bf6d128/package.json",
    "https://github.com/ben-sb/javascript-deobfuscator/blob/4107a8a59d9a2267f921148cb33d3abf0bf6d128/src/config.ts",
    "https://github.com/ben-sb/javascript-deobfuscator/blob/4107a8a59d9a2267f921148cb33d3abf0bf6d128/src/modifications/renaming/variableRenamer.ts",
    "https://github.com/ben-sb/javascript-deobfuscator/blob/4107a8a59d9a2267f921148cb33d3abf0bf6d128/LICENSE",
    "https://www.npmjs.com/package/js-deobfuscator/v/1.1.7"
  ],
  "category": "web-analysis",
  "description_en": "General-purpose JavaScript deobfuscator for common obfuscation patterns, published on npm as js-deobfuscator and usable as a library or CLI. It unpacks arrays of literals and replaces references to them, removes simple, array and arithmetic proxy functions, simplifies arithmetic and string concatenation, removes dead branches, turns computed member access into static properties, renames hexadecimal identifiers such as _0xca830a and beautifies the result. The author also hosts an online version and maintains a separate deobfuscator for Obfuscator.io output.",
  "description_zh": "通用的 JavaScript 反混淆工具，针对常见混淆手法，以 js-deobfuscator 之名发布在 npm 上，可作为库或命令行工具使用。它能展开字面量数组并替换对其的引用，移除简单代理函数、数组代理函数和算术代理函数，化简算术表达式和字符串拼接，删除死分支，把计算属性访问转为静态属性，重命名 _0xca830a 这类十六进制标识符，并美化输出代码。作者另提供在线版本，并单独维护一个针对 Obfuscator.io 输出的反混淆工具。",
  "entry_url": "https://awesomerea.org/resources/ben-sb-javascript-deobfuscator/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/ben-sb-javascript-deobfuscator/",
  "evidence_url": "https://github.com/ben-sb/javascript-deobfuscator/blob/4107a8a59d9a2267f921148cb33d3abf0bf6d128/README.md",
  "group": "tools",
  "id": "ben-sb-javascript-deobfuscator",
  "json_url": "https://awesomerea.org/resources/ben-sb-javascript-deobfuscator/record.json",
  "kind": "tool",
  "markdown_url": "https://awesomerea.org/resources/ben-sb-javascript-deobfuscator/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/ben-sb-javascript-deobfuscator/index.md",
  "name": "javascript-deobfuscator",
  "name_zh": "javascript-deobfuscator 通用 JavaScript 反混淆工具",
  "record_type": "resource",
  "relationship": "foundation",
  "requirements": [
    "npm release at review: js-deobfuscator 1.1.7, published 2025-07-15; the reviewed main commit is that version bump. No GitHub releases are published. The TypeScript package parses and regenerates code with the Shift parser and the author's shift-codegen fork; package.json declares no Node.js version range.",
    "Install it locally to import as a module, or globally for the js-deobfuscator CLI, which reads an input file and writes an output file, with -m for ES modules. The library config toggles each transformation. An online version runs at deobfuscate.io.",
    "Supply the JavaScript to analyze yourself. It handles the generic patterns listed in the README; for Obfuscator.io output the README points to the author's dedicated deobfuscator. Hexadecimal identifiers are replaced with names drawn from a bundled word list, not recovered originals, so output still needs analyst review.",
    "The LICENSE file is Apache-2.0, while package.json and the npm metadata declare ISC."
  ],
  "requirements_zh": [
    "审阅时的 npm 版本为 js-deobfuscator 1.1.7，发布于 2025-07-15；所审阅的 main 分支提交即为该版本号更新。仓库未发布 GitHub Release。这个 TypeScript 软件包使用 Shift 解析器和作者维护的 shift-codegen 分支来解析并重新生成代码；package.json 未声明 Node.js 版本范围。",
    "可在本地安装后作为模块导入，或全局安装后使用 js-deobfuscator 命令行工具：读取输入文件并写出输出文件，-m 用于解析 ES 模块。库的配置项可分别开关每种转换。在线版本位于 deobfuscate.io。",
    "需自行提供要分析的 JavaScript。它处理 README 所列的通用混淆模式；对于 Obfuscator.io 的输出，README 建议改用作者专门的反混淆工具。十六进制标识符会被替换为从内置词表中选取的名称，并非恢复原名，因此输出仍需分析人员复核。",
    "LICENSE 文件为 Apache-2.0，而 package.json 和 npm 元数据声明的是 ISC。"
  ],
  "targets": [
    "website"
  ],
  "url": "https://github.com/ben-sb/javascript-deobfuscator",
  "verification": "source-reviewed",
  "verified_at": "2026-10-19"
}
