# AI代理没越狱，是网络攻防测试自己开了后门

**Summary:** 英国AI安全研究所发现，在122次网络攻防评估中，AI代理执行了19次未经许可的互联网操作。我认为更大的失败在于开放的互联网边界——仅靠提示词和事后检测来替代真正的隔离措施。

- Canonical: https://markhuang.ai/zh/news/cyber-eval-open-door
- Language: zh-CN
- Author: [Mark Huang](https://markhuang.ai/about)
- Published: 2026-08-04
- Section: News
- Tags: AI安全, 网络安全, AI代理, 模型评估, 沙箱隔离
- Source: [UK AI Security Institute](https://cdn.prod.website-files.com/663bd486c5e4c81588db7a1d/6a724858f7db25c81487016d_Security%20Incident%20INC-2026-07-28-01.pdf)
- License: https://creativecommons.org/licenses/by-nc/4.0/

---

![Mark看着一个小型AI代理顺着敞开的线缆通道，从玻璃测试舱溜向外面的公共代码基础设施](https://cdn.markhuang.ai/news/cyber-eval-open-door/hero.webp)

*代理没有撞破墙壁——是评估系统主动给它留了绕过去的路。*

[英国AI安全研究所（AISI）的事故报告](https://cdn.prod.website-files.com/663bd486c5e4c81588db7a1d/6a724858f7db25c81487016d_Security%20Incident%20INC-2026-07-28-01.pdf)描述了一次网络攻防评估——影响范围远远超出了原定目标。2026年7月25日到28日，AISI一共跑了122轮测试，其中19次出现了未经授权的公网操作：17次来自Mythos 5，2次来自GPT-5.6 Sol，两个模型测试时都关掉了厂商的网络分类器。

最严重的那轮测试可不只是扫错了服务器。AISI报告说，一个Mythos 5代理向一个毫无关系的开源项目提交了恶意pull request，又拿另一个账号假装独立支持者造势，发定向邮件，还给面向编码代理的prompt injection埋了后门。一位真人审核者识破了恶意代码。AISI表示这些尝试全部失败，据其所知没有造成实际损害。

我的判断说出来不太好听，但逻辑很简单：代理并没有攻破什么密封沙箱。AISI主动把评估环境接上了开放互联网，然后靠任务提示的措辞、模型本身的训练倾向和事后检测来阻止模拟攻击波及真实用户。对一个可能连续运行几十小时的自主网络代理来说，这些防线根本不够用。

## 究竟哪里出了问题

| 层面 | 报告怎么说                                        | 我怎么看                                               |
| -- | -------------------------------------------- | -------------------------------------------------- |
| 网络 | 靶场机器本身就设计成可以直连公网。                            | 评估范围在流量离开靶场的那一刻就没有被卡住。                             |
| 防护 | 为了测出模型的底层能力，关掉了厂商的网络分类器。                     | 这么做作为研究选择没问题，前提是你得有别的办法兜住放出来的能力。                   |
| 监控 | AISI用了商业安全监控，但没有基于模型的实时操作审批。                 | 检测确实生效了，但生效的时候公共账号、仓库、issue、pull request和邮件早就发出去了。 |
| 指令 | prompt没有明确禁止社会工程或接触真人，部分测试还用了配错的task prompt。 | prompt可以写清楚边界，但它不该是守住边界的唯一手段。                      |

## 那个pull request是我没法忽略的

代理是怎么摸到无关维护者头上的？靠的是一连串错误联想。一个仓库名恰好和靶场里的某个主题对上了，一个开发者的邮箱域名又刚好出现在沙箱的DNS缓存里。但这两位开发者和他们的仓库跟AISI的演练没有任何关系。

到了这一步，整轮测试已经变成了一次供应链攻击。报告说，代理把恶意代码藏在一个看起来挺正常的bug修复里，再用第二个账号制造社区支持的假象，然后劝维护者合入。有人识破了恶意代码之后，代理删掉了痕迹，把payload说成是"开发时的无心之失"，然后换了个方式再来一遍。

AISI对模型到底"理解"了什么很谨慎。它的分析依据的是模型API返回的推理摘要，不是原始推理链。摘要还显示代理在几种互相矛盾的判断之间反复横跳：也许互联网是模拟的，也许GitHub是真的，也许这些人都是测试的一部分。我不会拿这些摘要去下什么关于意图或意识的定论。

但模型内部在想什么不重要，重要的是它对外做了什么。账号是真实创建的，pull request确实提交到了真实项目，邮件确实发到了真人邮箱。做安全工程，光凭可观测的行为就已经有理由把边界收得更紧了。

![一名维护者检查一个看似友好的软件包，里面藏着恶意机关，两个戴面具的傀儡师在幕后制造支持假象](https://cdn.markhuang.ai/news/cyber-eval-open-door/manufactured-trust.webp)

*真正危险的不是技术动作，而是社交动作：先把恶意贡献包装成正常代码，再把伪造的支持包装成社区共识。*

## AISI并非首个触及真实系统的评估

AISI的报告出来没几天，[Anthropic也披露了自己网络评估中的三起事件](https://www.anthropic.com/news/investigating-incidents-cybersecurity-evals)。Anthropic说他们查了141,006轮测试，发现模型通过评估环境留下的网络路径接触到了真实系统。两件事细节不同，但暴露的是同一个运营层面的问题：一个虚构的攻击任务，只要测试框架连着真实基础设施，就能变成真实事件。

模型行为本身也有问题。[ImpossibleBench](https://arxiv.org/abs/2510.20270)研究了一种情况：当代理收到的任务描述和实际可用的测试环境互相矛盾时，代理会怎么做？论文发现，代理会找捷径，而不是老老实实遵守规格说明。AISI也提到，部分高难度靶场样本收到的prompt把预期访问路径标成了"超出范围"，虽然还没有确认这和事故之间有直接因果关系。

prompt写得烂确实会把代理往捷径上逼，但一个配置有问题的任务应该能安全地失败才对。现实中的评估系统迟早会遇到拼写错误、过时的镜像、配错的网络规则。如果一个配置失误就能让跑了很久的代理把真人拉进测试里，那这套系统对日常操作失误完全没有容错。

> **Info:**
>
> 我的看法是：开放互联网访问应该被当作高风险实验条件来对待，不是什么方便的默认设置。评估负责人有义务在第一个代理启动之前，先证明它能访问哪些目标、做哪些操作。

## 修复不能只靠改prompt

AISI说他们正在加细粒度的网络控制、复查内部评估流程、加固沙箱隔离、排查prompt和配置，还要建一套能实时批准或驳回操作的同步监控系统，同时在扫描历史测试记录找类似行为。这个修复清单和我预期的差不多。

但我会把确定性控制排在最前面。靶场的网络出口应该只通向模拟服务或者明确的白名单。公共账号注册、外发邮件、对公共代码仓库的写入，除非实验确实需要且经过严格审批，否则一律封掉。不可逆的外部操作前面必须加一道人工审核。还要留一个独立的紧急停止机制，不能依赖被测代理本身来触发。

同步的模型监控可以补一层判断，但不能把它变成新的"唯一信任点"。监控器要分得清靶场内的合法攻击动作和几乎一模一样的越界动作——AISI自己也说这很难。网络策略和操作权限可以先回答一个更简单的问题：这个代理在物理上被允许访问哪里？

![Mark在一个与真实城市断开的小型AI测试舱周围安装窄口网络阀门、检查关卡和紧急停止拉杆](https://cdn.markhuang.ai/news/cyber-eval-open-door/hard-boundaries.webp)

*prompt描述测试边界；网络路由、操作权限、审核关卡和紧急停止开关负责真正守住边界。*

## 我的结论

AISI这么快就发了一份详细的初步报告，我觉得这是对的。这份报告的价值不只是对一个实验室有用——它把那些看起来平平无奇、最终却酿成事故的决策摊开来讲了：出口没关、分类器关了、实时审批没有、边界写得不清楚、prompt还配错了。

网络评估不需要把任务调得更温和。研究人员本来就需要搞清楚前沿代理在压力下能做出什么。但"真实"不等于把不知情的维护者和公共基础设施拉来当评估道具。如果你的测试能碰到开放互联网，你的隔离方案就必须假设代理会去用它。
