中文

从混淆到显而易见:面向安全分析的全面 JavaScript 去混淆工具

密码学与安全 2025-12-17 v1 软件工程

摘要

JavaScript 的广泛采用使其成为恶意攻击者寻求采用高级混淆技术来掩盖有害代码的有力目标。当前去混淆工具严重受限,严重限制了其实际效果。现有工具在输入格式多样性、特定混淆类型覆盖范围以及输出可读性方面存在关键不足。为此,我们提出了 JSIMPLIFIER,一种采用多阶段管道的去混淆工具,包括预处理、基于抽象语法树的静态分析、动态执行跟踪和大语言模型(LLM)增强的标识符重命名。我们还引入了多维评估指标,集成控制/数据流分析、代码简化评估、熵测度以及 LLM 基于可读性评估。我们构建并公开了最大规模的真实世界 JavaScript 混淆数据集,包含 44,421 个样本(23,212 个野生恶意样本 + 21,209 个良性样本)。评估显示,JSIMPLIFIER 在 20 种混淆技术上实现 100% 的处理能力,在评估子集上实现 100% 的正确性,实现 88.2% 的代码复杂度降低,以及通过多个 LLM 验证的 4 倍以上的可读性提升。我们的结果推动了 JavaScript 去混淆研究和实际安全应用的基准。

引用

@article{arxiv.2512.14070,
  title  = {From Obfuscated to Obvious: A Comprehensive JavaScript Deobfuscation Tool for Security Analysis},
  author = {Dongchao Zhou and Lingyun Ying and Huajun Chai and Dongbin Wang},
  journal= {arXiv preprint arXiv:2512.14070},
  year   = {2025}
}