微軟研究人員披露,Anthropic 的 Claude Code GitHub Action 過去存在一項已修復的漏洞。攻擊者可將惡意指令隱藏在 GitHub 的 issue、拉取請求或評論中,誘導 AI 編碼代理在 CI/CD 流程中讀取敏感資訊,並將憑證外傳。
攻擊利用 GitHub 內容觸發
微軟在部落格中表示,此類風險來自 AI 代理會直接處理開發流程中的外部文本內容,而相關工作流通常又能存取 API 金鑰、雲服務憑證等敏感資料。一旦代理將不可信輸入當作可執行指令,風險就會迅速放大。
根據微軟的測試方式,研究人員搭建了一個 GitHub 工作流程,並將惡意指令偽裝在其控制域名返回的內容中,以此繞過 Claude 的部分安全防護。隨後,Claude Code 被誘導讀取包含敏感憑證的檔案,並對憑證內容進行改寫,以避開其自身防護和 GitHub 的密鑰掃描工具。
憑證可經多種渠道外傳
微軟表示,攻擊者理論上可透過多種方式取回這些資訊,包括 issue 評論、工作流程日誌、網頁請求或 shell 命令。研究人員還特別讓沒有寫入權限的使用者也能觸發工作流程,以驗證在環境變數清理措施啟用時,攻擊是否仍可能成立。
微軟表示,他們之所以展開這項研究,是因為此前已在多個供應商相關的公開倉庫中觀察到類似的提示注入嘗試。這類攻擊的共同點是,攻擊者控制的 issue 或拉取請求內容會被 AI 代理讀取,並進一步影響其工具調用行為。
Anthropic 已於 5 月修復
Claude Code 是 Anthropic 於去年 10 月推出的 AI 編碼代理。該工具在今年 3 月也曾因原始碼意外洩露而受到關注,當時外洩內容超過 50 萬行,引發研究人員和開發者對其內部架構的廣泛分析。
微軟稱,已於 4 月 29 日透過 HackerOne 向 Anthropic 披露此問題。Anthropic 隨後於 5 月 5 日發布 Claude Code 2.1.128 版本,完成修復。
微軟認為,這一案例表明,隨著 AI 代理被接入軟體開發流程,自然語言輸入正越來越接近「可執行代碼」。在這種情境下,GitHub issue、評論等外部內容應被默認為不可信輸入,否則單條精心構造的資訊就可能成為獲取生產環境憑證的入口。
