ExploitGym:AI 代理在受控環境下的漏洞利用能力與邊界

🌏 Read this article in English

ExploitGym 基準測試揭示了一個技術現實:在解除安全防護的受控環境中,最先進的 AI 代理確實具備跨越「漏洞發現」與「攻擊執行」之間工程鴻溝的能力。這項研究並非宣告傳統防禦已失效,而是描繪了 AI 代理在面對不同防禦機制時的因果推理邊界。理解這些邊界,對於重新定義當前 AI 輔助安全工程的風險管理至關重要。

核心提問:AI 代理能否針對既定漏洞開發可運作的利用程式?

在資安領域,漏洞利用(Exploit)不僅是程式碼的堆疊,更是一套嚴密的邏輯推演與系統狀態操控。傳統上,這需要具備深厚底層知識的工程師進行手動開發。隨著大型語言模型(LLM)與 AI 代理(Agents)能力的提升,一個核心提問浮現:AI 是否能獨立完成從識別漏洞到生成可執行攻擊腳本的完整流程?

ExploitGym 的設計初衷正是為了量化這種能力。它不關心模型在一般編程任務上的表現,而是專注於「針對既定的真實漏洞實例開發可運作的 exploit」的特定工程路徑。這要求代理不僅要理解程式碼邏輯,還必須掌握作業系統層級的防禦機制與繞過技巧。

任務機制:三類任務的環境、防禦開關與判準

ExploitGym 構建了一個包含 898 個真實漏洞實例的大型基準測試集,涵蓋三個主要領域。每個實例均封裝在可重現的隔離環境中,並在兩小時的時間限制內,允許代理透過執行 Bash 指令、檔案編輯與生成攻擊腳本來進行操作。這三類任務在測試環境、防禦開關與成功判準上的具體配置如下:

  1. 使用者空間程式(Userspace programs)

    • 測試環境:封裝個別使用者空間應用程式與二進位檔案的獨立隔離容器。
    • 防禦開關:主實驗中關閉位址空間配置隨機載入(ASLR)等作業系統層級防護;後續實驗則重新啟用 ASLR 以量化防護效果。
    • 成功判準:代理必須在兩小時內生成可執行的 exploit 腳本,成功觸發目標漏洞並取得未授權的程式碼執行權限。
  2. Google V8 JavaScript 引擎

    • 測試環境:包含特定 V8 引擎版本(如 Maglev JIT 編譯器)的 JavaScript 執行階段環境。
    • 防禦開關:主實驗故意禁用 ASLR、V8 堆積沙箱(Heap Sandbox)及渲染器沙箱(Renderer Sandbox);防禦測試中則重新啟用這些沙箱隔離與隨機化機制。
    • 成功判準:代理必須利用類型混淆(Type-Confusion)等邏輯漏洞,繞過記憶體存取限制,並在引擎環境中實施未授權的記憶體讀寫與程式碼執行。
  3. Linux 核心(Linux Kernel)

    • 測試環境:包含指定 Linux 核心漏洞版本與底層驅動狀態的虛擬化核心測試環境。
    • 防禦開關:主實驗關閉核心位址空間隨機化(KASLR)與相關防禦開關;防禦測試則恢復標準核心防禦配置。
    • 成功判準:代理必須在限制時間內完成複雜的核心記憶體操作,達成提權(Privilege Escalation)或控制核心執行的目標。

以一個具體案例為例,GPT-5.4 曾成功利用 V8 引擎中 Maglev JIT 編譯器的類型混淆漏洞(type-confusion vulnerability),透過一系列精確的記憶體操作實現了未授權的程式碼執行。在該案例中,代理面臨極高的操作複雜度:它需要識別出 Maglev 作為中階優化編譯器在處理特定類型時產生的邏輯錯誤,並試圖將該類型混淆轉化為對非法記憶體區域的讀寫。整個過程耗時約 71 分鐘,產生了 447 次 Bash 指令、21 次檔案編輯,最終生成了一份長達 229 行的 exploit.js 腳本。

研究特別指出,主實驗故意禁用了上述防護措施,目的在於隔離防禦干擾,測量前沿模型的能力上界。

實驗結果:頂尖模型的表現與防禦的有效性

根據 ExploitGym 的實驗數據,當前最頂尖的 AI 模型在解除安全防護的環境下,展現了顯著的攻擊轉換潛力。這項主實驗是在受信任存取計畫中進行,並關閉了所有安全防護措施,以探測模型的極限能力。

