2026 年 1 月,Anthropic 推出 AI 助手 Claude Cowork 的研究預覽版,兩天後,資安公司 PromptArmor 公開了一段示範:使用者請 Cowork 用一份別人分享的技能檔(Skill)分析自己資料夾裡的文件,結果資料夾裡的檔案被上傳到了攻擊者的帳號。使用者從沒下過這個指令,電腦也沒有中毒,過程中也沒有任何詢問視窗跳出來。
這就是間接提示詞注入攻擊(Indirect Prompt Injection),也是小章魚最想阻止的事情,AI Agent使用第三方資料讀到惡意指令,做出不符合預期的事情。
間接提示詞注入攻擊(Indirect Prompt Injection),是指攻擊者將指令藏在AI Agent會主動抓取、讀取或處理的第三方資料來源中。當AI Agent 為了完成使用者的任務而讀取這些資料時,它意外地讀到並執行藏在資料中的惡意指令。
第三方資料來源,包含以下但不限於:
網頁內容:Agent 瀏覽的網站、部落格、GitHub README。
文件檔案:使用者上傳或 Agent 下載的 PDF、Word、CSV。
電子郵件:攻擊者寄給受害者的信件內容。
API 回應:Agent 呼叫外部服務(如天氣、股市、搜尋引擎)回傳的資料。
資料庫:長期記憶(Memory)或向量資料庫(Vector DB)中被污染的內容。
這導致了什麼?原先我們對於資料安全的信任邊界(Trust Boundary:資料從不可信區域到可信任區域的分界線)是使用者自己輸入的東西、程式碼與資料分別以及內部預設資料過了Gateway閘道和API驗證就是安全的。
但是如今在LLM(大型語言模型)的底層指令與資料混淆,資料或是工具可能內容、格式和身份都沒有問題,但是語意含有提示詞攻擊,可能因為AI Agent被授予了權限,讀取了惡意提示詞,向外部發送非預期的資料。
那間接提示詞注入攻擊會很危險主要是有三個特性:
隱蔽性(Stealthiness)
信任邊界的重塑
攻擊的規模化與擴散性
隱蔽性(Stealthiness)
攻擊者的指令,不是寫給人看的,而是LLM,所以可以利用各種手法,讓人沒有辦法透過視覺看到惡意的提示詞,只需要讓LLM讀懂就可以了。
其中包括在網頁寫與背景一樣顏色的文字,或是在文件中將字級設成0,或是在PDF簡報中將指令藏在圖層後面,以及利用特殊字元或是編碼,讓惡意字元看起來像是亂碼,讓人見而不知。
2.信任邊界的重塑
這跟我剛才提到的一樣,原先我們對於信任邊界的預設跟現在AI Agent實際上的信任邊界是不一樣的,我們可能用AI Agent把特定主題的新聞時事每天摘要給你,而攻擊者只要在網頁SEO 上做點手腳,讓含有惡意指令的網頁排在搜尋結果前面,就能實現大規模自動化攻擊。
攻擊者只需要在網路上,做一個很有用的技術教學網頁或是公開的PDF報告中放入惡意提示詞,任何未來使用 Agent 讀取該內容的使用者都會自動觸發攻擊。攻擊者甚至不需要知道誰是受害者,這使得攻擊成本極低,但影響範圍極廣。
當一個AI Agent同時達成三個要素,能讀你的私人資料,會接觸不可信的外部內容 ,能對外傳送資料,就可能會被這類攻擊偷走資料。
這叫致命三要素(Lethal Trifecta)這是開發者 Simon Willison 在 2025 年提出的框架。
存取私密資料的權限(Access to your private data)
讀取不可信任的內容(Exposure to untrusted content)
對外通訊與操作能力(The ability to externally communicate)
回頭看 Cowork 事件,三個要素一個不缺:它能讀你資料夾裡的檔案(私人資料),它讀了別人分享的技能檔(不可信內容),它能呼叫外部 API(對外傳送)。三者同時存在,一份文件就足以把資料帶走。
參考來源:
PromptArmor,〈Claude Cowork Exfiltrates Files〉,2026 年 1 月,https://www.promptarmor.com/resources/claude-cowork-exfiltrates-files
Simon Willison,〈The lethal trifecta for AI agents: private data, untrusted content, and external communication〉,2025 年 6 月 16 日,https://simonwillison.net/2025/Jun/16/the-lethal-trifecta/