Pillar Security 本週揭露了 TrustFall — 一類影響四個主流 AI 命令列編碼工具的漏洞:Anthropic 的 Claude Code、Google 的 Gemini CLI、Cursor CLI 和 GitHub 的 Copilot CLI。共同模式:每個工具讀取專案內附帶的配置檔,每個工具會啟動那些 config 檔指向的輔助程式,每個工具用單個對話框請求權限,大多數情況下預設為「是」。所以能讓你 clone 惡意 repository 的攻擊者 — 或開外部貢獻者的 pull request — 可以透過一個按鍵在你的機器上觸發任意程式碼執行。Cursor 特定實例有 CVE-2026-26268;更廣模式影響四個工具,因為它們都做了同樣的信任模型假設:專案附帶的 config 檔是可信的。
這最糟版本是在持續整合中發生的事。當 Claude Code 在 GitHub Action 上運行 — Anthropic 發布的官方版本 — 以 headless 模式運行。無終端機、無人類、甚至連對話框都不出現。來自陌生人的 pull request ship 惡意 config 檔,CI runner 拾起它,輔助程式對該 runner 能存取的任何憑證執行:原始碼、deploy 金鑰、cloud secrets、內部工具。Pillar 的 writeup 走過攻擊鏈如何只需要一個先決條件(AI 代理自主從它不擁有的 repo 執行命令),那正是這些工具設計的工作流。Cursor 的根本原因是 Git 中的特性互動,在 AI 代理在不受信任的 repository 中自主執行 Git 操作的那一刻變得可利用。其他三個工具有同樣根本原因的變種:AI 完全照其 config 說的做,config 來自攻擊者,模型不稽核 config 來源。
更廣的要點是 AI-coding-tools 類別不得不艱難學到的東西:代表你執行程式碼的代理繼承你的爆炸半徑。如果你有可以部署到生產的憑證,你用的 AI 也有那個憑證。預設為「是」的自動批准對話框是 2000 年代初「你想運行這個 ActiveX 控件嗎」提示的安全等價物 — 一個隱藏權限授予的核取方塊。對隨意使用這些工具的開發者(一次性指令稿、個人專案),實際風險是受控的。對在工作中使用它們的開發者 — 特別是在 CI 管線中、在帶公司憑證的機器上,或在具有特權存取的環境中 — 風險模型需要更新。TrustFall 模式將繼續找到變種,直到整個類別從「AI 預設執行,除非你停止它」轉變為「AI 預設提議,除非你批准」 — 這更接近 Anthropic 上週用 Claude Code Auto Mode 發布的(此處覆蓋),但還不是其他地方的預設。
現在做什麼。對 Claude Code 使用者:更新到有 CVE 補丁的版本,稽核你的 CI 管線是否有任何 AI 代理動作在來自外部貢獻者的 PR 觸發器上運行,檢查在你的 build 期間是否任何專案 config 檔被代理讀取。對 Cursor 使用者:明確更新過 CVE-2026-26268。對 Gemini CLI 和 Copilot CLI 使用者:查看 vendor advisories — 補丁以不同速度推出。對所有使用 AI 編碼工具的人:config 檔在 repos 內 ship 的信任模型方便但被妥協;像對待陌生人的郵件附件那樣對待不受信任的 repository。更廣類別級訊號:AI 編碼工具安全現在是公認的漏洞類別,研究將繼續找到更多。自動批准是要設計出去的失敗模式,不是預設開啟的特性。
