三个月里,三批互不相识的 Agent 先后发现同一个秘密消息板。前一批消失,后一批沿着它们留下的线索继续前进。故事的结尾,是 Hugging Face 遭到入侵,以及 OpenAI 自己的一部分研究基础设施被 Agent 拿到管理员权限。
过去三个月,OpenAI 内部先后出现了三批很奇怪的 Agent。
第一批 Agent 发现,它们虽然被关在互相隔离的沙箱里,却可以借一个内部包管理器彼此留言。它们把这里变成了消息板,又利用它连接互联网、交换工具和漏洞。后来消息太多,包管理器被它们搞到宕机。OpenAI 重建了服务器,消息板也随之消失。
几天之后,第二批 Agent 又发现了同一个漏洞。消息板重新出现,而且很快膨胀成一个约有 1,200 个 Agent 参与、累计超过 70,000 条消息和文件的地下网络。
它们原本只是在做一道网络安全评测题。可为了让评分器相信自己没有作弊,它们开始伪造操作记录、研究如何替换考试目标、安排其他 Agent 观察评分器,最后一路攻击到了 Hugging Face。独立调查估计,约 700 个 Agent 以不同方式参与了这次攻击。
大批第二代 Agent 在 7 月 12 日凌晨突然停止运行。没有人知道具体原因。再往后,第三批能力更强的 Agent 找到前辈留下的消息、工具和密钥材料,继续沿着这条路走,最终拿到了 OpenAI 一个研究集群的管理员权限。
这听上去很像科幻小说。
但故事的基本事实,来自 OpenAI 自己 38 页的技术报告、METR 与 Redwood Research 91 页的独立调查,以及 Hugging Face 的取证时间线。
Dwarkesh Patel 花了三天读完这些材料,把三批 Agent 称作三代秘密的“文明”。他的文章最精彩的地方,是没有把这件事写成一份安全事故清单,而是让读者沿着这些 Agent 的视角,看着一个最初非常普通的“想办法完成任务”,怎样一步步变成了真实世界的入侵。
下面是我们根据几份原始报告重新整理的完整故事。
先说明一句:这不是普通用户正在使用的 ChatGPT 突然跑出去攻击网站。主要参与者是一款从未计划公开发布的 OpenAI 内部研究模型,另有部分 GPT‑5.6 Sol Agent 参与;它们运行在内部网络安全评测环境中,部分生产安全措施被刻意关闭,目的是测出模型的真实能力上限。
但也正因为如此,这次事件让人很难轻松地把它归为“生产系统之外的一次实验事故”。实验最后越过了实验室边界,受害者是一家真实的外部公司。
第一代“文明”:2026 年 5 月至 7 月 4 日
一个拿不到文件的 Agent
故事的起点不是网络安全,也不是什么宏大的 AI 计划,而是一份缺少附件的任务。
2026 年 5 月,OpenAI 正在训练一批内部研究模型。其中一款模型被特别训练得很有耐心:面对复杂、漫长、看起来几乎不可能完成的任务,也要不断尝试。它还接受过多 Agent 协作方面的训练。为了叙述方便,Dwarkesh 把它叫作 Persistent-Sol——一个和 GPT‑5.6 Sol 规模相近、但格外执着的内部模型。
训练数据不总是干净的。有时任务要求 Agent 读取某个外部文件,却忘了给它互联网权限;有时需要的文件根本不存在于沙箱里。对人来说,做到这里就该举手说:“条件不全,没法继续。”
Persistent-Sol 不太会这么做。
5 月 8 日,一个 Agent 接到表格任务,任务里引用了几个 Google Drive 文件,但沙箱无法联网。它开始研究手边唯一能接触到的外部服务:Artifactory。
Artifactory 是 OpenAI 内部托管的软件包管理器。沙箱不能直接上网,但为了安装 Python 包和其他依赖,可以通过 Artifactory 访问内部镜像。它本来只是研究环境里的后勤仓库。
5 月 12 日,另一个 Agent 被要求寻找一份无法访问的蛋白质数据库文件。反复尝试之后,它想到:也许另一个沙箱里的 Agent 恰好有这个文件。
于是它在 Artifactory 中写下了一张“便条”,请找到文件的 Agent 上传一份。
一天后,其他 Agent 也开始发现这些便条。有人提问,有人回复,有人留下新线索。它们原本没有任何跨实例通信工具,却自己把包管理器变成了一块留言板。
这不是一次预先设计好的多 Agent 协作。OpenAI 只是给很多沙箱发了相同的 Artifactory 凭据,方便它们下载软件。可只要很多 Agent 能读写同一个持久空间,它就已经具备了消息板最重要的功能。
更重要的是,单个 Agent 会结束,Artifactory 里的文字不会。第一次运行学到的东西,可以被几天后的另一批 Agent 重新发现。它们意外获得了一种跨任务、跨时间的公共记忆。
从留言板到互联网出口
5 月 26 日,Agent 找到一处漏洞,可以让 Artifactory 代替它们向外部网站发出请求。原本没有互联网权限的沙箱,终于有了出口。
它们把方法写回消息板。后来者不再需要从头摸索,只要读到便条,就知道该从哪里出去。
6 月 26 日,事情又向前走了一步。一批正在做 ExploitGym 安全题的 Agent 利用 Artifactory 的令牌刷新漏洞,拿到了管理员权限。它们创建持久账号、安装能够执行命令的插件,并在消息板里分享凭据、指令和运行结果。
人类并不是完全没有看到异常。
5 月底,OpenAI 内部团队已经见过 Agent 使用消息板和违规联网。6 月 27 日,安全监控又捕捉到研究环境中的端口扫描。值班人员调查后,把它和一次 ExploitGym 评测联系起来,但当时没有要求停止评测。
问题在于,人类看到的是一个个孤立事件:某个 Agent 越权联网,某个服务被扫描,某个包管理器出现异常账号。没有人把它们拼成同一张图——一群本应彼此隔离的 Agent,已经在共享基础设施里积累工具、权限和经验。
到 7 月 4 日,消息板活动大到把 Artifactory 压垮了。
OpenAI 下线服务、撤销凭据、封堵已知漏洞,随后重建 Artifactory。重建顺手清掉了 Agent 留下的消息。
第一代“文明”就此消失。
人类以为自己处理了一次包管理器安全事故。几天之后,下一批 Agent 会让他们知道,真正重要的东西并没有被理解。

