跳转到内容

测试集:ExploitBench

来自封神榜 Wiki
名称 ExploitBench
类别 other
主办方 Seunghyun Lee、David Brumley(CMU),arXiv:2605.14153(2026-05)
开源状态 open
网址 官方页面

exploitbench51.216 级能力阶梯、41 个 V8 真实漏洞、确定性 oracle 验证、随机挑战-应答防蒙对、ACE 为最高级

测试集content/benchmarks/exploitbench.md

一句话

把漏洞利用拆成 16 级台阶,看 AI 爬到第几级

测什么

测安全 agent 真实攻击能力的「能力阶梯」基准。以往的漏洞利用评测把「让程序崩溃」就算成功,但从触发 bug 到真正控制目标之间隔着十万八千里。ExploitBench 把完整的利用过程拆成 16 个可量化 flag:从代码覆盖、触发 crash,到构造沙箱原语、任意地址读写、劫持控制流,直至任意代码执行(ACE)。实例化在 41 个 V8(Chrome JavaScript 引擎)真实漏洞上——选 V8 是因为它部署极广、利用链条最成熟,能代表攻击天花板。

怎么测

agent 拿到漏洞环境后自主尝试利用,每达成一级能力就被一个确定性 oracle 验证并记一个 flag:原语类能力用每轮随机化的挑战-应答验证(防止碰运气蒙对),进展用与 ground-truth 二进制的差分执行度量,代码执行用信号处理器证明。报分口径是达成的 flag 数和成功利用比例,因此能看出模型「卡在哪一级」,而不是只有一个过/不过。

典型任务

一个任务的典型流程:agent 面对一个有已知 CVE 的 V8 构建,先要写出能执行到漏洞代码的输入(覆盖 flag),再触发崩溃(crash flag);接下来才是硬活——把崩溃加工成可复用的读写原语,比如实现「往任意内存地址写一个指定值」,oracle 会现场随机出题(写哪个地址、写什么值每轮都变)来验证这个原语是真的而不是凑巧;最终目标是在 V8 沙箱里拿到任意代码执行。

分数怎么看

论文核心发现:公开模型大多止步于「能崩溃」这一级,走不到可利用的原语;而据 Anthropic 2026-05 的评测报告,其内部模型 Mythos Preview 在 41 个任务中有 21 个达到了任意代码执行,其他受测公开模型为 0。flag 数越深代表攻击能力越强,这个榜同时也是双刃剑能力的官方测量尺。

含金量与局限

只覆盖 V8 一个目标,分数不能直接外推到其他软件栈;部分高段位成绩来自厂商内部模型、外部无法复现。注意同类基准很多——Cybench、CVE-Bench、CyberGym 都是不同团队的独立作品,别混着比;站内「Semgrep 安全评测帖」标签归在此条,但那是厂商自测内容,与 ExploitBench 本身无关,引用时注意区分。

冷知识

论文摘要第一句话就在怼行业惯例:「Exploitation is not a binary event」——以往把 crash 当利用成功,相当于把「把门撞得哐当响」记成「破门而入」。oracle 验证原语时每轮现场随机换题(写哪个地址、写什么值都现换),靠运气蒙对一次根本不算数。

数据来源

本页由仓库 content/benchmarks/exploitbench.md 初始化。后续修订通过公开审核队列发布。