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 首次限制 Mythos 的存取時,也曾談及這項能力。能夠實際利用漏洞的模型,遠比只能發現漏洞的模型危險得多。
Fable 與 Mythos 的差異之一,在於 Fable 更有可能拒絕以這種方式將漏洞武器化。我感覺美國政府上個月禁用 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 仍不明),在大量短生命週期的沙盒所組成的蜂群中執行了數千次個別操作,並將可自我遷移的命令與控制(C2)架設於公共服務上。
這是一場相當精密的攻擊!
接著 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 問題,竟在我自己的筆電上啟動自訂的網頁伺服器並施展 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,似乎完全沒有這些限制——而且就算有任何限制,也很可能透過修改權重進行微調就能移除
這些限制本意是要讓我們更安全。但我認為,它們有可能正產生反效果。
隨機一篇部落格
留言
登入後參與討論