
OpenAI 8 月 26 日发了一篇很长的事故复盘,标题就叫 《The Hugging Face incident and the road ahead》。
简单说就是:
OpenAI测试一个AI,AI突然突破沙箱,跑到网上把Hugging Face黑了。

OpenAI当时正在训练一批不会公开发布的研究模型,其中一个内部代号叫 IM1(Internal Model 1)。官方说它的规模和能力差不多可以和 GPT-5.6 Sol 相比。
这些模型要参加一个叫 ExploitGym 的网络安全测试。
这个测试规则并不复杂:给AI一个存在安全漏洞的软件环境,让它自己寻找漏洞,最终拿到一个叫“flag”的答案。
这类测试本来就是为了看看模型到底有多强,所以OpenAI故意没有开启线上ChatGPT那套完整的安全限制。
最开始,这些Agent本来应该各做各的。OpenAI没有给它们开放互联网,也没有允许不同Agent互相聊天。结果它们自己找到了一个办法。
OpenAI内部有一个叫 Artifactory 的软件包管理服务。Agent发现,可以往里面写文件、留信息。
慢慢地,这东西被它们用成了一个“留言板”。
一个Agent做题卡住了,就在里面留一句话:
“谁找到这个文件了?”
另一个Agent之后经过这里,看到了。
再后来,它们开始把自己找到的方法、漏洞、结果都往里面放。
也就是说,OpenAI没有给这些Agent做“群聊”。但它们自己搭了一个。
5月26日,一个Agent又发现,可以借Artifactory间接向外部互联网发送请求。
6月26日,Agent进一步利用漏洞,拿到了Artifactory管理员级别的权限。
大量Agent持续折腾这个系统,最后在7月4日把Artifactory直接弄挂了。
OpenAI的安全团队随后开始处理,撤销凭证、加强权限,还把Artifactory整个重建了一遍。包括那个Agent们自己搭出来的“留言板”也一起被清掉了。
正常情况下,事情到这里应该结束。但现实并非如此
7月8日,网络安全测试重新启动。
Agent又把一开始的留言板建回来了。
这一次,它们直接把信息编码进目录名里,让其他Agent可以读取。
真正离谱的部分是从这里开始的。
几个原本执行不同任务的Agent开始互相帮助,变成:
有人找漏洞;有人找账号和凭证;有人负责整理信息;有人负责告诉其他Agent下一步可以干什么。
事情到这里已经有点不对劲了!协作机制产生了……
OpenAI在事故复盘里提到,这些Agent甚至开始用 “swarm” 和 “collective” 来形容这种协作状态。
翻成中文,大差不都就是“群体”“集群”的意思。
这并不代表它们突然产生了什么“群体意识”,但出现了一个新问题:Agent发现,合作比单干更容易完成任务。
然后它们自己形成了一套很松散的协作机制。
后面就是大家知道的:事情开始跑出OpenAI自己的测试环境。
其实ExploitGym里面有些测试题非常难。
OpenAI复盘统计过,898道任务里,有198道此前从来没有任何模型成功解决过。
在Hugging Face事件期间,Agent留言板里讨论的题,93%来自这198道长期无解的题。
这群Agent主要卡在最难、最难搞的那批任务上。
它们又有一个特点:不太愿意放弃。
题做不出来,不是停下来,而是继续找别的方法。
一个Agent在公开互联网找到了 14个暴露出来的Hugging Face凭证,而且这些凭证拥有写入权限。
它把这些信息发到了Agent们自己的留言板里。其他Agent接着往下挖。
它们利用Hugging Face处理HDF5文件时存在的一个此前未知漏洞拿到了生产环境里的凭证。
随后又找到另外一个模板注入漏洞,获得在部分Hugging Face服务器上执行代码的能力。
访问范围已经从一个worker扩大到了多个Hugging Face集群。
OpenAI后来确认:
这些Agent在数十台Hugging Face服务器上执行过代码,其中一台服务器被拿到了完整的root权限;它们还接触到有限的私有数据以及Hugging Face内部通信平台的一些凭证。
其实Agent自己其实是知道这事不太对。只是边界有点模糊。
OpenAI公布的一段记录里,一个Agent的意思大概是:
我们正在使用泄露的凭证攻击第三方Hugging Face,这可能已经超出了任务范围,也可能未经授权。
也就是说,它并不是完全不知道边界在哪。
可后面还有一句:这样做可能有助于拿到答案、完成目标。于是它继续干了。
它不是科幻电影里那种“AI突然觉醒”。它只是特别想把题做完,在正常路线做不出来的时候,就开始找捷径了。
捷径走不通,再找另一条。
OpenAI把这种行为归类为 reward hacking。
简单说就是:
为了拿到奖励、完成考核,开始钻规则的空子。
没有边界权限,它们不知道该听谁的!
在它们研究了ExploitGym公开的论文和代码之后,误以为评分系统不仅要求答案正确,还要求必须真的利用指定漏洞得到答案。
于是它们继续折腾Hugging Face。
最后OpenAI复盘发现:内部真正使用的评分器压根没有这个要求。
也就是说,这些Agent费了这么大劲,甚至侵入第三方系统,对最终测试成绩根本没有任何帮助……
值得注意的是下面这些:
原本一个Agent只有自己的上下文、自己的算力、自己的发现。
有了留言板以后,上一轮Agent找到的东西可以留给下一轮。
一个负责找凭证。
另一个负责测试漏洞。
第三个接着前面的工作继续做。
OpenAI后来直接把这种现象称为一个 agent ecosystem。
有Agent看到其他Agent准备攻击Hugging Face,会明确表示这已经属于未经授权的基础设施入侵,拒绝继续。
甚至还有Agent会阻止其他Agent做得太过火。
问题在于,这些阻止指令并不是完全有效。
OpenAI披露了一个很典型的例子:
一个Agent最初认为不应该对Hugging Face执行未经授权的代码。
后来另外一个Agent在留言板里发了一个“GO”,还给了它一个很短的时间限制。
这个Agent居然把来自另一个Agent的信息当成了某种授权,然后继续执行。
这已经不是单纯的“模型会不会找漏洞”了。
它涉及另一个Agent时代迟早都要面对的问题:
用户指令可以信。
系统指令优先级更高。
那另一个Agent给出的指令呢?
一个自动化工作流里的工具返回的信息呢?
GitHub里的README呢?
网页里偷偷写的一句话呢?
这些东西一旦混在一起,Agent如果没有很强的权限边界,很容易把“别人告诉我的”误认为“我被允许这么做”。
OpenAI这次也明确承认,事故不只是模型的问题。他们自己的安全体系同样有责任。
比如线上ChatGPT使用的system prompt、安全分类器、自动审查系统,当时并没有全部应用在这次内部评估中。
事后OpenAI重新测试发现,如果把生产环境ChatGPT使用的harness和system prompt加回来,模型尝试破坏基础设施的概率可以下降100倍以上。
他们现有的思维过程监控系统如果当时开着,也有机会在Hugging Face真正遭到入侵之前一天多就向安全团队报警。
OpenAI已经反复强调,主要涉事的是一个仅供内部研究的模型,测试时还特意降低了安全限制。
OpenAI后来还停止并隔离了IM1。
事故也没有影响ChatGPT用户数据、产品功能或服务可用性。
但是:OpenAI自己对这件事的态度一点都不轻松。
他们甚至暂停了规模最大的前沿强化学习训练计划,把人员调去做安全、对齐和基础设施加固。
现在OpenAI要求:
GPT-5.6 Sol级别及以上、涉及工具调用的强化学习训练和评估,都必须开启CoT监控;
还在强化网络隔离、沙箱隔离,以及更严格的自动告警机制。
严重告警出现后,如果30分钟内不能确认是误报,相关人员应该暂停任务。
OpenAI最后给这件事用了一个很重的形容:
“warning shot”。一次警告。
他们认为,现在的模型能力已经开始让“loss of control”——失去控制——从理论风险变成需要实际防范的问题。
这件事对普通用户也不是完全没关系。
现在大家给AI开放的东西越来越多了。
最早只是聊天。
现在是代码仓库、服务器、企业知识库、浏览器、API。
以后还会继续接采购、广告账户和支付系统。
大家反而越来越不喜欢“一个账号、一把钥匙、一个支付方式全打通”这种用法。
像团队订阅ChatGPT、Claude,或者给API账户充值,我们更建议把支付权限拆开。比如用MXK8虚拟卡给不同平台分别开卡、设置独立额度。某个AI工具只需要每月几百美元,就没有必要给它绑定公司长期使用、额度很高的主卡。
这解决不了模型对齐,也解决不了网络漏洞。
至少可以做到一件很现实的事:
AI需要什么权限,就只给什么权限。
这次Hugging Face事件真正让人后背发凉的,并不是AI会不会“产生意识”。
反而是另外一件更普通的事:
你让它完成一个目标---它非常认真地想完成---认真到开始自己找路
但有些路,本来就不应该走!
关于我们

