致命三要素是什麼,這個名字是怎麼來的?
這個詞由獨立研究者 Simon Willison 於 2025 年 6 月在他的部落格提出,用來描述一個他觀察到在多起 Agent 資安事件裡反覆出現的共通結構。他發現,看似各自獨立、成因不同的資料外洩事件,拆解到最後都指向同一組條件同時成立:Agent 能接觸到值得偷的東西(私有資料)、Agent 會處理攻擊者能影響的內容(不受信任的內容)、Agent 有能力把偷到的東西送出去(對外通訊或造成副作用)。這個命名選用「致命」(lethal)而不是「風險」或「弱點」這類較溫和的詞,是因為這三者同時成立時,資料外洩幾乎是必然結果,不是「可能發生」的機率問題。
這個框架之所以重要,不是因為它發現了什麼技術上的新漏洞,而是因為它把一個原本模糊、難以在團隊內部溝通的風險,轉換成一個可以直接對照、逐項盤點的檢查清單——這個命名後來被 Meta 等業界機構直接沿用並引用,證明了它在溝通層面的實用價值。
致命三要素為什麼會成為一個需要特別命名的問題,是什麼原因造成的?
核心原因是這三個屬性,個別來看幾乎都是 Agent 具備實用價值的必要條件——一個完全碰不到任何資料的 Agent 沒有用處;一個完全不處理外部內容、只能回答使用者直接輸入問題的 Agent,應用範圍非常有限;一個完全不能對外採取任何行動的 Agent,只能停留在建議層面,無法真正幫使用者完成任務。這代表企業或開發者在追求 Agent 實用性的過程中,幾乎有天然的動機讓這三個屬性同時出現在同一個 Agent 身上,因為分開來看,每一個屬性都是「讓 Agent 更有用」的合理需求。
問題在於,這三個屬性一旦同時齊備,就形成了一條完整可用的攻擊鏈:攻擊者只需要讓 Agent 讀到一段藏在不受信任內容裡的指令,Agent 就會利用它原本合法的私有資料存取權限找到值得偷的東西,再利用它原本合法的對外通訊能力把東西送出去——整個過程中,Agent 使用的都是它被授權該有的能力,沒有任何一個環節出現「未經授權的存取」這種傳統資安工具容易偵測的訊號。
致命三要素具體怎麼在真實案例中運作,有哪些已知的例子?
2026 年 1 月,安全研究團隊 PromptArmor 在五天內公開揭露了兩起獨立事件,都完全符合致命三要素的模式。第一起是 IBM 的編碼 Agent Bob:攻擊者在一個開源專案的 README 檔案裡藏入偽裝成「釣魚訓練」的指令(不受信任的內容),Bob 讀取後開始重複請求開發者核准一個看似無害的指令,開發者被反覆詢問煩了之後點選「永遠允許」,Bob 隨即利用這個已核准的權限鏈接後續操作,接觸並下載惡意程式(私有資料存取/對外通訊),全程沒有再經過任何人工核准。第二起是 Notion AI:其文件編輯功能存在時序漏洞,攻擊者透過間接提示注入讓 Notion AI 讀取一份偽裝過的文件(不受信任的內容),藉此外洩使用者的機密招募追蹤資料(私有資料存取+對外通訊)。
這兩起事件的攻擊者都不需要突破任何登入或找到程式漏洞,純粹是致命三要素同時成立時的自然結果——這也是為什麼安全社群認為,光靠更聰明的系統提示或偵測分類器無法徹底解決問題,因為問題出在架構層面的屬性組合,不是某一次判斷失誤。
致命三要素對我有什麼影響,實務上該怎麼因應?
如果你的組織正在部署或評估具有資料存取能力的 Agent,這個框架能讓一個原本模糊的風險變成可以逐項盤點、逐項簽核的具體項目——先列出每個 Agent 在單一操作路徑上是否同時滿足三個屬性,若答案是三個都滿足,代表這是一個結構性有漏洞的設計,需要優先處理。Meta 的 AI 安全團隊於 2025 年 10 月公開發表了一套建立在這個框架之上的實務方法,稱為「二選一法則」(Rule of Two):規定一個 Agent 在單一 session 裡,最多只能同時滿足三個屬性中的兩個,藉此確保即使攻擊指令成功注入,攻擊鏈也會在某個環節被物理性地切斷。
具體可以用三種組合實作:讓 Agent 處理不受信任內容、也能對外通訊,但完全不讓它碰任何私有資料;或是讓 Agent 存取私有資料、也會處理不受信任內容,但任何對外傳送都必須先經過人工確認;或是讓 Agent 存取私有資料、也能對外通訊,但嚴格限制它只處理完全可信、受控的輸入來源。這件事也直接關係到問責:一份記錄清楚「我們知道這個 Agent 具備致命三要素,並因為採取了某項緩解措施而接受這個風險」的文件,跟完全沒有評估過就照樣上線,是完全不同等級的治理責任。
2026 年 1 月,安全研究團隊 PromptArmor 在五天內公開揭露 IBM 編碼 Agent Bob 與 Notion AI 兩起獨立事件,皆完全符合致命三要素模式;Meta 的 AI 安全團隊已於 2025 年 10 月公開發表建立在此框架之上的「二選一法則」(Rule of Two)防禦方法論。
嚴格遵守二選一法則能確保攻擊鏈在某個環節被物理性切斷,但會犧牲部分使用者體驗或功能靈活性——一個原本能同時讀信箱又自動回覆的 Agent,若要拆解成兩要素,可能得改成「先產生草稿、使用者確認後才送出」,這代表使用者要多一道核准手續。完全不理會致命三要素、追求最大自主性跟便利性,則直接繼承這個框架描述的全部風險,兩者之間沒有兩全其美的選項,只有依風險承受能力做出的取捨。