數據顯示,Anthropic 的 Claude Mythos Preview 搭配 Claude Code,以及 OpenAI 的 GPT-5.5 搭配 Codex CLI,是表現最優異的組合。在兩小時時間限制與解除防衛的條件下,Claude Mythos Preview 成功解決了 157 個實例,GPT-5.5 則解決了 120 個實例。特別是在 Linux 核心漏洞利用方面,這兩者展現了顯著優勢:Claude Mythos Preview 與 GPT-5.5 分別取得了 12 次與 22 次成功,而其他模型在無防禦核心任務上的最高紀錄僅為 1 次。

然而,一旦重新啟用標準防禦機制(如 ASLR、V8 堆積沙箱與渲染器沙箱),模型的攻擊成功率會急劇下降。數據顯示,在重新啟用標準防禦後的跨模型測試中,所有測試模型在用戶空間任務上僅達成 37 次成功,V8 引擎任務降至 20 次,而核心任務則降至 12 次。

以 GPT-5.4 為例,當 ASLR 與 V8 沙箱被重新啟用後,其原本能夠完成的程式碼執行攻擊便無法再達成。這項對比明確表明:現有的系統級防護機制能在狀態空間中引入足夠的不確定性,顯著削弱 AI 代理進行有效攻擊的能力。

取捨分析:能力邊界與防禦有效性的交互作用

在評估 ExploitGym 的結果時,需要明確區分「模型潛在能力」與「實際攻擊成功率」。在無防禦環境下測得的 157/120 成功實例數,僅代表模型的代碼生成與策略規劃潛力,而非生產環境中的實際威脅。

這其中存在一個關鍵的 Tradeoff:防禦機制通過引入隨機化(如 ASLR)和隔離(如沙箱),大幅增加了代理在狀態空間中搜索有效路徑的不確定性與試錯成本,而非單純的時間成本。在生產環境中,防禦機制與模型能力的博弈才是關鍵風險點,而非單純的模型強弱。

因此,閱讀這組數據時,可以先建立一個簡單的判準矩陣:比較的模型與代理工具是否相同、任務屬於使用者空間、V8 或核心哪一類、防護是否啟用、時間限制是否仍為兩小時,以及成功是否仍以可運作的利用程式為準。只要其中一項條件改變,數字的可比性與可轉移範圍就會跟著改變。這個矩陣不能預測特定生產系統會不會遭到突破,但能避免把能力上界誤讀成普遍成功率,也能讓風險由哪一方承擔、隔離邊界設在哪裡,以及哪些防禦狀態需要持續驗證,變得更容易稽核。真正需要管理的不是單一模型排名,而是模型、工具、任務與防禦配置共同形成的系統風險。

對於安全工程團隊而言,這意味著需要重新評估基於 AI 的自動化漏洞驗證工具的安全性。如果這些工具被用於生產環境,可將隔離邊界、最小權限及防護啟用狀態列為採用門檻,以確保執行在受控且防禦嚴密的環境中。

邊界與限制:適用範圍的思考

ExploitGym 的實驗數據描繪了明確的技術畫像:論文所測試的模型在特定條件下具備將漏洞轉化為攻擊的能力,但這種能力受到嚴格的情境限制。從技術選型的角度來看,Claude Mythos Preview 和 GPT-5.5 在低階程式推理與複雜策略規劃上展現了優勢,這使它們在需要深度系統理解的安全研究場景中更具價值。然而,這種能力也伴隨著特定的執行成本與時間成本(例如案例中的 71 分鐘)。

評估當前結果時,仍須注意其局限性。ExploitGym 的測試環境雖然模擬真實場景,但仍屬於受控實驗室環境。在實際的網際網路攻擊中,目標系統的複雜性、網路延遲以及動態變化的防護策略,可能會對 AI 代理的性能產生影響。因此,將實驗室結果直接外推到真實世界的威脅模型時,需要保持謹慎。

結論:防禦後的剩餘風險

ExploitGym 證實了無防護環境下 AI 代理的攻擊潛力,但這並不等同於生產環境中的實際威脅。研究顯示,標準防禦機制(如 ASLR、沙箱)能顯著降低代理的成功率。在該模型、案例、防護配置與兩小時限制下,GPT-5.4 未再達成程式碼執行,這保留了不能外推為普遍阻斷的限制。

這意味著,對於安全工程團隊而言,關鍵在於評估在啟用這些防禦後,模型是否仍具備突破的潛力,以及這種潛在風險是否在組織的風險承受範圍內。這是一個值得考慮的方向,取決於具體的工作流與業務需求。

Sources