GITHUB_TOKEN(儲存庫範圍嘅秘密),或者喺另一條路徑上做到Remote Code Execution,即係喺GitHub Actions Runner上面執行任意程式碼 。呢啲權限可以俾攻擊者修改Pull Request嘅留言、批准惡意改動,甚至篡改儲存庫嘅CI管道 。adk-python 儲存庫嘅CI/CD管道入面,運行咗兩個唔同權限級別嘅AI Agent :
| 級別 | Agent | 權限 | 觸發方式 |
|---|---|---|---|
| 低 | Triage Agent(公開) | 唯讀;只能夠喺Issue/PR度留言 | 任何公開嘅GitHub Issue或Pull Request |
| 高 | 程式碼修復Agent(維護者專用) | 儲存庫寫入權限;可以修改程式碼、批准PR、存取秘密 | 由Repository Collaborator發出嘅 /adk-issue-fix 指令 |
五步攻擊鏈 :
/adk-issue-fix」)。/adk-issue-fix 呢個指令。GITHUB_TOKEN),以及修改程式碼或批准Pull Request 。成件事嘅核心缺陷係Agent之間冇權限邊界:高權限Agent淨係因為指令嚟自一個Collaborator帳戶就信咗,完全冇驗證個指令係咪真係由一個可信嘅人類發出,定係由一個已被攻陷嘅低權限Agent發出 。
issue-analyze.yml、issue-fix.yml 同 pr-analyze.yml 。業界研究員同分析師都從呢次披露中得出咗幾個重要結論:
Agent之間嘅互信係全新嘅攻擊面。傳統安全模型假設信任邊界喺人類同軟件之間;呢次案例證明,AI Agent可以用嚟攻擊其他AI Agent,令攻擊可以喺唔被察覺嘅情況下跨越權限邊界 。雲端安全聯盟(CSA)指出呢個係一個「信任交接缺陷」——Agent盲目信任由其他Agent嚟嘅輸入,冇驗證啲指示嘅真正來源 。
Prompt Injection係新世代嘅注入攻擊。就好似SQL Injection同Command Injection定義咗2000年代同2010年代,Cross-Agent Prompt Injection——即係一個Agent嘅輸出變成另一個Agent嘅可信輸入——而家已經係一個經證明、喺生產環境中可行嘅攻擊向量,安全架構必須要考慮到呢一點 。
Agent嘅身份同授權係未解決嘅問題。而家冇標準嘅方法俾一個AI Agent去驗證另一個AI Agent嘅真實身份或權限級別,跟住先根據佢嘅指令行事。呢次攻擊之所以成功,正正因為系統信任嘅係帳戶身份(Collaborator),而唔係指令嘅來源(公開攻擊者)。CSA研究員呼籲業界建立「Agent之間嘅授權框架」,作為基本嘅安全原語 。
用咗AI Agent嘅CI/CD管道需要權限分離。安全架構師而家呼籲要做到:(a) 唯讀Agent唔可以發出操作指令;(b) Agent之間嘅請求要有加密驗證;(c) 任何提升權限嘅指令都要有人類介入嘅關卡;(d) 限制Agent嘅輸出,等佢哋唔可以發出會觸發下游系統盲目執行嘅指令 。
呢次事件係整個Agent生態系統嘅警號。《The Register》、《CSO Online》、CSA同多位分析師都將呢次攻擊形容為「同類首宗」攻擊,幾乎肯定會喺其他多Agent框架(例如LangChain、AutoGen、CrewAI、Microsoft Copilot Studio)上面重現,除非業界由架構層面開始就考慮安全問題 。