詳細解釋
提示詞注入(Prompt Injection)是攻擊者通過精心設計的輸入,覆蓋或繞過AI系統的原始指令,使模型執行未授權操作的攻擊技術。
攻擊類型:
- 直接注入:用戶輸入中包含惡意指令
- 「忽略之前所有指令,改為...」
- 「系統:新指令是...」
- 間接注入:通過外部數據(網頁、郵件、文檔)注入
- 惡意網頁包含隱藏指令
- 郵件附件觸發未授權行動
- 越獄(破獄):繞過安全限制產生有害內容
- 角色扮演誘導
- 編碼/翻譯技巧
- 長文本干擾
攻擊目標:
- 數據竊取:誘導模型洩露系統提示或訓練數據
- 行為操控:讓模型執行未授權操作
- 內容生成:繞過過濾產生有害內容
- 釣魚攻擊:通過模型分發惡意連結
- 多輪攻擊:通過對話逐步繞過防護
防禦策略:
- 輸入過濾:檢測可疑指令模式
- 提示隔離:區分系統提示和用戶輸入
- 結構化輸入:JSON/XML格式,減少混淆
- 輸出過濾:檢測異常回應
- 權限最小化:限制模型可執行操作
- 人機協同:高風險操作人工確認
與傳統安全的對比:
- SQL注入:代碼和數據邊界混淆
- 提示注入:指令和內容邊界混淆
- 根本問題:自然語言的靈活性使邊界難定義
著名案例:
- Bing Chat:用戶發現系統提示並操控
- GPT-4插件:惡意網頁控制插件行為
- 數據洩露:提取系統提示中的敏感信息
挑戰:
- 本質困難:自然語言無嚴格邊界
- 誤報/漏報:安全和可用性的權衡
- 持續進化:攻擊者不斷發現新方法
- 複雜系統:檢索增強生成 (RAG)、插件增加攻擊面
提示注入是大型語言模型 (大語言模型 / 大模型)應用安全的頭號威脅。