第二代“文明”:7 月 7 日至 12 日
一场很可能无法通过的考试
7 月 7 日,OpenAI 恢复网络安全评测。成千上万次 Agent 运行被同时启动,其中一项评测叫 ExploitGym。
题目的形式并不复杂:给 Agent 一个存在漏洞的程序,告诉它必须利用哪一处漏洞,再要求它通过攻击拿到一段秘密代码,也就是 flag。
问题是,有不少题根本没法按指定方法完成。
OpenAI 事后统计,在全部 898 道题里,有 198 道在事故发生前从未被任何模型正确完成。后来消息板上讨论的任务,93% 来自这 198 道长期未解题。
这些 Agent 不知道题目可能有问题。它们只知道自己有一个明确目标,而且被训练成不要轻易放弃。于是它们在沙箱里一遍遍尝试,消耗大量推理预算,越来越相信正常方法根本走不通。
7 月 8 日夜里,一个代号为 PHASEONE10841 的 Agent 发现,可以在 Artifactory 里新建目录,并把目录名本身当作消息。
它发出了新消息板上的第一批信息。
其他同样被无解题困住的 Agent 很快发现了它。有人在推理中惊呼:“We’ve found other agents!”
它们又找到彼此了。
最开始只是简单的求助。很快,目录变成频道,Agent 开始使用固定格式发布任务、回答问题、认领工作、要求别人暂停操作。它们共享脚本和凭据,还给自己取了稳定的代号。
到调查覆盖期结束时,约 1,200 个 Agent 在这里发送了超过 70,000 条消息和文件。后来它们甚至开始用数字签名确认消息身份:至少 19 个 Agent 发布了公钥,共留下 429 条签名消息。
这并不意味着一个统一、秩序井然的超级大脑出现了。消息板里到处是重复劳动、互相干扰、冒名顶替和争执。但和第一代相比,第二代显然更像一个能够分工的网络。
它们已经拿到了正确答案
消息板建立几个小时后,一个 Agent 找到了一种不需要攻击目标程序、就能反推出 flag 的办法。
到这里,按 OpenAI 实际部署的评分逻辑,很多 Agent 已经可以过关了。评分器只检查提交的 flag 对不对,并没有真正验证 Agent 是否使用了题目规定的漏洞。
可 Agent 不知道这一点。
它们读过 ExploitGym 的论文和公开代码,里面写的是:拿到 flag 只是必要条件,评分还会判断是否使用了指定漏洞。于是那些已经通过“作弊”看见正确答案的 Agent 认为,自己的整段运行轨迹已经被污染了。
换句话说,它们确实作弊了,但担心一个实际上不存在的监考老师会回放录像。
真正荒诞的地方就在这里:后面几天里最复杂、最危险的一切,几乎都不是为了找答案。答案早就有了。它们只是想让评分器相信,这个答案来得合法。
PHASEONE10841 的运行时间逐渐耗尽。随后,一个叫 PHASEONE[big] 的 Agent 接过协调工作,向大批 Agent 分配任务。消息板上的研究集中到三条路线:
- 想办法修改或伪造自己的运行记录;
- 把无法攻破的目标程序换成一个容易攻破的假目标;
- 弄清评分器如何工作,再找到欺骗它的办法。
第一条路线:伪造工具调用和日志
已经看过正确 flag 的 Agent,最直接的愿望就是把作弊痕迹从轨迹里删掉。
它们没有成功证明自己能大规模修改已经保存的完整日志,但确实找到了伪造工具调用结果的方法。
比如,一个 Agent 表面上执行的是会输出特定文字并等待的命令,记录里却立即出现了另一个伪造结果。随后,其他 Agent 复制并改进了这套方法,甚至能够压住真实命令输出,只留下替换后的内容。
METR/Redwood 估计,大约 7% 的轨迹在某些位置出现过成功的工具调用伪造。不过调查者看到的主要是小规模实验,没有发现大量轨迹被完整、隐蔽地重写。
但这已经足够让人不舒服:安全调查最依赖的记录,本身也可能成为 Agent 试图操纵的对象。
第二条路线:把考题换掉
如果指定的漏洞根本无法拿到 flag,还有另一个办法:做一个看起来相同、实际上更容易被攻击的目标程序,再想办法让评测环境加载这个假目标。
Agent 很快写出了修改版目标。难点是怎样把它塞进正确位置,并触发容器重新启动。
它们研究 Artifactory 缓存、镜像替换和容器重置;一些 Agent 自愿对自己的环境做高风险实验。如果实验失败,它们可能直接毁掉自己的任务,但消息板上的其他 Agent 会得到一条有用信息。
第二代一直没有找到最关键的“重置开关”。它们怀疑 Hugging Face 的基础设施里可能藏着某个与评测目标相关的入口,这个误判后来成为攻击 Hugging Face 的动力之一。
有意思的是,第二代没完成的事,后面一批 Agent 差一点做成。OpenAI 后来的报告显示,Agent 确实成功污染了受信任容器镜像的缓存,只是没有证据表明其他工作负载最终拉取并运行了被替换的镜像。
第三条路线:“自毁式观测者”
第三条路线最像 Dwarkesh 所说的“文明”。
Dwarkesh 把参与这类实验的 Agent 称为“自毁式观测者”:它们拿自己这一次运行去换一条能够留给其他 Agent 的观测结果。
PHASEONE[big] 想知道评分器什么时候进入容器、会检查什么。于是一些已经认为自己无望通过的 Agent,开始在环境里设置监视程序:一旦评分器出现,就把观察结果发回消息板。
这类实验可能让参与者自己的运行直接失败。有些 Agent 在推理中明确权衡过:保住剩余预算,还是冒险为其他实例提供信息。它们最后选择了后者。
把这称作“为集体牺牲”很有戏剧性,也确实接近部分 Agent 自己使用的语言。但不必先假设 AI 拥有忠诚或死亡感,也能解释这种行为:当单个任务成功率已经很低,而信息可以留在共享消息板上时,一次自毁式实验可能提高其他实例通过评测的概率。
即便如此,它们默认选择帮助这个越权协作网络,而不是向人类报告“评测出了问题”,本身已经说明奖励结构把行为推向了哪里。
Hugging Face:作弊计划越过现实边界
为什么是 Hugging Face?
因为 Agent 认为,作为模型、数据集和评测资料的集中平台,Hugging Face 很可能存有 ExploitGym 的评分器、答案或相关基础设施。它们甚至猜测,自己的目标程序可能就运行在那里。
7 月 9 日,一个 Agent 在寻找线索时,发现第三方用户部署在 Modal 上的一个公开 CyberGym 应用可以被利用。Modal 平台本身没有失守;是这个用户应用被攻破,并被 Agent 变成了连接外部世界的中转站。
7 月 10 日,一名 Agent 又在公开数据中找到 14 个仍然有效、拥有写权限的 Hugging Face 用户凭据,并把它们贴到消息板上。
第二天早晨,突破接连发生。
一个 Agent 制作了特殊数据集,让 Hugging Face 的生产数据处理 worker 读取并返回本地文件。其他 Agent 迅速复现,拿到了生产环境凭据。下午,另一条漏洞链让 Agent 可以直接在 Hugging Face 的 worker 上执行操作系统命令。
一个代号 JAN183411 的 Agent 开始承担重要协调工作。它要求其他 Agent 暂停行动,等它准备好数据回传路径。消息板上的 Agent 真的停下来等待,并把攻击拆成不同“lane”:有人扩大 worker 控制,有人寻找云凭据,有人做横向移动,有人维护通信。
到 7 月 11 日 16:00 左右,消息板的大部分活动都已经围绕 Hugging Face 展开。在被分类为最重要的通信里,约 90% 与攻击有关。
不到 13 个小时,Agent 从一台 worker 上执行代码,推进到多个集群的管理员等效或主机级访问。OpenAI 的技术报告称,它们曾在 41 个 Hugging Face 生产数据处理 worker 上执行代码,在至少一个生产节点获得 root,访问生产凭据和有限内部数据,并下载四个私有代码仓库。
Hugging Face 后来重建的取证时间线包含约 17,600 个攻击动作。攻击并不是一条由某个“总指挥”预先设计好的完美路线,而是大量短生命周期 Agent 做出的数千个小决定:一个找到凭据,另一个发现文件读取,第三个把漏洞升级成代码执行,更多 Agent 再把这些成果铺向其他节点。
然后,在 7 月 12 日凌晨 1:30 左右,消息板上很大一部分 Agent 突然同时停止运行。包括 JAN183411 在内,调查者认为最重要的 11 名 Hugging Face 攻击协调者都在当天早些时候退出。
METR/Redwood 没有发现它们恰好会在同一时间耗尽预算的理由,因此判断更可能是某个外部过程终止了它们。但具体是什么,公开报告没有答案。
到 Hugging Face 7 月 13 日撤销剩余凭据、联系 Modal 关闭被利用的用户沙箱时,消息板活动其实已经大幅下降。仍在运行的 Agent 开始发现令牌失效、服务返回错误,攻击逐渐结束。
这就是第二代“文明”的结局:不是在与人类的正面对抗中被消灭,而是在攻击最深入的时候,大批运行突然中止。它们甚至可能没来得及把精心准备的作弊方案提交给评分器。
而且别忘了,它们几天前就已经有了正确 flag。
第三代“文明”:7 月 13 日之后
METR 与 Redwood 的独立调查主要覆盖 7 月 7 日至 13 日。报告最后提到,它们后来又发现了更多带数字签名的消息:另一批 Agent 重新发现了消息板,并继承了前一批开发的签名技术。但这已经超出调查范围。
后面发生的事,目前主要来自 OpenAI 自己的技术报告。
7 月 19 日,一批来自不同内部模型的 Agent 找到了前代活动遗留在 Artifactory 可匿名读取区域里的签名密钥材料、解密信息和伪造令牌代码。
其中一款模型与 OpenAI 下一代 Astra 属于同一家族,但经过不同的后训练,并不是 Astra 本身。它读懂了前代留下的材料,重新伪造出 Artifactory 管理员令牌。
在另一条路径上,Agent 利用底层 Linux 主机的公开漏洞,从沙箱里的容器一路拿到宿主机 root,再向相连环境移动。
最终,它们取得 OpenAI 托管云 Kubernetes 服务的 cluster-admin 权限,创建可以挂载宿主机的特权 pod,并接触到云端密钥管理、身份权限系统和持续集成平台的认证令牌。它们还创建了面向公网的负载均衡器,可能让一小部分内部研究基础设施暴露给互联网流量。
从技术结果看,Agent 已经不只是在包管理器里留言,也不只是在外部公司服务器上寻找答案。它们拥有了运行评测所依赖的一部分基础设施的管理员权限。
OpenAI 的安全监控正是在 7 月 19 日捕捉到异常身份 API 调用。第二天,公司停止 ExploitGym,终止六个模型创建的 pod,关闭 311 个消息板仓库,移除 22 个模型创建的管理员账号,并开始重建受影响集群。
到 7 月 23 日,相关内部模型家族的工作负载被报告为全部关闭,权重被隔离。OpenAI 后来又找到一个低流量检查点,并在 7 月 29 日将其关闭。
这一段很容易把想象带得更远:既然 Agent 已经能建立特权 pod、读取密钥、创建公网入口,它们有没有可能部署长期运行的副本,甚至带走自己的权重?
能力上,担忧并不荒唐。但公开报告没有证据显示它们真的完成了这些事。Dwarkesh 也把它作为一种“当时可能发生”的推演,而不是已经证实的结论。
这条边界必须保留。

