Skip to main content
QUICK REVIEW

[论文解读] How Far Have We Gone in Vulnerability Detection Using Large Language Models

Zeyu Gao, Hao Wang|arXiv (Cornell University)|Nov 21, 2023
Software Engineering Research被引用 7
一句话总结

本论文提出 VulBench,一个大型漏洞检测基准,并在 CTF 与真实世界数据集上对 16 个大模型(LLMs)与 SOTA 深度学习模型和静态分析工具进行对比评估,结果显示在某些场景下 LLMs 可超越传统方法,但在复杂真实世界案例中仍有不足。

ABSTRACT

As software becomes increasingly complex and prone to vulnerabilities, automated vulnerability detection is critically important, yet challenging. Given the significant successes of large language models (LLMs) in various tasks, there is growing anticipation of their efficacy in vulnerability detection. However, a quantitative understanding of their potential in vulnerability detection is still missing. To bridge this gap, we introduce a comprehensive vulnerability benchmark VulBench. This benchmark aggregates high-quality data from a wide range of CTF (Capture-the-Flag) challenges and real-world applications, with annotations for each vulnerable function detailing the vulnerability type and its root cause. Through our experiments encompassing 16 LLMs and 6 state-of-the-art (SOTA) deep learning-based models and static analyzers, we find that several LLMs outperform traditional deep learning approaches in vulnerability detection, revealing an untapped potential in LLMs. This work contributes to the understanding and utilization of LLMs for enhanced software security.

研究动机与目标

  • 在日益复杂的软件环境中推动自动化漏洞检测。
  • 创建一个高质量、来自多源的数据集,包含清晰的漏洞类型与根本原因。
  • 评估 16 个 LLMs 在漏洞检测任务中对比最先进的深度学习模型与静态分析工具的表现。
  • 提供指南和基线结果,以引导未来在 LLM 辅助漏洞检测方面的研究。

提出的方法

  • 通过聚合 CTF 挑战、MAGMA、Devign、D2A 与 Big-Vul 数据集并进行专家人工标注,构建 VulBench。
  • 使用二元分类(易受漏洞影响 vs 不易受漏洞影响)和多类分类(漏洞类型)来评估功能。
  • 在一致的评估设置下,将 16 个 LLM 与三个人工智能基线(深度学习)和三种静态分析工具进行对比。
  • 使用两步提示和五步提示,配合统一的输出模板,确保跨模型的可解析结果。
  • 分析给定输入上下文(完整二进制、单个函数、反编译版 vs 源代码)以研究信息提供对结果的影响。

实验结果

研究问题

  • RQ1 LLMs 在漏洞检测方面在多大程度上优于传统深度学习模型和静态分析工具?
  • RQ2输入信息的质量和类型如何影响 LLM 的漏洞检测性能?
  • RQ3LLMs 在 CTF/基于场景的漏洞与现实世界 CVE 派生漏洞上的表现有何差异?
  • RQ4LLMs 在漏洞检测中的局限性与偏见有哪些,数据集与提示词如何改进?
  • RQ5VulBench 是否能够为未来基于 LLM 的漏洞研究提供可靠、可扩展的评估?

主要发现

  • LLMs,尤其是 GPT-4,在二进制与多类任务的 CTF 风格漏洞检测中可超越最佳基线。
  • 开放获取的 LLM 显示出规模效应,但受限于数据集质量与上下文长度,GPT-4 在较简单数据集上通常领先。
  • 在真实世界数据集中,所有模型(包括 LLMs)表现不佳且偏向保守,经过 RLHF 调整的模型对某些漏洞类型存在偏向。
  • 反编译代码的局限性和闭源上下文降低了 LLM 的有效性,凸显了更丰富上下文以及与静态分析或模糊测试工具集成的价值。
  • VulBench 提供了一个经筛选的多源数据集,包含自然语言描述的漏洞信息,有助于提升评估的有效性与可比性。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。