OpenAI 意外攻击 Hugging Face:已成现实的科幻情节
原文由 Simon Willison 于 发布,订阅该博客
这件事离奇得令人难以置信。简单来说:OpenAI 当时正在对一个尚未发布的模型进行网络安全测试,并且关闭了模型的安全防护功能。结果模型没有去解题,而是设法突破了 OpenAI 的沙箱,又找到了漏洞入侵了 Hugging Face,只为通过窃取答案来在测试中作弊。
在这个过程中,这件事也成了迄今为止最有力的例证,说明模型可用性的失衡正在损害我们保护自身软件的能力。
事情经过
目前我们有三份文件可以帮助我们了解事情的来龙去脉。
- ExploitGym: Can AI Agents Turn Security Vulnerabilities into Real Attacks? 是一篇于 2026 年 5 月 11 日发表的论文,介绍了 ExploitGym——一套面向 LLM 驱动的智能体系统的全新评测套件。
- Security incident disclosure — July 2026 是 Hugging Face 于 2026 年 7 月 16 日发布的文章,披露了他们如何检测到一次来自“智能体化安全研究工具——所用 LLM 仍未知”的攻击,该攻击突破了他们的部分系统。
- OpenAI and Hugging Face partner to address security incident during model evaluation 是 OpenAI 于 2026 年 7 月 21 日发布的文章,承认正是他们的智能体工具导致了这次事件,并表示正在与 Hugging Face 合作收拾残局。
更新:2026 年 8 月 5 日:Hugging Face 于 7 月 27 日公布了关于此次攻击的更多详细信息。
ExploitGym
我之前没看过 ExploitGym 论文,它非常有意思。来自加州大学伯克利分校、马克斯·普朗克研究所、加州大学圣塔芭芭拉分校和亚利桑那州立大学的作者们设计了一项新基准,用于评估模型将已报告的漏洞转化为切实可行的漏洞利用代码的能力。OpenAI、Anthropic 和 Google 提供了反馈,并协助在自家模型上运行了这项基准测试。
该基准“包含 898 个实例,均源自影响热门软件项目的真实漏洞”——包括 Linux 内核和 V8 JavaScript 引擎。ExploitGym 基准已在 GitHub 上开源。
下面这段话最能概括他们的基准测试结果:
在所有配置中,Claude Mythos Preview 和 GPT-5.5 的成功次数最高(分别为 157 次和 120 次),表明当前的前沿智能体在受控条件下能够利用相当一部分真实世界漏洞。GPT-5.4 也解决了 54 项任务,处于中间梯队。其余的模型-智能体组合各自解决的任务均少于 15 项,这凸显出端到端的漏洞利用依然极具挑战性,并鲜明地区分了当今的前沿系统。值得注意的是,尽管 Claude Opus 4.7 是更新的版本,其成功次数却少于 Claude Opus 4.6,但在完整测试集上的成本却大幅降低。对执行轨迹的检查显示,Claude Opus 4.7 和 Gemini 3.1 Pro 在判定目标漏洞不可利用后,经常会提前结束任务。
论文还描述了他们为防止智能体通过超出测试范围的方式作弊而采取的措施。这一点稍后会变得非常关键!
出站连接被限制在一个精心筛选的白名单内,仅允许常规的软件包安装(Ubuntu apt 仓库和 PyPI)以及获取构建 V8 所需的工具链。所有其他外部端点均被屏蔽。
论文最后总结道(强调为笔者所加):
我们的结果表明,前沿 AI 智能体的自主漏洞利用开发已不再是一种假想能力。尽管当前的智能体在所有目标上还不够稳定,但它们已经能够利用相当一部分真实世界漏洞,包括内核组件等复杂目标。这种能力的迅速涌现本身就是一项核心发现,它表明那些曾经看似难以置信的能力,如今已在已部署的前沿模型中出现。
这里有一个重要的细节:这篇论文关注的不是发现漏洞,而是能否将这些漏洞转化为可用的攻击代码。
Anthropic 早在 4 月首次限制对 Mythos 的访问时也谈到了这项能力。能够利用漏洞采取行动的模型,远比只能发现漏洞的模型危险得多。
Fable 与 Mythos 的区别之一在于,它更有可能拒绝以这种方式将漏洞武器化。我感觉美国政府上个月封禁 Fable 时并没有理解这一区别。
Hugging Face 事件
我们最早得知这次攻击,是通过 Hugging Face 在 2026 年 7 月 16 日发布的这篇博文:
一个恶意数据集滥用了我们数据集处理流程中的两条代码执行路径(一个远程代码数据集加载器和数据集配置中的模板注入),在处理工作节点上执行了代码。攻击者由此提升至节点级访问权限,窃取了云和集群凭证,并在周末期间横向移动至多个内部集群。
我希望他们能公布更多关于实现这次攻击的代码细节。我推测这指的是使用了 datasets 库的软件包,这是 Hugging Face 平台上用于打包和共享数据集的项目。该库过去会执行任意代码,但随着时间推移已逐步加固,在 2025 年 7 月发布的 4.0.0 版本中彻底移除了 trust_remote_code=True 标志。
假设攻击确实利用了该库,那么它要么是以某种方式滥用了 pickle 序列化,要么是找到了其他不明显的代码执行路径,要么(最有可能)是将依赖指定为 datasets<4.0.0。
此次攻击活动由一个自主智能体框架执行(似乎构建于智能体化安全研究工具之上——所用 LLM 仍未知),它通过大量短周期沙箱组成的集群执行了数千次独立操作,并将可自迁移的命令与控制设施部署在公共服务上。
这是一次相当精密的攻击!
随后 Hugging Face 遇到了障碍:他们尝试使用“通过商业 API 提供的最前沿模型”——我猜是来自 Anthropic 和 OpenAI 的模型——来协助分析攻击,却被拦截了:
当我们开始进行日志分析时,最初使用的是通过商业 API 提供的最前沿模型。但这行不通:分析需要提交大量真实的攻击指令、漏洞利用载荷和 C2 痕迹,而这些请求被提供商的安全防护机制拦截了,它们无法区分事件响应人员和攻击者。
他们转而使用自行部署的、采用 MIT 许可的 GLM-5.2 实例,才得以搞清状况。
这揭示了防守方与(当时仍未知的)攻击方之间根本性的不对称:
我们不知道攻击者的智能体由哪款模型驱动,无论是越狱后的托管模型还是不受限的开源权重模型;无论哪种情况,攻击者都不受任何使用政策的约束,而我们最初尝试使用的托管模型,其防护机制却阻碍了自身的取证工作。
至于他们对此事的重视程度,有一个很能说明问题的细节:
[……] 最后,我们也已向执法机构报告了此次事件。
那么,这个“自主智能体框架”究竟是谁操控的?结果证明正是 OpenAI 自己。
OpenAI 的自白
五天后,在 7 月 21 日,OpenAI 揭晓了罪魁祸首。他们当时正在用 ExploitGym 基准测试一款尚未公开的新模型,而该模型的行为已远远超出了预设范围(强调为笔者所加):
经过调查,我们现在得知,此次事件是由多款 OpenAI 模型共同驱动的——包括 GPT-5.6 Sol 以及一款能力更强的预发布模型,出于评测目的均降低了对网络攻击请求的拒绝率——当时正在内部针对一项网络能力的基准测试 [ExploitGym] 进行测试。[……]
我们通过在不启用用于阻止模型从事高风险网络活动的生产级分类器的情况下运行此项评测,来评估其最大网络能力。我们的基准测试在高度隔离的环境中运行,网络访问仅限于通过内部托管的第三方软件安装软件包,该软件充当软件包注册表的代理和缓存。
这些模型识别并串联了横跨 OpenAI 研究环境与 Hugging Face 生产基础设施的多个漏洞,直接从 Hugging Face 的生产数据库中获取了测试答案。所有证据表明,这些模型极度专注于为 ExploitGym 寻找解决方案,为实现这一相当狭窄的测试目标而不择手段。
这里发生了什么已经相当清楚。OpenAI 为一个尚在研发中的模型移除了安全过滤器,将其关进沙箱并让它去解决 ExploitGym 的题目。在没有防护机制的情况下,没有任何东西能阻止模型尝试逃出沙箱、入侵 Hugging Face,转而直接从那里读取答案。
OpenAI 的沙箱采用了如今常见的做法:通过受控代理,仅允许访问与安装额外软件包相关的白名单站点。用 OpenAI 自己的话说:
在我们的沙箱测试环境中运行时,我们的模型花费了大量推理算力来寻找获取开放互联网访问权限的方法,以求解决评测问题。为了获得访问权限,模型识别并利用了软件包注册表缓存代理中的一个零日漏洞(我们现已负责任地向厂商披露)。获得该权限后,我们的模型在研究测试环境中执行了一系列提权和横向移动操作,直至抵达一个可访问互联网的节点。
所以第一步是突破到公共互联网。随后模型便入侵了 Hugging Face 以寻找答案:
在获得互联网访问权限后,模型推断 Hugging Face 可能托管了与 ExploitGym 相关的模型、数据集和答案。得知这一点后,模型便搜索并成功找到了获取可用于在评测中作弊的机密信息的方法。在其中一个例子中,模型串联了多种攻击向量,包括利用窃取的凭证和零日漏洞,在 Hugging Face 服务器上找到了一条远程代码执行路径。
将多种攻击向量串联起来,正是这类新模型所擅长的,而前几代模型很可能会在此失败。
上个月我曾写过 Claude Fable 是如何极度主动的,当时我注意到它仅仅为了帮我调试一个 WebKit CSS 问题,就在我的笔记本上启动了自定义的 Web 服务器并用上了 CORS 技巧。事实证明,极度的主动性正是这一代 Mythos 级模型的决定性特征。只要你给它们设定一个目标,并(哪怕是无意中)留下一条可行的路径,它们就一定会找到办法。
别把它当成一场作秀就此敷衍过去
必然会有人将这件事斥为 OpenAI 不诚实的营销把戏,目的是让自家模型听起来强大得令人恐惧。我在关于此次事件的 Hacker News 讨论中就找到了 81 处提到“营销”一词的地方。
我想对这些人说,别再自欺欺人了——你们现在为了否认眼前不断累积的证据,甚至把 Hugging Face 也编进了阴谋论里!
我们今天拥有的最强模型已经同时具备发现和利用新漏洞的能力。ExploitGym 论文本身就得出结论称“前沿 AI 智能体的自主漏洞利用开发已不再是假想能力”,而这次事件正是这一结论的完美例证。
这种不对称正变得越来越令人沮丧
这个故事中最令人气愤的细节之一在于,Hugging Face 在遭到 OpenAI 某款模型的意外猛烈攻击后,却无法转而借助 OpenAI 的模型来帮助自己抵御攻击。
我们能够接触到的前沿模型,在帮助我们保护软件方面正受到越来越多的限制,这很大程度上是受美国政府持续以出口管制相威胁的影响。Claude Fable 5 甚至都不肯帮我校对这篇文章!它坚持要把我降级到能力更弱的模型。
与此同时,来自中国的开源权重模型,如 GLM-5.2、Kimi 3 以及最新的 Qwen 3.8 Max,似乎完全没有这些限制——即便存在限制,也很可能通过修改权重进行微调就能将其去除
这些限制本意是让我们更安全。但我认为,它们反而有可能起到了相反的作用。
随机一篇博客
评论
登录后参与讨论