Breaking Obfuscation: Cluster-Aware Graph with LLM-Aided Recovery for Malicious JavaScript Detection
作者: Zhihong Liang, Xin Wang, Zhenhuang Hu, Liangliang Song, Lin Chen, Jingjing Guo, Yanbin Wang, Ye Tian
分类: cs.CR, cs.LG
发布日期: 2025-07-30
💡 一句话要点
提出DeCoda框架,结合LLM去混淆和聚类感知图学习,提升恶意JavaScript代码检测效果。
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 恶意JavaScript检测 代码混淆 大型语言模型 图神经网络 聚类算法
📋 核心要点
- 恶意JavaScript代码检测面临代码混淆和JavaScript语言特性带来的挑战,如嵌套闭包和语法灵活性。
- DeCoda框架结合LLM进行代码去混淆,并利用聚类感知图学习捕获代码的局部语义和全局结构关系。
- 实验结果表明,DeCoda在恶意代码检测任务上显著优于现有方法,F1分数提升高达13.85%。
📝 摘要(中文)
随着Web应用和云服务的快速发展,恶意JavaScript代码对用户隐私、系统完整性和企业安全构成重大威胁。然而,由于复杂的代码混淆技术以及JavaScript固有的语言特性(特别是其嵌套闭包结构和语法灵活性),检测此类威胁仍然具有挑战性。本文提出了一种混合防御框架DeCoda,它结合了基于大型语言模型(LLM)的去混淆和代码图学习:(1)我们首先构建了一个具有多阶段细化的复杂提示学习流程,其中LLM从混淆的输入中逐步重建原始代码结构,然后生成标准化的抽象语法树(AST)表示;(2)在JavaScript AST中,动态类型分散了语义相似的节点,而深度嵌套的函数破坏了作用域捕获,引入了结构噪声和语义模糊。为了解决这些挑战,我们提出通过聚类图来学习分层代码图表示,该聚类图协同集成了图Transformer网络、节点聚类和节点到聚类的注意力机制,以同时捕获来自AST图的局部节点级语义和全局聚类诱导的结构关系。实验结果表明,我们的方法在两个基准数据集上实现了94.64%和97.71%的F1分数,相对于最先进的基线,分别实现了10.74%和13.85%的绝对改进。在固定FPR水平(0.0001、0.001、0.01)下的假阳性控制评估中,与表现最佳的基线相比,我们的方法分别提供了4.82、5.91和2.53更高的TPR。这些结果突出了基于LLM的去混淆的有效性,并强调了在检测恶意代码中建模聚类级别关系的重要性。
🔬 方法详解
问题定义:恶意JavaScript代码通过混淆技术隐藏其真实意图,使得传统的静态分析和动态分析方法难以有效检测。JavaScript的动态类型和嵌套函数进一步增加了分析的复杂性,导致语义相似的节点分散,作用域捕获困难。现有方法难以同时处理代码混淆和JavaScript语言特性带来的挑战。
核心思路:DeCoda的核心思路是利用大型语言模型(LLM)强大的代码理解和生成能力,对混淆的代码进行去混淆,恢复其原始结构。然后,通过构建聚类感知的代码图,同时捕获代码的局部语义和全局结构关系,从而更准确地识别恶意代码。这种混合方法结合了LLM的语义理解能力和图学习的结构建模能力。
技术框架:DeCoda框架包含两个主要阶段:(1)LLM辅助的去混淆阶段:利用多阶段细化的提示学习流程,LLM逐步重建混淆代码的原始结构,并生成标准化的抽象语法树(AST)表示。(2)聚类感知的图学习阶段:构建AST图,并利用图Transformer网络、节点聚类和节点到聚类的注意力机制,学习分层代码图表示。最终,利用学习到的图表示进行恶意代码检测。
关键创新:DeCoda的关键创新在于:(1)将LLM引入恶意代码检测领域,利用其强大的代码理解能力进行去混淆。(2)提出聚类感知的图学习方法,通过节点聚类和节点到聚类的注意力机制,同时捕获代码的局部语义和全局结构关系。与现有方法相比,DeCoda能够更有效地处理代码混淆和JavaScript语言特性带来的挑战。
关键设计:在LLM辅助的去混淆阶段,设计了多阶段细化的提示学习流程,包括代码结构重建和AST生成。在聚类感知的图学习阶段,采用了图Transformer网络作为图编码器,并设计了节点聚类算法和节点到聚类的注意力机制。具体的参数设置和损失函数细节在论文中进行了详细描述(未知)。
🖼️ 关键图片
📊 实验亮点
DeCoda在两个基准数据集上取得了显著的性能提升,F1分数分别达到94.64%和97.71%,相对于最先进的基线,分别提升了10.74%和13.85%。在固定FPR水平下,DeCoda的TPR也显著高于现有方法,表明其在恶意代码检测方面具有优越的性能。
🎯 应用场景
DeCoda框架可应用于Web安全、云安全等领域,用于检测和防御恶意JavaScript代码攻击。该研究成果有助于提升Web应用程序和云服务的安全性,保护用户隐私和系统完整性。未来,该方法可以扩展到其他编程语言和恶意代码检测场景。
📄 摘要(原文)
With the rapid expansion of web-based applications and cloud services, malicious JavaScript code continues to pose significant threats to user privacy, system integrity, and enterprise security. But, detecting such threats remains challenging due to sophisticated code obfuscation techniques and JavaScript's inherent language characteristics, particularly its nested closure structures and syntactic flexibility. In this work, we propose DeCoda, a hybrid defense framework that combines large language model (LLM)-based deobfuscation with code graph learning: (1) We first construct a sophisticated prompt-learning pipeline with multi-stage refinement, where the LLM progressively reconstructs the original code structure from obfuscated inputs and then generates normalized Abstract Syntax Tree (AST) representations; (2) In JavaScript ASTs, dynamic typing scatters semantically similar nodes while deeply nested functions fracture scope capturing, introducing structural noise and semantic ambiguity. To address these challenges, we then propose to learn hierarchical code graph representations via a Cluster-wise Graph that synergistically integrates graph transformer network, node clustering, and node-to-cluster attention to simultaneously capture both local node-level semantics and global cluster-induced structural relationships from AST graph. Experimental results demonstrate that our method achieves F1-scores of 94.64% and 97.71% on two benchmark datasets, demonstrating absolute improvements of 10.74% and 13.85% over state-of-the-art baselines. In false-positive control evaluation at fixed FPR levels (0.0001, 0.001, 0.01), our approach delivers 4.82, 5.91, and 2.53 higher TPR respectively compared to the best-performing baseline. These results highlight the effectiveness of LLM-based deobfuscation and underscore the importance of modeling cluster-level relationships in detecting malicious code.