← 最新论文
🤖 AI

SoK: DARPA's AI Cyber Challenge (AIxCC): Competition Design, Architectures, and Lessons Learned

本文对 DARPA 的人工智能网络挑战赛(AIxCC)进行了首次系统性分析,通过考察其设计、决赛入围自主网络推理系统的架构方法以及关键性能因素,旨在为未来的竞赛及人工智能驱动的网络安全工具的实际部署总结经验教训。

原作者: Cen Zhang, Younggi Park, Fabian Fleischer, Yu-Fu Fu, Jiho Kim, Dongkwan Kim, Youngjoon Kim, Qingxiao Xu, Andrew Chin, Ze Sheng, Hanqing Zhao, Michael Pelican, David J. Musliner, Jeff Huang, Jon Sillim
发布于 2026-06-02
📖 1 分钟阅读☕ 轻松阅读

原作者: Cen Zhang, Younggi Park, Fabian Fleischer, Yu-Fu Fu, Jiho Kim, Dongkwan Kim, Youngjoon Kim, Qingxiao Xu, Andrew Chin, Ze Sheng, Hanqing Zhao, Michael Pelican, David J. Musliner, Jeff Huang, Jon Silliman, Mikel Mcdaniel, Jefferson Casavant, Isaac Goldthwaite, Nicholas Vidovich, Matthew Lehman, Taesoo Kim

原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明

想象一场为期 143 小时的高强度马拉松赛,七支由工程师和 AI 研究员组成的队伍通过构建“数字侦探”来寻找并修复现实世界软件中的漏洞。这篇论文是该活动的官方赛后报告,即 DARPA 的人工智能网络挑战赛 (AIxCC)

以下是通过简单类比对发生的过程、各队的表现以及我们的收获进行的详细说明。

比赛:寻找并修复数字漏洞

将开源软件(例如运行你手机或医院数据库的代码)想象成一座巨大且复杂的城市。随着时间的推移,建筑会出现裂缝(漏洞)。如果任其不管,坏人就会破门而入。

这次比赛的目标是构建网络推理系统 (CRS)——即能够完全自主运行的机器人,它们可以:

  1. 巡逻城市以寻找裂缝(发现阶段)。
  2. 立即修复裂缝而无需人类帮助(修复阶段)。
  3. 使用大语言模型 (LLM) 来完成这些任务,也就是聊天机器人背后的那种“大脑”技术。

参赛队伍必须在 53 个不同的软件项目(如 Wireshark、Curl 和各种 Java 库)上进行操作,并使用了大量的云端计算能力和 AI 额度。

游戏规则

比赛不仅仅是看谁发现的漏洞最多,更重要的是看谁做得可靠准确

  • 评分机制: 发现一个漏洞可以获得积分。修复它能获得更多积分。但如果你修错了东西,或者声称存在的漏洞实际上并不存在,你会被严厉扣分。
  • “捆绑”奖励: 如果你能证明一个漏洞存在、修复它,并能一次性完美地解释为什么它是漏洞,你就能获得巨额奖金。这就像是在解开谜题的同时抓获罪犯,并写出一份完美的警察报告。
  • 时间衰减: 速度至关重要。立即提交修复方案比拖到最后一刻更有价值。

竞争者:七种不同的策略

每支队伍构建其“侦探”的方式各不相同,就像不同类型的侦探在破案一样:

  • “瑞士军刀”型团队 (Atlantis): 他们构建了一个拥有多种工具协同工作的系统。如果一个工具失效,另一个会接替工作。他们凭借最强的稳定性和一致性赢得了比赛。
  • “专家”型团队 (Trail of Bits): 他们将问题分解为微小且具体的步骤,并且仅在传统工具无法提供帮助的地方才使用 AI。
  • “AI 原生”型团队 (RoboDuck): 他们构建了一个 AI 智能体作为“老板”的系统,几乎所有的决策都由 AI 自主做出。
  • “氛围编程”型团队 (Fuzzing Brain): 出人意料的是,一支规模较小的队伍使用了简单的架构,但让 AI 编写了大部分自己的代码(即“氛围编程/vibe coding”)。他们证明了你不需要最复杂的系统也能取得成效。

结果:稳定性决定胜负

最大的惊喜不是谁找到了最多的漏洞,而是谁没有崩溃

  • 稳定性差距: 比赛非常复杂,以至于三支顶尖队伍的系统在比赛中途直接瘫痪了。它们要么耗尽了磁盘空间,要么陷入死循环,或者导致服务器崩溃。
  • 获胜者: 获胜的队伍(Atlantis)并不一定拥有最聪明的 AI,但他们拥有最可靠的引擎。当其他队伍停滞不前时,他们仍在持续运行。
  • 教训: 在现实世界中,一个虽然超级聪明但会崩溃 50% 时间的 AI 是毫无用处的。一个稍微没那么聪明但能 100% 正常工作的 AI 才是赢家。

AI 能做什么,不能做什么

研究人员进行了深入研究,以探究 AI 成功或失败的原因

AI 出彩的地方:

  • 阅读指令: 当挑战赛给出关于在哪里寻找线索的提示(例如显示新代码变更的“增量扫描”)时,AI 在寻找漏洞方面表现得非常出色。
  • 解决谜题: 一些漏洞需要遵循极其严格且复杂的规则(例如特定的文件格式)的输入。AI 在“思考”这些规则方面比随机猜测工具更有效。

AI 碰壁的地方:

  • “现实世界”的混乱: AI 在处理杂乱的现实工程问题时显得很吃力。例如,如果一个软件项目在构建时需要 1 TB 的磁盘空间,AI 的系统就会因为空间不足而崩溃。
  • 虚假警报: 有时 AI 会通过改变代码来“修复”漏洞,这种改变虽然停止了崩溃,却破坏了软件原有的功能(就像用一块会导致船沉没的石头去堵住船上的漏洞)。
  • “黑盒”问题: 当 AI 看不清错误细节时(例如没有崩溃日志),它往往会放弃。它高度依赖于看到“崩溃现象”来判断该修复什么。

核心启示

论文最后总结了三个关于未来的主要教训:

  1. 工程能力 > 智能程度: 拥有一个出色的 AI 模型是不够的。你需要一个稳健的系统,能够处理磁盘空间、内存限制和构建错误。获胜者是那个拥有最好的“管道工程”而非仅仅是最强“大脑”的团队。
  2. 差距正在缩小: AI 在发现和修复常见漏洞方面已经变得非常出色。然而,在处理复杂的、多步骤的逻辑谜题或那些不会引起明显崩溃的漏洞时,它仍然面临困难。
  3. 从竞赛走向现实: 目前,这些系统就像一级方程式赛车——功能强大但昂贵,且需要维修团队才能维持运行。要将它们应用于日常软件,我们需要让它们变得更轻量、更便宜,并且更容易为普通开发者安装。

简而言之: 比赛证明了 AI 可以 自主地发现并修复软件漏洞,但要使其成为实用的现实工具,我们需要关注的重点不应仅仅是让 AI 变得更“聪明”,而应该是让它运行的系统变得更“坚固”。

您所在领域的论文太多了?

获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。

试用 Digest →