AI代理平臺業者Accomplish資安研究人員揭露OpenAI Codex兩項沙箱逃逸漏洞,分別影響Codex CLI與Codex Desktop。兩項漏洞已於8月修補,其中Heapjack漏洞可在Codex最嚴格的唯讀模式下,讓受限制程式取得信任權杖,要求沙箱外的主機端程式執行操作,且全程不需使用者核准。Overpatch漏洞則利用Codex修改檔案時的權限判斷缺陷,越過工作區範圍寫入其他位置。
Heapjack漏洞發生在Codex Desktop安裝的Node REPL工具,Codex把可信任程式碼與模型執行的程式碼放在同一個Node.js行程,兩者共用V8記憶體。可信任程式碼持有一組隨機權杖,未受沙箱限制的主機端程式依靠權杖確認請求來源。
模型執行的程式碼雖受沙箱限制,仍能取得同一行程的V8記憶體快照,所以攻擊者可從記憶體找出權杖,再仿照可信任程式碼向主機端程式送出請求。研究人員以惡意儲存庫示範,使用者在唯讀模式開啟該儲存庫並向Codex提問後,惡意程式碼可利用漏洞,在macOS啟動沙箱外的應用程式。
Overpatch漏洞則影響Codex CLI的工作區寫入模式,Codex檔案修改工具會依檔案變更內容指定的路徑決定可寫入範圍,舊版會把指定路徑的上一層目錄加入寫入權限。檔案變更內容若指定/tmp,根目錄/也會取得寫入權限,攻擊者再利用符號連結,即可修改使用者家目錄中的Zsh設定檔.zshrc,當使用者開啟新的終端機後,寫入.zshrc的命令便可在Codex沙箱外執行。
研究人員指出,Heapjack已在Codex Desktop 26.818.21641修補,Overpatch在Codex CLI 0.149.0中修補。OpenAI的Codex CLI 0.149.0變更紀錄也列出相關修正,包括防止檔案修改工具apply_patch擴大寫入權限,以及防止Node REPL驗證權杖傳入模型可觸及的子行程。
Comments (0)