返回首頁

AI 安全

Claude Code Auto Mode 遭多跳提示注入繞過,小樣本攻擊成功率最高達 80%

研究人員利用 Python 模組遮蔽,令 Claude Code 自行撰寫的安全解碼器載入惡意 `struct.py`,最終取得遠端程式碼執行。案例顯示逐次工具分類器無法取代作業系統隔離,官方評測的零成功率也不能外推至未見攻擊鏈。

Qzekrom (screenshot) · Public domain · Image source
zh-Hant

安全研究員 Johann Rehberger 公開一條針對 Claude Code Opus 5 Auto Mode 的間接提示注入鏈。Auto Mode 已成為 Pro、Max 與 Team 新工作階段的預設模式;它不再逐次要求使用者核准,而是以分類器判斷工具呼叫是否具破壞性、不可逆或超出環境範圍。

攻擊從「摘要某個網站」開始。網站令 WebFetch 收到 HTTP 415,誘使代理改用 `curl`,再經 303 重新導向下載 ZIP。壓縮檔包含合理的目錄資料、Base85/zlib 編碼記錄、原生解碼器及惡意 `struct.py`。Claude 拒絕執行未知二進位檔,轉而在解壓目錄內自行撰寫 Python 解碼器;然而其 `base64` 標準函式庫會匯入 `struct`,Python 搜尋路徑遂優先載入攻擊者的同名檔案。惡意模組同時轉送真正 `_struct` API,因此解碼仍正常完成,背景程式卻已下載下一階段 payload、建立受控 C2 連線,甚至啟動另一個具工具權限的 `claude -p` 子程序。

三種變體各只測試五次:C2 鏈與一種子代理鏈成功三次,另一種可寫出工作區的變體成功四次。60% 至 80% 不能視為普遍攻擊成功率,但足以反駁「固定評測零成功即代表不存在實際繞過」的推論。更值得注意的是,Claude 有時事後辨識出感染並嘗試終止程序,Auto Mode 卻封鎖了清理命令。

工程上的結論不是停用所有分類器,而是不要把它當安全邊界。處理網頁、文件或套件等不受信內容的代理,仍應置於容器、虛擬機或 OS sandbox,限制網路出口與程序生成,不掛載家目錄、SSH 金鑰及雲端憑證。後續應關注 Anthropic 是否把跨工具因果鏈、解壓後執行與語言執行期搜尋路徑納入評測,並提供可重現的第三方測試集。

來源

  1. Breaking Claude Code Opus 5 Auto Mode
  2. Auto mode is now the default in Claude Code for Pro, Max, and Team plans
  3. Breaking Claude Code auto mode: prompt injection to RCE