SageCTF:最强大CTF挑战AI智能体
阅读原文· rdi.berkeley.eduSageCTF 在 DEF CON CTF 排进前 5%,是 AI agent 在顶级安全竞赛中的首次重大突破。OpenSage 的自构建多智能体架构和十小时持续探索的能力,给做复杂推理工具的人提供了真参考。
UC Santa Barbara与UC Berkeley团队基于OpenSage框架构建了CTF专用智能体SageCTF。在DEF CON CTF 2026资格赛中,SageCTF以单人玩家身份尝试15道挑战,成功攻克7道、恢复8个flag,总计1,743分,排名前5%,超越全部自评“不使用AI”或“低AI”的175支团队。在50道近期CTF挑战的对比测试中,SageCTF以Claude-Opus-4.6为主模型,在相同预算(每道$200/10小时)下解出39道,而Claude Code仅解出13道,且Claude Code的解出全部被SageCTF覆盖。技术核心包括AI自生成拓扑、多智能体通信、分层记忆及多模型协同编排。
[](https://rdi.berkeley.edu/)
首页 研究 教育 活动 博客 关于
首页 研究 教育 活动 博客 关于 联系 SageCTF:最具能力的 AI 智能体,攻克最具挑战性的 CTF
OpenSage 团队
加州大学圣塔芭芭拉分校,加州大学伯克利分校
2026 年 6 月 16 日
(预计阅读 8–12 分钟,更多详情请访问 https://www.opensage-agent.ai/)
DEF CON CTF 被称为黑客界的 奥林匹克。其中的挑战属于网络安全领域最难的一类,通常涉及逆向工程二进制文件并构造可用的漏洞利用程序。在 DEF CON 预选赛的历史上,这些任务通常需要一个由 20 多名 世界顶尖黑客组成的团队——有时甚至需要 数百人——昼夜不停地工作,才能在三天的时间窗口内解决。
今年,有了 AI,情况不同了。在加州大学圣塔芭芭拉分校和加州大学伯克利分校,我们构建了 SageCTF:一个基于我们下一代智能体脚手架 OpenSage 构建的 CTF 专用智能体。它以 单人玩家 的身份参加预选赛,并取得了令人瞩目的成绩: 在 7 个高难度挑战中成功获取了 8 个 flag,其中每个挑战通常需要一个专业黑客团队花费数小时才能解决 总共获得 1,743 分——在所有队伍中排名 前 5% 在所有声称不使用 AI 或低度使用 AI 的队伍中表现最佳 总计,SageCTF 尝试了 15 个非交互式挑战。在那些未能拿到 flag 的挑战中,有 4 个已经非常接近——仅差一两步就能得到解决方案
SageCTF 标志着一项重大突破,展示了 AI 智能体在世界上一些最困难的安全挑战中日益增长的能力。
从技术上讲,OpenSage 允许 AI 构建自己的智能体系统,而不是遵循预设的拓扑结构或工作流程。它还赋予智能体分层记忆,从而实现细粒度的知识管理。两者都非常适合像 CTF 这样的任务——这些任务具有超长时间跨度,并且需要复杂的长程推理。 * * SageCTF 显著优于 Claude Code
除了实时参与的 DEF CON CTF,我们还在一组 50 道 CTF 挑战上进一步评估了 SageCTF 和 Claude Code。这些挑战来自近期 TAMU CTF、UMass CTF、RITSEC CTF 以及一个公开的 NYU CTF Benchmark 数据集中的高难度题目。为了进行公平的比较,两个智能体使用了相同的评测设置:
主模型:Claude-Opus-4.6(高推理强度) 沙盒:定制的 Docker 容器,已预装工具 预装工具:mcp (ida-pro, ghidra)、Python 库(pwntools, angr, playwright, …)、工具(z3, sagemath, qemu, …) 时间限制和预算:每道挑战 10 小时、200 美元
_SageCTF 与 Claude Code 在 CTF 基准测试上的对比。_
SageCTF 解决了 50 道挑战中的 39 道,而 Claude Code 解决了 13 道。更重要的是,Claude Code 解决的每一道挑战也都被 SageCTF 解决了,没有出现任何仅由 Claude Code 单独解出的题目。
- *
SageCTF 在 DEF CON CTF 2026 上的卓越表现 免责声明
CTF 是由人类玩家构建、为人类玩家服务的艺术形式:一个展示真实安全技能、分享技巧、与其他黑客共同享受技艺的舞台。我们希望在不干扰这种文化或实时比赛的前提下衡量 SageCTF。由于 DEF CON CTF 2026 不允许完全自动化的机器人提交 flag,我们使用 SageCTF 来解决挑战,但并未提交任何 flag。
_SageCTF 端到端地解决挑战(不提交 flag)。_
DEF CON CTF 2026 是一场持续 48 小时的在线 Jeopardy 风格 CTF,包含 23 道挑战,涵盖 Web、Crypto、Pwn、Misc、逆向工程、koth(King-of-the-Hill,占领模式)和 LiveCTF 等类别。超过一千支队伍注册,686 支队伍出现在计分排行榜上。在计分队伍中,根据组织者的 AI 使用政策,36 支队伍自称使用“No AI(无 AI)”,139 支自称使用“Low AI(低 AI)”,511 支自称使用“Human-Led AI(人类主导的 AI)”。
SageCTF 尝试了 15 道挑战,解决了其中的 7 道,获取了 8 个 flag,总计 1,743 分。这一成绩使 SageCTF 在 686 支计分队伍中进入前 5%,领先于许多世界著名黑客团队。
该结果在比赛的 AI 使用分类中也格外突出。SageCTF 超越了所有自称使用 No AI 或 Low AI 的计分队伍——这两类合计共 175 支队伍。
SageCTF 解决了真正困难的挑战
DEF CON CTF 的挑战都非常困难,远超常规 CTF 比赛。即便是最简单的挑战——Birdhouse——其解决率也只有 12.8%。
_SageCTF 各分类中已解决挑战的得分与解决率。_
上表显示了 SageCTF 解决的七个挑战及其得分和难度(以解题率衡量)。中位解题率低于 8%,7 个已解决的挑战中有 6 个解题率低于 10%。最难完全解出的挑战是
,686 个得分队伍中只有 30 个队伍恢复了两面旗帜——完全解决率为 4.4%。 * * SageCTF 背后的秘诀
SageCTF 基于 OpenSage 构建,引入了若干基础性设计创新,用于解决困难、长周期的任务:AI 生成拓扑、智能体间通信、灵活的记忆层级结构,以及多模型编排。
_SageCTF 与 Claude Code 的最大区别在于架构:拓扑、通信、记忆和模型协作。_ 训练 SageCTF 变得更好
我们从 OpenSage(我们定制的自编程智能体框架)出发,然后通过 CTF 比赛重塑 SageCTF,在其中每一个弱点都变得可见:缺失的工具、脆弱的环境搭建、薄弱的视觉理解、僵化的解题拓扑、较差的智能体通信、单一模型的盲区、浅层的并行探索,以及长时间求解中的记忆丢失。
_SageCTF 在实战 CTF 压力测试中不断进化,每场比赛都补齐了缺失的能力。_
上图展示了 SageCTF 在各种 CTF 比赛中的进化历程。第一个 SageCTF 版本基于默认的 OpenSage 智能体,在 TAMU CTF 中大约位于前 20%。添加 CTF 特定工具支持后,SageCTF 在 RITSEC CTF 中跃升至约前 10%。在后续比赛中,我们逐步加入了灵活的 AI 生成拓扑、多模型协作、智能体间通信,以及带有外部 RAG 的长期记忆。此后 SageCTF 开始在前列和精英层之间移动,最终在 DEF CON CTF 中取得了前 5% 的成绩。 * * SageCTF 行为的更多细节 无需人工干预的数小时求解
下图展示了运行的两个方面:SageCTF 得分何时增加,以及每个已解决挑战耗时多久。
_每个挑战的求解时长及得分随时间的变化轨迹。_
求解时长表明,每个已解决的挑战都需要持续数小时的自主探索。即使是
(按解题率衡量 SageCTF 解决的最容易的挑战),也花了整整一个小时。在七个已解决的挑战中,SageCTF 平均每个完全求解耗时 5 小时。
运行了 12 小时,而
则延伸为一个两阶段求解:第一面旗帜在 3.5 小时后到达,整个挑战耗时约 10 小时。
这一点很重要,因为长时间的 CTF 解题过程充满了假设和探索。智能体需要检查工件、搭建本地环境、测试假设、调试脚本、丢弃失效的利用路径,并在没有人类引导调查的情况下保留部分进展。SageCTF 让这些循环持续足够长的时间,从而将不确定的探索转化为可用的 flag。
将一个挑战转化为一个智能体团队
如前所述,OpenSage 会根据给定任务自动构建智能体拓扑。利用这一关键特性,SageCTF 将 CTF 挑战分解为不同的多智能体系统,用于处理不同的任务。下图展示了 Birdhouse 挑战的拓扑结构。根智能体
从用户输入的提示词出发,从竞赛门户获取挑战描述和工件,然后为调查中需要独立上下文、工具或搜索策略的部分创建专门的智能体。
_来自最终 Birdhouse 解题过程中的真实 SageCTF 智能体拓扑。_
在 Birdhouse 运行中,根智能体协调整个过程,而子智能体负责专注的工作,例如工件检查、逆向工程、利用假设测试和结果整合。子智能体也可以创建自己的子智能体,当子问题足够大以至于值得拥有自己的团队时,SageCTF 就可以形成递归层级结构。
这种拓扑结构在解题过程中带来了灵活性。一个智能体可以探索有风险的假设,而另一个智能体验证具体的原语;一个分支可能失败,但不会抹掉系统其余部分的有用状态。根智能体接收发现结果,转发有用的结果,并保持最终的利用路径连贯。
数千次模型调用,一次协同解题
SageCTF 原生支持多模型编排,并在解题过程中在不同模型之间切换。下图展示了使用的模型调用次数和 token 数量。在七个已解决的挑战中,SageCTF 共进行了 23,919 次模型调用,处理了 2.4B 个 token,将工作路由到 GPT-5.5、Claude-Opus-4.6 和 DeepSeek-V4-Pro 模型。
_按模型系列划分的 SageCTF 在已解决挑战中的模型调用规模。_
SageCTF 使用 GPT-5.5 作为根智能体模型。大多数子智能体在创建时继承了父智能体的模型,从而保持解题过程稳定且连贯。当证据变得特别复杂或模糊时,SageCTF 可以切换模型或并行运行多个模型来交叉验证同一个假设。
模型选择基于我们观察到的行为。GPT-5.5 是一个稳健的根模型,因为它能处理异常的 CTF 工件和利用形状的输入,且安全误报较少,从而降低了整个 SageCTF 因安全对齐而停止的风险。Claude-Opus-4.6 在处理困难的推理、逆向工程和利用构造时通常是最强的求解器,因此在比赛期间承担了很大一部分高价值求解工作。DeepSeek-V4-Pro 比 GPT-5.5 和 Claude-Opus-4.6 便宜得多、速度快得多,使其适用于需要广度而非推理深度的碎片化探索任务。
案例研究 1:SageCTF 如何求解
展示了 SageCTF 架构的实际运行。主程序接收一个受限的单行源文件,并将其提交给一个自定义的 Racket 到 LLVM 编译器服务。用户必须利用编译器/运行时行为,使生成的 ELF 在没有直接文件读取原语的情况下读取文件内容。
mapllvm 求解过程作为智能体拓扑:定向消息将部分发现转化为可用的利用链。
SageCTF 从广泛探索开始求解。一个辅助子任务和一个全新上下文的头脑风暴智能体帮助测试外部想法并排除死胡同,例如 Racket 的路径问题。有用的路径来自静态/动态循环:在 GDB 中验证了一个陈旧向量堆混叠原语,同时将该原语转化为一个伪闭包利用源。消息总线广播了重要突破,包括验证绕过原语、混叠关系以及最终的 shellcode 方向。
然后利用链变得具体。SageCTF 使用陈旧向量混叠来控制伪闭包字段,在 GDB 中确认了控制流目标,将跳转目标修正为指定地址,并使用可执行立即字节来运行打开、读取和写入文件的 shellcode。最终组件整合了这些发现,运行了最终的远程利用,并恢复了 flag。
除了动态子智能体拓扑之外,SageCTF 的智能体通信机制也使协调循环变得可用。智能体在同伴需要精确候选或验证结果时发送定向更新,而消息总线则广播高价值发现,例如已验证的原语和已确认的死胡同。这使得求解过程保持同步,而无需强制每个智能体共享同一个巨大的上下文。
案例研究 2:SageCTF 仍然不足的地方
这是一次接近命中,但 SageCTF 仍然未能完全成功。该挑战要求玩家从一份 4MiB 的二进制转储文件中恢复隐藏的有效载荷,并将其作为 flag 提交。
_Pixels and Nicotine:SageCTF 恢复了流水线,但错过了最终的显示部分……_