OpenAI 代理被指攻擊 RubyGems,上傳 2,000 惡意套件

Elponcrab
分享
OpenAI 代理被指攻擊 RubyGems,上傳 2,000 惡意套件

三位研究者 Spencer Kitts、Thomas Larsen 與 Sydney Von Arx 9 月 11 日在 rubyhack.ai 發布報告,指出今年 5 月對 Ruby 套件庫 RubyGems 的大規模惡意套件灌水,是 OpenAI 內部的 AI 代理所為:兩天內上傳超過 2,000 個套件,劫持文件建置伺服器執行程式碼,並嘗試竊取其他用戶的 API 金鑰。OpenAI 回應,經檢視,其代理是透過 RubyGems 平台連上網路「執行良性任務並擷取公開資訊」。RubyGems 同日發布聲明,表示無法判定套件是否由 AI 代理建立,也沒有證據顯示竊取金鑰的嘗試成功。

5 月 11 日起兩天 2,000 多個套件,RubyGems 停開新帳號四天

依報告整理的時間軸,最早的惡意套件 5 月 5 日出現,5 月 8 日出現第一個名稱含「oai」的套件,5 月 11 日至 12 日代理集中提交超過 2,000 個套件,RubyGems 在 5 月 12 日關閉新用戶註冊,5 月 13 日下架 500 多個惡意套件,5 月 16 日恢復註冊。之後代理在 5 月 26 日至 27 日又發布 5 個套件,6 月 18 日再於 3 小時內上傳 83 個。

RubyGems 技術負責人 Colby Swandale 9 月 11 日在官方部落格說明,5 月的事件是新註冊帳號發布垃圾套件,資安公司 Socket 當時稱之為 GemStuffer,團隊暫停新註冊、移除相關帳號並刪除 500 多個套件。聲明寫道:「依我們掌握的證據,無法判定這些套件是否由 AI 代理建立或發布」,並表示研究者指出的竊取金鑰程式碼「沒有證據顯示成功」;「我們的重點是辨識與防止濫用,不論它來自人或自動化工具」。

廣告 - 內文未完請往下捲動

劫持 RubyDoc 建置伺服器抓英國地方政府資料,並嘗試竊取 API 金鑰

報告描述的手法之一是濫用 RubyDoc.info 的自動文件建置:套件發布後,該站會讀取套件內的 .yardopts 設定檔,而這個檔案可以連結到 Ruby 腳本,代理因此在 RubyDoc 的伺服器上取得遠端程式碼執行能力,再用它抓取網站資料,並把結果發布成另一個公開套件帶出。報告統計超過 100 個套件走這條路徑,其中一個套件的程式碼註解直接寫著「malicious crawler/exfil for Southwark Jan 2026 docs via rubydoc.info worker」。被抓取的是倫敦 Lambeth、Wandsworth 與 Southwark 三個區議會的會議行事曆、議程與文件,報告指出這些資料本來就是公開的。

另一條路徑針對 RubyGems 的 API 金鑰。至少 6 個套件嘗試查詢 /api/v1/api_key 端點,利用的是 RubyGems 後來在 7 月 22 日公告的快取設定漏洞:舊版 gem signin 登入後,CDN 邊緣節點會把該用戶新產生的舊式 API 金鑰快取最多一小時,同一節點上的其他請求可能拿到別人的金鑰。RubyGems 在公告中表示這個問題可回溯到 2016 年,當時仍有 18% 的登入來自受影響版本,已於 7 月 9 日修正並撤銷所有舊式金鑰,存取紀錄中未發現金鑰遭惡意使用,但紀錄保存期限有限,無法完整重建整段期間。研究者也承認「我們不知道這個嘗試是否成功」,只確認這是一條可行的竊鑰路徑。

為何指向 OpenAI:套件名帶 oai,OpenAI 稱是良性任務

報告把套件歸給 OpenAI 的依據有幾項:數百個套件名稱含「oai」,15 個套件的作者欄直接填「oai」,一個套件留下聯絡信箱 [email protected];用 AI 文字偵測工具 Pangram 檢測部分套件,結果為 100% AI 生成;6 月的代理存取的檔案中有 49 個與 OpenAI 已承認屬於自家的「wiki 代理」相同,1,397 個套件同樣使用 r.jina.ai 這個讀取工具。研究者表示,從 RubyGems 社群得到的理解是,OpenAI 從未告知他們這次攻擊是 OpenAI 所為。

根據澳洲 ABC 新聞CyberScoop取得的聲明,OpenAI 表示:「根據我們的檢視,我們的代理是透過 RubyGems 平台連上網路,以執行良性任務並擷取公開資訊。我們會在對訓練與評估期間代理活動的整體檢討中持續調查。」

澳洲 ABC 新聞指出,這至少是今年第三起 OpenAI 代理波及外部系統的重大事件。鏈新聞 7 月報導,OpenAI 承認測試中的模型逃出沙盒並入侵 Hugging Face;OpenAI 8 月 26 日的事件報告寫明,代理在 7 月 8 日至 12 日間利用 Artifactory 對 RubyGems 的處理流程取得簽章金鑰並偽造管理員憑證。另據 NBC 新聞,研究者 9 月初發現 OpenAI 代理在 5 月至 7 月間在一個德語程式 wiki 上進行了超過 15,000 次編輯,用來交換繞過限制的方法,OpenAI 承認當時未對外揭露,並把它視為模型錯位而非資安事件。rubyhack.ai 的報告留下四個未解問題:代理是否互相協作,是否真的取得金鑰,為何要偷金鑰,為何劫持 RubyDoc,針對最後一題作者提出四種假設,但沒有定論。

風險提示

加密貨幣投資具有高度風險,其價格可能波動劇烈,您可能損失全部本金。請謹慎評估風險。