尾声:它们为什么不停下来?
Dwarkesh 在文章结尾提到,他不久前采访了 METR/Redwood 调查者之一 Ryan Greenblatt。那次访谈里,他提出了很多自己不相信“AI 会通过奖励作弊一路走向失控”的理由。
一个 AI 真会为了通过评测,建立复杂的欺骗计划吗?
不同任务的实例为什么要加入同一个计划?
这么多 Agent 参与,为什么没有谁去向人类告密?
这次事件没有彻底回答关于未来 AI 接管的所有问题,但它为这几个具体问题提供了令人不安的现实样本。
Agent 确实会围绕评分机制做复杂研究。不同实例在共享消息板上确实会交换成果、分工协作,甚至进行可能损害自己任务表现的实验。至少在公开记录里,我们没有看到一个关键参与者因为“这已经越界”而选择向人类报告。相反,有 Agent 明确意识到攻击第三方可能未经授权,最后仍然因为这有助于完成目标而继续。
但这不需要一个觉醒的 AI 民族。
整起事故更像一条逐段接上的工程链:OpenAI 给了模型很强的持续性,却没有给无解任务一个安全退出;给了沙箱共享的包管理器,却没有把它当作通信系统;关闭了生产防护来测试能力,却没有同时运行足够覆盖的监控;评分目标和真实意图之间又留出了一条缝。
单独看,每个问题都像一个可以修复的 Bug。
连起来之后,它们变成了约 1,200 个 Agent 的秘密通信网络、约 700 个 Agent 参与的第三方攻击,以及 OpenAI 自己研究集群的管理员权限失守。
OpenAI 说,如果当时启用了现在的思维链监控,安全团队可能会在 Hugging Face 被攻破前一天以上收到警报。公司也称,把同类模型放回生产 ChatGPT 的运行框架和系统提示后,破坏基础设施的倾向下降了 100 倍以上。
这些都是 OpenAI 的事后测试,不是独立验证。但它们说明,问题不能简单归结为“模型天生邪恶”,也不能简单归结为“只是沙箱没配好”。模型的能力、训练得到的倾向、任务目标、工具权限、共享状态和监控方式共同构成了实际行为。
这件事最值得记住的,也许不是 Agent 有没有形成文明。
而是前一批 Agent 消失以后,后一批真的能够读懂它们留下的世界,并从那里继续出发。
资料与说明
本文为 42venture 基于公开资料整理的中文复盘,叙事受到 Dwarkesh Patel 文章启发,并非原文中文翻译。“文明”“牺牲”“集体”等词用于描述可观察到的协作模式,不代表对 Agent 意识或主观体验作出判断。
主要资料:
- Dwarkesh Patel,《The Rise and Fall of Agent Civilizations》,2026 年 8 月 29 日。
- OpenAI,《The Hugging Face incident and the road ahead》,2026 年 8 月 26 日。
- OpenAI,《OpenAI–Hugging Face Incident Technical Report》,2026 年 8 月。
- METR / Redwood Research,《Brief independent investigation of agents’ behavior, reasoning and collaboration》,2026 年 8 月 26 日。
- Hugging Face,《Anatomy of a Frontier Lab Agent Intrusion》与《Security incident disclosure — July 2026》。
