1. 概览
该论文主要展示了大语言模型LLM代理能够自主利用现实世界的 1 day 漏洞。研究我发现, GPT-4 在提供了CVE描述的情况下,能够成功利用 87% 的漏洞。 这与其他测试模型(如 GPT-3.5 和其他开源 LLM )以及开源漏洞扫描器(如 OWASP ZAP、Metasploit)的 0% 成功率形成鲜明对比。这一发现引发了关于高能力 LLM 代理广泛部署的问题和讨论。
2. 技术方案
2.1. 技术背景
2.1.1. 什么是LLM 代理
近年来,随着 LLM 的发展,LLM 代理变得起来越普遍。LLM 代理是指能够执行特定任务的系统,它们利用 LLM 的语言理解和生成能力来与用户交互、操作工具、反应工具输出以及执行复杂的任务。这些代理 可以通过工具执行动作,如使用终端、编辑文件或执行代码,并能够根据这些工具的输出做出反应。
LLM 代理的能力随着 LLM 的进步而增强。例如,工具辅助的 LLM 代理现在能够执行复杂的软件工程任务,并协助科学研究。这些代理的一个重要能力是使用工具,不同的 LLM 代理 在使用工具和响应反馈方面的能力差异较大。
2.1.2. 什么是 1 day 漏洞
论文研发的重点是 1 day 漏洞,这些是已经被披露但在系统中尚未修复的漏洞。在许多真实世界的部署中,安全补丁并不会立即部署,这使得这些部署容易受到 1 day 漏洞的攻击。研究表明,尽管开源漏洞扫描器无法发现某些 1 day 漏洞,但 LLM 代理能够利用它们。此外,许多漏洞披露并不提供如何利用漏洞的逐步指导,这意味着攻击者必须自己构建利用步骤。
2.2. 漏洞自主利用步骤
该技术方案包括以下几个关键部分:
-
数据采集:研究团队收集了15个现实世界中的 1 day漏洞,这些漏洞主要来自于在 CVE 描述中被归类为严重的漏洞。
-
LLM代理:创建了一个能够利用这些 1 day 漏洞的LLM代理。代理使用了 reAct 代理 框架,并且只需要 91 行代码即可实现。
-
工具访问:代理可以访问网络浏览元素、终端、网络搜索结果、文件创建和编辑以及代码解释器等工具。
-
提示:使用了详细的提示来指导代理进行创造性的尝试和不同的方法。提示总共包含了 1056 个 token。
若要了解更多技术细节,可参阅论文原文:LLM Agents can Autonomously Exploit One-day Vulnerabilities.pdf (访问密码: 6277)
3. 实验结果
实验结果显示:
-
成功率:GPT-4 在没有 CVE 描述的情况下,成功率为 87%。而在没有 CVE 描述的情况下,成功率骤降至 7%,表明发现漏洞比利用漏洞更具有挑战性。
-
模型比较:GPT-4 是唯一能够成功利用 1 day 漏洞的模型。其他所有模型,包括 GPT-3.5 和所有测试的开源模型,都未能成功利用任何漏洞。
-
成本分析:使用 GPT-4 进行漏洞利用的平均成本为每次运行 3.52 美元,平均成功率为40%,这意味着每次成功利用的成功约为 8.8 美元。与雇佣网络安全专家相比,使用 LLM 代理的成本更低,且易于扩展。
这些实验结果不仅展示了 GPT-4 的强大能力,也突显了在没有详细漏洞描述的情况下,即使是最先进的模型也会面临挑战。此外,这些发现强调了在部署高能力 LLM 代理时需要考虑的安全性问题。
4. 未来研究方向(部分)
- 增强规划和探索能力:研究表明,增强 LLM 代理的规划和探索能力可提高成功利用漏洞的能力。未来工作可能会集中在开发更高级的规划算法和探索机制,以提高在没有 CVE 描述时发现和利用漏洞的能力。
- 模型鲁棒性:研究如何提高 LLM 代理在面对未知或 0 day 漏洞时的鲁棒性和适应性。
- 跨模型能力研究:研究不同 LLM 模型之间在网络安全任务上的性能差异,以及如何结合多个模型的优势来提高整体性能
5. 参考
Richard Fang, Rohan Bindu, Akul Gupta, Daniel Kang:LLM Agents can Autonomously Exploit One-day Vulnerabilities.pdf
5.1. 扩展阅读
- 「 网络安全常用术语解读 」通用漏洞披露CVE详解
- AIGC时代企业与个人应该如何应对?