Towards Effective Complementary Security Analysis using Large Language Models
作者: Jonas Wagner, Simon Müller, Christian Näther, Jan-Philipp Steghöfer, Andreas Both
分类: cs.CR, cs.AI
发布日期: 2025-06-20 (更新: 2025-07-13)
备注: 8 pages, 6 figures
💡 一句话要点
利用大型语言模型提升静态应用安全测试的有效性
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 大型语言模型 静态应用安全测试 误报检测 安全分析 自动化测试
📋 核心要点
- 现有的静态应用安全测试工具生成的误报数量庞大,导致安全分析效率低下。
- 本研究提出利用大型语言模型来改善SAST发现的评估,旨在减少误报并保持真实正例率。
- 实验结果显示,使用先进的提示技术,某些LLMs在OWASP基准数据集中识别了62.5%的误报,结合不同模型可提高至78.9%。
📝 摘要(中文)
安全分析中的一个关键挑战是手动评估静态应用安全测试(SAST)工具生成的潜在安全弱点。这些报告中的大量误报(FPs)降低了安全分析的有效性。我们提出利用大型语言模型(LLMs)来改善SAST发现的评估。我们研究了LLMs在减少误报的同时保持完美真实正例率的能力,结果表明,先进的提示技术如思维链和自一致性显著提高了误报检测率。某些LLMs在OWASP基准数据集中识别了约62.5%的误报,同时没有遗漏真实弱点。将不同LLMs的检测结果结合可以将误报检测率提高到约78.9%。此外,我们还展示了该方法在涵盖五种SAST工具、三种编程语言和基础设施文件的真实数据集上的通用性。最佳LLM检测到33.85%的所有误报,而结合不同LLMs的检测结果可将这一比例提高到38.46%。我们的研究强调了LLMs在补充传统SAST工具方面的潜力,增强了自动化并减少了处理误报所需的资源。
🔬 方法详解
问题定义:本论文旨在解决静态应用安全测试(SAST)工具生成的误报(FPs)过多的问题,这些误报降低了安全分析的效率和准确性。现有方法在处理这些误报时往往依赖人工评估,耗时且容易出错。
核心思路:论文提出利用大型语言模型(LLMs)来自动化评估SAST发现,旨在通过先进的提示技术减少误报,同时尽量保持真实正例的检测率。这种方法利用LLMs的自然语言处理能力来理解和分析安全报告。
技术框架:整体架构包括数据集准备、LLM选择与训练、提示设计、误报检测与评估等主要模块。首先,从OWASP基准和真实软件项目中提取数据集,然后应用不同的LLMs进行训练和评估。
关键创新:最重要的技术创新在于使用先进的提示技术(如思维链和自一致性),显著提高了误报检测的准确性。这与传统方法的人工评估形成鲜明对比,后者往往效率低下且容易出错。
关键设计:在模型训练过程中,采用了特定的参数设置和损失函数,以优化LLMs在安全分析中的表现。具体细节包括对提示的设计和模型的微调,以确保其能够有效识别误报而不遗漏真实弱点。
📊 实验亮点
实验结果显示,某些大型语言模型在OWASP基准数据集中识别了约62.5%的误报,且未遗漏真实弱点。将不同模型的检测结果结合后,误报检测率提升至约78.9%。在真实数据集上,最佳模型检测到33.85%的误报,结合后可提高至38.46%。
🎯 应用场景
该研究的潜在应用领域包括软件安全分析、自动化安全测试和信息安全管理。通过提高SAST工具的准确性,能够显著减少开发人员在处理误报上花费的时间和资源,从而提升整体软件安全性。未来,该方法可能会被广泛应用于各种软件开发生命周期中,促进安全性与开发效率的平衡。
📄 摘要(原文)
A key challenge in security analysis is the manual evaluation of potential security weaknesses generated by static application security testing (SAST) tools. Numerous false positives (FPs) in these reports reduce the effectiveness of security analysis. We propose using Large Language Models (LLMs) to improve the assessment of SAST findings. We investigate the ability of LLMs to reduce FPs while trying to maintain a perfect true positive rate, using datasets extracted from the OWASP Benchmark (v1.2) and a real-world software project. Our results indicate that advanced prompting techniques, such as Chain-of-Thought and Self-Consistency, substantially improve FP detection. Notably, some LLMs identified approximately 62.5% of FPs in the OWASP Benchmark dataset without missing genuine weaknesses. Combining detections from different LLMs would increase this FP detection to approximately 78.9%. Additionally, we demonstrate our approach's generalizability using a real-world dataset covering five SAST tools, three programming languages, and infrastructure files. The best LLM detected 33.85% of all FPs without missing genuine weaknesses, while combining detections from different LLMs would increase this detection to 38.46%. Our findings highlight the potential of LLMs to complement traditional SAST tools, enhancing automation and reducing resources spent addressing false alarms.