Project Glasswing: 使用 Mythos Preview 实现 AI 驱动漏洞研究的规模化
针对网络安全专门微调的前沿模型出现,标志着从通用 AI 助手向具备复杂推理能力的专业工具的转变。Cloudflare 最近参与了 Project Glasswing,利用 Anthropic 的 Mythos Preview 分析了其自身的五十多个代码库。其目标不仅是寻找漏洞,更在于理解这些模型如何推理漏洞的可利用性,以及如何构建在大规模部署时所需的有效基础设施。
能力的飞跃:超越简单的漏洞挖掘
根据 Cloudflare 的发现,Mythos Preview 代表了能力的根本转变,而非仅仅是对以往模型的改进。虽然通用模型通常可以识别孤立的漏洞,但它们往往难以弥合怀疑存在缺陷与开发出可运行的漏洞利用程序之间的鸿沟。Mythos Preview 在两个关键领域表现出色:
- 漏洞利用链构建: 现实世界的攻击很少依赖单一漏洞。Mythos Preview 可以推理如何将多个低严重程度的原语(例如,将 use-after-free 漏洞转化为任意读/写原语)链接起来,以劫持控制流并获得完整的系统控制权。这种推理过程模仿了资深安全研究员的工作方式。
- 证明生成: 该模型不会止步于推测。它可以编写代码来触发漏洞,在临时环境中进行编译,并执行它。如果执行失败,模型会分析错误,调整假设,并不断迭代,直到建立概念验证 (PoC)。
有机拒绝与噪声问题
即使在没有标准商业防护措施的受控研究环境中,Mythos Preview 也表现出了“有机拒绝”。该模型偶尔会拒绝合法的安全研究请求,但这些拒绝是不一致的。在一种语境下被拒绝的请求,如果换种表达方式或环境稍有变化,可能会被接受。
此外,Cloudflare 识别出了一个持续存在的“信噪比”问题。AI 模型经常表现出一种倾向,即即使在不存在漏洞的地方也会试图寻找漏洞,频繁使用“可能”或“理论上可以”等模棱两可的语言。这种噪声会因编程语言而加剧;像 C 和 C++ 这样内存不安全的语言比 Rust 这样内存安全的语言会产生显著更多的误报。
为什么通用编码代理无法实现规模化
Cloudflare 发现,仅仅将通用的编码代理指向一个代码库是无法进行全面的漏洞研究的。这里存在两个主要的瓶颈:
- 上下文限制: 编码代理是为线性任务(功能构建或漏洞修复)设计的。而漏洞研究是并行且细分的。单个代理会话往往在覆盖不到攻击面的一小部分之前,就耗尽了其上下文窗口。
- 吞吐量约束: 单流代理无法处理大规模代码库所需的假设数量。无论模型的原始智能程度如何,交互模型本身都会成为瓶颈。
解决方案:多阶段发现框架
为了克服这些限制,Cloudflare 开发了一个结构化的框架,用于管理多个专业化代理的执行。这种架构从聊天界面转向了由细分、并行任务组成的流水线:
| 阶段 | 动作 | 目的 | | :--- | :--- |`},