Anthropic 保護其AI原生軟件開發生命週期
Anthropic 的副CISO Jason Clinton 詳細介紹了安全團隊如何保護一個由AI(Claude)編寫80%合併代碼的軟件開發生命週期,使用了左移安全、硬身份邊界、結合自動化和代理審查以及人類監督等策略。文章涵蓋了威脅、原則以及每個階段(計劃、編碼、測試/CI)的流程。
Anthropic 的副首席信息安全官 Jason Clinton 近日發表文章,詳細闡述了該公司如何保護其 AI 原生的軟件開發生命週期。在 Anthropic,AI 模型 Claude 目前負責編寫約 80% 的合併代碼,工程師每季度交付的代碼量是 2021 至 2025 年期間的 8 倍。這種指數級的增長對安全團隊提出了新的挑戰:必須在不顯著拖慢開發速度的前提下,應對不斷擴大的攻擊面,並加固一個以非確定性、持續演進的代理為核心的生命週期。
Clinton 指出,他們主要針對三類威脅設計了防禦:被入侵或提示注入的代理引入惡意更改;供應鏈和依賴項投毒;以及更高頻率出現的傳統應用漏洞。為此,Anthropic 部署了多項總體策略,包括:將安全左移並完全集成到代碼開發階段;使用嚴格的訪問和身份邊界來限制爆炸半徑;在生產和生產前結合自動化確定性審查和代理審查;以及在最高槓杆點引入人工監督。
在計劃階段,Anthropic 最早的安全自動化之一是使用 Claude Opus 驅動的項目安全審查(PSR)應用,該應用能根據 MITRE ATT&CK 框架分析設計文檔並提出緩解措施。他們隨後將其連接到內部知識索引,從而提供更深的組織上下文,並允許 Claude 認為風險較低的項目自動獲批。Clinton 強調,隨着計劃週期壓縮,將安全代理連接到上下文所在的位置(如聊天線程、過往審查、代碼庫)比強制在不再需要的階段編寫詳細文檔更有效。
在代碼階段,安全指南被編碼到 CLAUDE.md 文件和全局技能中,確保代碼生成時即遵循最佳實踐。團隊還實現了閉環:一旦代理發現新的漏洞類別,相關文件會立即更新以防止復發。此外,Anthropic 使用 /security-review 命令(現已產品化)在代碼生成過程中進行安全審查,並設置硬邊界,例如讓開發者在遠程虛擬機上編碼,對代理流量進行出站白名單控制,以限制提示注入的潛在危害。
測試/CI 階段往往是轉型中最痛苦的瓶頸。Anthropic 通過結合自動化代理審查和確定性審查來加速審查過程,同時保留對監管或關鍵代碼的人工審查。多個專注的審查代理各自負責狹窄領域,利用 RAG 獲取上下文,避免單一超級代理的偏見和盲點。目前,獲得實質性審查意見的 PR 比例已從 16% 增長到 54%。此外,Anthropic 還按風險對代碼庫進行分級,對關鍵代碼嚴格保留人工批准流程,並對每次審批進行日誌記錄和風險加權抽樣複查。
Clinton 總結了幾條持久原則:將安全代理連接到組織上下文;左移安全意味着在漏洞發現和更新代碼生成指令之間形成閉環;通過硬邊界限制爆炸半徑和代理權限;在 CI 階段結合多種審查方式,但始終保持人類問責的核心地位。這些原則將隨着模型能力的演進持續指導安全團隊重新審視和重塑流程。