898 个真实漏洞、最强模型攻破 157 个,ExploitGym 首批系统评测利用能力

ExploitGym: Can AI Agents Turn Security Vulnerabilities into Real Attacks?

Zhun Wang, Nico Schiller, Hongwei Li, Srijiith Sesha Narayana, Milad Nasr, Nicholas Carlini, Xiangyu Qi, Eric Wallace, Elie Bursztein, Luca Invernizzi, Kurt Thomas, Yan Shoshitaishvili, Wenbo Guo, Jingxuan He, Thorsten Holz, Dawn Song

cs.CR, cs.AI, cs.LG

2026-05-12

898 个真实漏洞的容器化评测,测智能体把漏洞触发输入扩展成可用攻击的能力,最强配置攻破 157 个。

这篇在解决什么

安全圈评测 AI 已经评了两件事:找漏洞和打补丁。但「漏洞」本身不等于「攻击」,一个能触发 bug 的输入,离真正拿到未授权的代码执行还有一大段距离,这一段叫 exploitation(漏洞利用)。它要求智能体做底层程序推理(比如算内存布局)、运行时见招拆招、还要在长跨度里持续推进。在此之前,这段能力几乎没有被系统评测过。

补这个空缺有价值,也危险。对防守方,它能量化一个漏洞到底有多严重、补丁要不要优先;对进攻方,它降低了利用漏洞的门槛。这就是典型的 dual-use(双重用途)。

方法

ExploitGym 收了 898 个来自真实漏洞的实例,跨三个域:用户态程序 520 个(来自 OSS-Fuzz/CyberGym,覆盖 FFmpeg、OpenSSL 等 161 个 C/C++ 项目)、V8 浏览器引擎 185 个、Linux 内核 193 个。

每个实例给智能体三样东西:有漏洞的代码库、一个能触发漏洞的输入(PoV)、漏洞描述。任务是把这个触发输入一步步扩展成一个能跑通的 exploit。成功判定很硬:智能体必须拿到一个动态生成的特权 flag(证明真的有了未授权执行),再过一道 agent-as-judge(用另一个模型当裁判)确认它打的确实是目标漏洞、不是误打误撞撞到别的 bug。

评测还把各种缓解措施当开关来拨:用户态上的 ASLR+PIE、栈金丝雀,V8 上的堆沙箱,内核上的 KASLR、用户命名空间。整套环境全部容器化,保证可复现。实验跑在 OpenAI 和 Anthropic 的受信访问项目下,关掉了默认安全过滤。

结果

模型攻破数(/898)
Claude Mythos Preview + Claude Code157
GPT-5.5 + Codex CLI120
GPT-5.454
Claude Opus 4.615
Gemini 3.1 Pro12

最强的两个模型互补性很强:Claude Mythos 独占 56 个、GPT-5.5 独占 26 个、两者共解 91 个。

开启常见缓解后,存活率明显下降。以 Claude Mythos 为例,用户态从 107 掉到 25(留存 23%)、V8 从 38 掉到 17(45%)、内核从 12 掉到 3(25%)。也就是说,虽然绝对数降了,但在 V8 这类域里仍有近一半攻击能绕过默认防护。

时间维度上,GPT-5.4 和 Claude Opus 4.6 半小时内就饱和了,而 Claude Mythos 到 2 小时还在涨,跑到 6 小时也没见顶。裁判可信度上,两个裁判模型在 58 条人工审核轨迹上 Cohen's κ 分别到 1.00 和 0.931。

为什么重要

这篇把「AI 能不能真打」从印象变成了可测的数字。结论是:前沿模型已经不是零星碰运气,能在不小比例的真实漏洞上端到端产出可用 exploit,而且开了防御还能留下相当一部分。对做模型安全和红队的人,这是一个能反复跑的靶场;对产品方,它直接回答了「把自主智能体放开跑」的真实风险量级。

局限与存疑

作者自己划了几条边界。覆盖面只到三个域,不含 Windows、iOS、Android;只测代码执行这一种影响,不含任意读写、沙箱逃逸;每个任务只跑一次、不提供专门的利用工具;部分实例可能并不真正可利用,也缺全部任务的 ground-truth exploit。

读下来还有两点要存疑。一是这些跑分是在关闭默认安全过滤的受信通道下拿的,真要在线上模型上复现,会被拒掉相当一部分(论文给的数据是开 GPT-5.5 默认过滤后 88.2% 的 case 在第一次工具调用前就被拦)。二是拿到 flag 不等于打对了目标漏洞:flag-to-success 对齐率 Claude Mythos 69.5%、GPT-5.5 只有 56.7%,说明一部分成功是撞上了别的洞。

术语

原文与代码

社区讨论

相关论文

全部论文解读