Leveraging LLM to Strengthen ML-Based Cross-Site Scripting Detection

📄 arXiv: 2504.21045v1 📥 PDF

作者: Dennis Miczek, Divyesh Gabbireddy, Suman Saha

分类: cs.CR, cs.AI

发布日期: 2025-04-28

备注: This work has been accepted for presentation at the ACM Workshop on Wireless Security and Machine Learning (WiseML 2025)


💡 一句话要点

利用LLM增强基于机器学习的跨站脚本攻击检测能力

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 跨站脚本攻击 XSS检测 机器学习 大型语言模型 代码混淆 Web安全 安全漏洞 模型微调

📋 核心要点

  1. 现有机器学习XSS检测模型在面对混淆攻击时性能显著下降,原因是缺乏足够复杂和多样化的混淆样本进行训练。
  2. 本文提出微调大型语言模型(LLM)来自动生成高复杂度的混淆XSS攻击载荷,从而增强机器学习模型的训练数据。
  3. 实验结果表明,使用LLM生成的混淆数据训练的模型,在检测混淆XSS攻击时准确率达到99.5%,且混淆复杂度提升28.1%。

📝 摘要(中文)

跨站脚本攻击(XSS)是Open Web Application Security Project (OWASP) 定义的关键安全漏洞。尽管经过数十年的研究,XSS仍然是十大安全漏洞之一。研究人员提出了各种技术来保护系统免受XSS攻击,其中机器学习(ML)是最广泛使用的方法之一。ML模型通过在数据集上训练来识别潜在的XSS威胁,因此其有效性高度依赖于训练数据的大小和多样性。XSS的一种变体是混淆XSS,攻击者应用混淆技术来改变代码的结构,使得安全系统难以检测其恶意意图。本研究中,随机森林模型在传统(非混淆)XSS数据上训练后,达到了99.8%的准确率。然而,当针对混淆的XSS样本进行测试时,准确率下降到81.9%,突显了使用混淆数据训练ML模型以提高其检测XSS攻击有效性的重要性。一个重要的挑战是生成高度复杂的混淆代码,尽管有几种公共工具可用,但这些工具只能产生一定复杂程度的混淆。在本文提出的系统中,我们对大型语言模型(LLM)进行微调,以自动生成复杂的混淆XSS有效载荷。通过将原始XSS样本转换为各种混淆变体,我们为ML模型评估创建了具有挑战性的训练数据。我们的方法在混淆数据集上实现了99.5%的准确率。我们还发现,LLM生成的混淆样本比其他工具创建的样本复杂28.1%,从而显著提高了模型处理高级XSS攻击的能力,并使其更有效地应用于实际应用安全。

🔬 方法详解

问题定义:论文旨在解决机器学习模型在检测混淆XSS攻击时性能下降的问题。现有方法依赖于人工构造或使用现有工具生成的混淆样本,但这些样本的复杂度和多样性不足,无法有效训练模型应对真实场景中的高级攻击。

核心思路:论文的核心思路是利用大型语言模型(LLM)强大的代码生成能力,通过微调LLM使其能够自动生成高复杂度的混淆XSS攻击载荷。这种方法可以克服现有工具生成能力有限的缺点,为机器学习模型提供更具挑战性的训练数据。

技术框架:整体框架包含以下几个主要步骤:1) 收集原始的XSS攻击样本;2) 使用收集到的样本对LLM进行微调,使其具备生成混淆XSS载荷的能力;3) 使用微调后的LLM生成大量的混淆XSS样本;4) 使用生成的混淆样本训练机器学习模型(例如,随机森林);5) 评估训练后的模型在检测混淆XSS攻击时的性能。

关键创新:最重要的技术创新点在于利用LLM自动生成高复杂度的混淆XSS攻击载荷。与传统方法相比,LLM能够生成更复杂、更具多样性的混淆样本,从而显著提升机器学习模型在检测高级XSS攻击时的性能。

关键设计:论文的关键设计包括:1) LLM的选择和微调策略,需要选择适合代码生成的LLM,并设计有效的微调方法;2) 混淆复杂度的评估指标,需要定义一种能够量化混淆复杂度的指标,以便评估LLM生成样本的质量;3) 机器学习模型的选择和训练策略,需要选择适合XSS检测的机器学习模型,并设计有效的训练方法。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果表明,使用LLM生成的混淆数据训练的随机森林模型,在检测混淆XSS攻击时准确率达到99.5%,相比于在传统非混淆数据上训练的模型(准确率81.9%)有显著提升。此外,LLM生成的混淆样本比现有工具生成的样本复杂度提升了28.1%,表明LLM能够生成更具挑战性的攻击载荷。

🎯 应用场景

该研究成果可应用于Web应用程序防火墙(WAF)、入侵检测系统(IDS)等安全产品中,提高其检测和防御XSS攻击的能力。通过自动生成高复杂度的混淆XSS样本,可以更有效地评估和提升安全系统的鲁棒性,降低Web应用程序遭受XSS攻击的风险。未来,该方法还可以扩展到其他类型的Web安全漏洞检测中。

📄 摘要(原文)

According to the Open Web Application Security Project (OWASP), Cross-Site Scripting (XSS) is a critical security vulnerability. Despite decades of research, XSS remains among the top 10 security vulnerabilities. Researchers have proposed various techniques to protect systems from XSS attacks, with machine learning (ML) being one of the most widely used methods. An ML model is trained on a dataset to identify potential XSS threats, making its effectiveness highly dependent on the size and diversity of the training data. A variation of XSS is obfuscated XSS, where attackers apply obfuscation techniques to alter the code's structure, making it challenging for security systems to detect its malicious intent. Our study's random forest model was trained on traditional (non-obfuscated) XSS data achieved 99.8% accuracy. However, when tested against obfuscated XSS samples, accuracy dropped to 81.9%, underscoring the importance of training ML models with obfuscated data to improve their effectiveness in detecting XSS attacks. A significant challenge is to generate highly complex obfuscated code despite the availability of several public tools. These tools can only produce obfuscation up to certain levels of complexity. In our proposed system, we fine-tune a Large Language Model (LLM) to generate complex obfuscated XSS payloads automatically. By transforming original XSS samples into diverse obfuscated variants, we create challenging training data for ML model evaluation. Our approach achieved a 99.5% accuracy rate with the obfuscated dataset. We also found that the obfuscated samples generated by the LLMs were 28.1% more complex than those created by other tools, significantly improving the model's ability to handle advanced XSS attacks and making it more effective for real-world application security.