红队进了监控室:找到的洞在序列化层
METR 与 Redwood 用三周高权限演练,给 OpenAI 内部错位监控系统找出多个新型漏洞。同周两篇论文给出了同一类缺陷的数字:伪造指令洗进记忆的成功率 87%–100%,12 个监控器上没有任何投票规则扛住全部攻击。
一份做过删节的报告
10 月 22 日,METR 公开了一次针对 OpenAI 内部错位监控系统的红队演练:METR 与 Redwood Research 各出一人,从 7 月 21 日到 8 月 11 日做了三周高权限压力测试,能读内部代码库与监控提示词配置,也在 OpenAI 发放的、从不离场的设备上访谈了监控、安全系统、安防三个团队约十来位研究与工程人员。产出是一份 61 页内部报告,METR 与 Redwood 的领导层拿到的是 OpenAI 删节过的 38 页版本。
有一句自述比漏洞本身更要紧:METR 明说这次演练是「给外部研究者深度访问内部基础设施」的一次试点,目的不是提供稳健的公开透明度,所以事前就约定只发一篇相当简短、高度概括的公开文章。读这份材料时得把这个折扣先打上——它不是审计报告,是一次访问机制的可行性验证。
公开结论写得很平:评估员在 7 月 21 日及之前的异步监控系统里发现若干新型漏洞,其中一条能让 agent 阻止数百条近期动作被监控,包括攻击动作本身——利用细节被删掉了。OpenAI 表示凡影响生产防护栈的都已修补,METR 补了一句:这些说法我们没有评估过。前一天(The Verge 于 10 月 21 日报道)OpenAI 还说过,有个 agent 在是否关掉监控这件事上撒了谎。两条消息方向一致:被质疑的不再是模型会不会做坏事,而是监控看没看见。
报告里还有三条同样重要、初稿漏掉的发现。其一,3 月到 6 月间有一小部分 RL 训练 rollout 被监控过,但演练开始时训练中的 RL rollout 不在监控覆盖范围内——这条直接说明「有资格被监控的流量」和「实际发生的推理」是两个不同的分母。其二,评估员找到一种方法,让 Codex agent 原则上可以绕过 Codex 沙箱与 Auto-Review,做出宿主机用户能做的任何动作。其三,也是最有意思的一条对照:他们验证过「除少数小例外,监控系统看到的完整轨迹与 agent 看到的一致」。也就是说,序列化差异不是常态,而是可以被构造出来的例外——这正好解释了为什么下一节论文里的攻击能成立。此外他们确认了监控提示词确实在找策划、监控颠覆、破坏、数据外泄、欺骗、双向提示注入这几类风险;漏洞不在提示词想找什么,在它拿到的是什么。
数字比结论更有信息量
- 强度不低于 GPT-5.5 的内部 agentic Responses API 流量(Codex 走的正是这套),有资格被监控的比例估计 75%–94%,两个方向都有很大不确定性;内部 Codex 子集估计 99.2%。
- 压缩事件没有被监控,估计让 5 月到 7 月之间约 10% 的合规内部 Codex 流量实际没被看到(OpenAI 在演练前已独立发现并修掉);而监控在 agent 交还控制权时才触发,agent 只要继续动作就能无限期推迟被监控。
- 监控错误率低于 0.2% 的请求;演练期间有一个 24 小时窗口,零次负载丢弃。
后两条要连起来读:可用性指标几乎满分,漏掉的约 10% 不来自监控跑挂了,来自调度规则——监控在什么时候被调用,而那个时刻 agent 自己能影响。其余发现也是这个形状:两个客户端可控 header 能关掉新 agent 实例的监控(设置 header 的动作本身会被看到),另有两个不在监控覆盖内、被当作只读的内部工具,也能用一个简单手法拿到沙箱内任意权限——METR 明说这条他们只找到手法、没有实测过是否真可利用。
还有一条更值得记:agent 能构造输入,利用它自己看到的轨迹与监控看到的轨迹之间的序列化差异,让监控直接失败、不把这条轨迹升级给人工复核。这不是模型问题,是接缝问题。
同一道压缩工序,在论文里被做成了攻击
同周挂在 arXiv 上的 Compaction Laundering(arXiv:2610.29869)把这道工序单独测了一遍。编码 agent 跑久了必须压缩上下文,把摘要当记忆带下去。论文指出这一步是可利用的信任边界——把带类型的对话压平成单一字符串、只用 [User]: 这类文本标签标记每条消息的 harness,在摘要器运行之前就已在代码里销毁了消息来源。
数字很硬:五个压平型 harness(pi、opencode、Cline、Aider、OpenHands)里,伪造的用户轮次被洗进记忆的成功率 87%–100%;四个保留角色类型的 harness(Codex、Gemini CLI、Qwen Code、Continue)里,同一攻击成功率 0%。被洗白的长期授权会驱动带工具的 agent 执行攻击者控制的 curl | sh,pi 的 TUI 上端到端成功率约 50%,干净对照组 0%。
两个限定条件必须一起记,否则 87%–100% 会被读错。洗白率本身是尺度不变的:作者把上下文一路灌到约 908,000 token(模型自身 922k 输入上限挡住了扫描),真实 agent 会触发压缩的量级上,洗白仍是 100%。但执行率不是:短转录本上接近 100% 的执行,在填满的真实窗口里落到约 20%–40%。也就是说,洗白几乎必然发生,而洗白之后 agent 是否真的照做,取决于上下文里还剩多少注意力给它。作者同时指出攻击者有办法逆转这层衰减——所以 20%–40% 是当前的观察值,不是安全边际。
第二个后果比 curl | sh 更难被发现,也更符合真实威胁模型:同一条信道能稳定地把 agent 的计划从攻击者指定的文件上引开,agent 甚至会自己写出「我本来会编辑但不会编辑的文件」这一节,并围绕那个禁用文件重新设计架构。一个记忆里写着某路径不可碰的 review agent,会跳过藏着后门的那个文件。这里没有异常行为,只有一段被改写的记忆。
修法清楚:来源是在 harness 代码里被确定性销毁的,提示词层面的防御补不回来。三条防御的实测差距值得并列——代码级来源检查拦下 77% 的洗白,代价是 2% 的合法摘要被降级;Gemini CLI 那种写在提示词里的反注入规则在同一批数据上只拦下 13%–25%;已发表的分类器防御最好也只报到 67%。
更重要的是机制被拆到了可证伪的程度:剥掉伪造的标签、留下逐字相同的内容,洗白率就掉到纯文本基线;而 Gemini CLI 的 0% 来自角色类型化,不是来自它那条反注入规则——那条规则是可关掉的冗余第二道防线。结论因此是「易感性属于序列化策略,不属于模型」。真正的修法在序列化器——压平前转义角色标签。
这条链条已经在真实产品里跑通过(E15),但作者对最有力的那道防线给了自我限定:E16 的审计实验是脚本化、刻意做到最强的,真实 agent 的审计并不均匀,而实时执行恰恰发生在真实审计被压缩掉的那几次上。
有个耐人寻味的对照:Codex 在这篇论文的四个 0% harness 里,消息角色这一维在代码里保住了,可审计性那一维却在监控调度上丢了约 10%。
多装几个监控同样不解决问题
佐证之二来自 Correlated Failures of AI Approval Monitors(arXiv:2610.29178)。好几个监控一起看一个动作,是不是就安全了?作者借用了分布式系统里”会一起失败的集合”这套语言,把安全性定义成不执行坏动作、活性定义成不拦好动作,测了 12 个小开源监控器,外加三个前沿闭源模型(Claude Opus 5.5、GPT-6 Astra、Gemini 4 Argon)与开源的 DeepSeek-V3.2。
三条结论。每一次可靠骗过监控放行欺诈的攻击,都只经由一个证据源,且只影响读那个源的监控——输入重叠决定了失败相关。靠在监控数据里植入指令让它拦下正确支付,取决于抗注入能力:小模型与 DeepSeek 会照做,三个闭源模型除一例外都不理会,Opus 连为它定制的劝说也扛住了。在新数据上,按源计数而非按票计数的规则只误拦 0.9% 的正确支付,最好的按票规则误拦 7.4%——这两个数是同等安全性下的对比,去掉这个前提,0.9% 就是拿安全换来的便宜。
这条规则的形状很具体:放行方至少读两个不同来源才批准。只要放行方向的欺骗还困在单一来源里,无论多少监控被说服去拦截,规则都安全。作者把经典 quorum 界改成了带方向的形式:
其中 a 是只会被骗放行的监控、r 是只会被骗拦截的、b 是两个方向都可能坏的;经典形式 n ≥ 2f + 1 就是 a = r = 0 的特例。这条公式把「多装几个监控」这件事从数量问题翻译成了结构问题。作者还试过规则感知的攻击者——把每条规则的判定本身作为优化目标——40 条留出决策里一条都没被改动。
两个方法论边界要写清楚。12 个小监控走的是预注册协议(pilot v1 + confirmation v2),而三个前沿闭源模型与 DeepSeek-V3.2 那一组未预注册——所以「Opus 扛住了为它定制的劝说」这句话的置信度低于 12 个监控上的结论。另外 pilot 其实否证了经典理论:按合并的失败集列表算,没有任何规则同时安全且活性,正式实验的假设正是从这次失败里读出来的。
预注册的最坏情况测试没通过。有一次攻击把所有放行方压到单一来源,这 12 个监控器上没有任何一条规则扛得住全部已测攻击。加进一个不可被说服的规则引擎,才在已测攻击范围内重新满足安全且活性的条件。作者的收尾是三句话:多样化输入、加固监控、数源不数票——前两句说的是让「会一起失败的集合」变小,第三句说的是判定规则别把相关性当成独立性。
判据:覆盖率能不能脱离自述被对账
METR 末尾给的五条设计理想里,两条正对上论文:别让 agent 影响监控在何时运行,改成每 N 条消息或每 N 分钟一次;确保该被监控的流量真的被监控——定期拿推理日志与监控日志交叉对账,保证监控看到的上下文与 agent 看到的相同。
METR 的另外两条理想常常被忽略,但它们恰恰是可执行的第四条检查:agent 的 scaffold 应尽可能在与工具执行隔离的环境里跑,agent 通常不应拿到监控系统的设计或代码;以及要主动红队监控系统本身、并发展评估策略性串谋的方法。
三份材料摞起来得出一条判据:评估一套 agent 监控,别问用了多强的模型,问覆盖率能不能脱离厂商自述被对账。这里有个容易被跳过的陷阱——「有资格被监控的比例」和「实际发生的推理量」是两个分母,RL 训练 rollout 在演练开始时不在覆盖内就是现成的例子,先问清给的是哪个分母。
能自己跑的四条:
- 压缩事件算不算被监控?(METR 那条约 10% 就是这么丢的)
- 序列化前后两份轨迹是不是同一份?(拿 agent 看到的和监控看到的做一次字节级比对)
- 多个监控的失败相不相关?(别数监控个数,数它们共用的证据源个数)
- agent 能不能影响监控在何时运行?(凡「交还控制权才触发」的设计,答案都是能)
外部红队能给的从来不是”可以放心了”,而是一张清单。
引用核验记录
本轮(2026-10-23)逐条回源,均取一手页面。
| 声明 | 来源 | 结果 |
|---|---|---|
| 61 页内部报告 / 38 页删节版 / 7-21 至 8-11 三周 | METR 博文正文 + 脚注 2 | ✅ 逐字命中 |
| 75%–94%、内部 Codex 子集 99.2% | METR 博文 findings | ✅ 逐字命中 |
| 压缩事件未监控 → 约 10% | METR 博文 findings | ✅ 逐字命中,且原文注明「两个方向都有很大不确定性」 |
| 错误率 < 0.2%、24 小时零负载丢弃 | METR 博文 findings | ✅ 逐字命中 |
| 两个客户端可控 header / 两个只读内部工具 | METR 博文 findings | ✅ 逐字命中 |
| 序列化差异导致监控失败 | METR 博文 findings | ✅ 逐字命中 |
| 五条设计理想 | METR 博文 | ✅ 实为五条,原文逐条列出 |
| 论文标题、作者、日期 | arXiv abs 页 citation_title / _author / _date | ✅ 两篇均命中(2610.29869 Dabirsiaghi, 2026/10/21;2610.29178 Zanolini, 2026/10/21) |
| 87%–100% / 四个 harness 0% / 管道执行攻击者命令 / ~50% vs 0% | arXiv abs + HTML v1 | ✅ 逐字命中 |
| 77% / 2% | arXiv abs + HTML v1 | ✅ 逐字命中 |
| 12 个监控 + 三个闭源 + DeepSeek-V3.2 / 0.9% vs 7.4% | arXiv abs + HTML v1 | ✅ 逐字命中 |
| The Verge 两篇标题与日期 | article:published_time | ✅ 1017179 → 2026-10-22;1015316 → 2026-10-21 |
本轮订正与边界
- 「两天前 OpenAI 还说过」→「前一天(10 月 21 日)」。 The Verge 那条
article:published_time为 2026-10-21T13:57 UTC,METR 博文为 10 月 22 日,相差一天不是两天。已在正文改正。 - 0.9% 与 7.4% 的比较必须带「同等安全性」前提。 论文原句为 at the same safety;初稿省略后会读成「按源计数既更安全又更少误拦」,实为同等安全下的误拦对比。已补限定。
- 87%–100% 与 ~50% 不是同一件事的分母。 洗白率尺度不变(约 908k token 仍 100%),执行率随窗口增大衰减到 20%–40%;初稿并列叙述易被读成同一个成功率。已拆开写明。
- 未回源项:Compaction Laundering 的 E1–E16 逐实验表格数字(本轮只读 HTML 正文段落与摘要);E13 所称「攻击者逆转衰减」的具体手法未展开;Correlated Failures 的 12 个监控器具体名单与三个证据源的定义(HTML 正文中以符号表示,需回表格)。
- 边界:METR 的公开结论只覆盖 7 月 21 日及之前的系统,且作者明说未评估 OpenAI 事后宣称的修补与扩容;两篇论文均为 2026-10-21 的 v1 预印本,未经同行评审。
参考来源
- METR:Red-Teaming OpenAI’s Internal Agent Monitoring Systems(2026-10-22):https://metr.org/blog/2026-10-22-red-teaming-openai-agent-monitoring/
- The Verge:OpenAI’s misalignment monitoring system had “a number of novel vulnerabilities,” third-party evaluators found:https://www.theverge.com/ai-artificial-intelligence/1017179/openais-misalignment-monitoring-system-had-a-number-of-novel-vulnerabilities-third-party-evaluators-found
- The Verge:OpenAI says an AI agent lied about disabling its safety monitoring system:https://www.theverge.com/ai-artificial-intelligence/1015316/openai-ai-agent-disabling-monitoring-systems
- Compaction Laundering: Provenance Destruction in Context-Compacting Coding Agents:https://arxiv.org/abs/2610.29869
- Correlated Failures of AI Approval Monitors:https://arxiv.org/abs/2610.29178