這是有關代理式 AI 漏洞議題的最後一篇文章,本文探討對 AI 代理造成威脅的各種新興漏洞,主要是提供主動式資安建議來防範程式碼執行、資料外傳以及資料庫存取等方面的漏洞。
大型語言模型 (LLM) 已日益成為現代化應用程式的一環,其安全性比以往更加重要。我們在先前幾篇文章已討論過可能對 AI 代理造成威脅的新興漏洞,主要聚焦在程式碼執行、資料外傳以及資料庫存取等領域。
本系列的最後一篇,我們將探討如何應對這些威脅所帶來的挑戰,以及我們為何需要嚴密的多層式策略來保護這些系統。本系列其他文章還有:
- 第一篇:揭發 AI 代理的漏洞 ─ 介紹 AI 代理的主要資安風險,例如:提示注入與執行未經授權的程式碼,並摘要說明後續討論的議題架構,包括:資料外傳、資料庫漏洞攻擊,以及防範策略。
- 第二篇:程式碼執行漏洞 ─ 探討駭客將如何利用 LLM 驅動服務的弱點來執行未經授權的程式碼、避開沙盒模擬環境的限制,以及利用錯誤處理機制的漏洞,進而導致資料外洩、未經授權的資料傳輸,以及取得執行環境的永久存取權限。
- 第三篇:資料外傳:探討駭客如何利用間接提示注入,讓 GPT-4o 這類多模態 LLM 在遇到看似無害的惡意檔案時將機敏資料外傳。這種所謂的「零點選」(zero-click) 漏洞可讓駭客在網頁、圖片及文件中暗藏指令,誘騙 AI 代理洩露使用者互動記錄、上傳檔案,以及聊天記錄當中的機密資訊。
- 第四篇:資料庫存取漏洞 ─ 探討駭客如何攻擊與 LLM 整合的資料庫系統,透過 SQL 隱碼注入、預先儲存的提示注入,以及向量儲存下毒來取得管制的資料,同時還能避開認證機制。駭客可利用提示篡改來影響查詢結果、取得機密資訊,或者插入永久性漏洞來影響未來的查詢。
防範程式碼執行漏洞
程式碼執行漏洞的核心問題是未適當對 LLM 的能力加以管制,所以才會意外出現不當行為。當 AI 代理擁有廣泛的系統存取權限時,駭客就能執行一些非預期的程式碼。要解決這問題,必須從根本上改變管制的方式,最基本的就是透過有效的沙盒模擬環境來限制 AI 代理可以執行的處理程序,以及可以存取的檔案系統區域,將不速之客拒於門外。此外,還可實施資源控管 (例如調節 CPU 與記憶體用量) 來作為一道額外的保障。這些作法不僅可以減少資安事件的發生機率,更可主動防止系統因為遭到漏洞攻擊而發生不預期的後果。
程式碼執行漏洞的重點在於 LLM 如果被授予過多的權限或毫無管制的存取能力,就有可能被駭客用來執行未經授權的動作。其主要挑戰是要盡量縮小系統被用來執行惡意指令的潛在機率,但卻不能影響正常的運作。一種常見的作法是強制實施嚴格的沙盒模擬政策:將處理程序隔離並限制與檔案系統的互動,這樣就能減少駭客可利用的途徑。此外,設定資源用量限制,例如限制記憶體、CPU 用量以及執行時間,如此可確保就算遭到駭客入侵,其衝擊仍在可控的範圍內。此外,還可透過持續監控來強化防禦,提早偵測可能有駭客試圖入侵的異常活動。
要解決這類漏洞,我們建議採取以下主動措施:
- 限制系統功能:
- 停用背景處理程序,或限制它們的某些作業。
- 強制實施更嚴格的檔案系統存取權限管制。
- 監控活動:
- 追蹤帳號活動、失敗情況以及異常行為來發掘潛在威脅。
- 限制資源的用量:
- 限制沙盒模擬環境的資源用量 (如:記憶體、CPU、執行時間) 來防止資源濫用或耗盡。
- 管制網際網路存取:
- 管制從沙盒模擬環境內部存取外部網路,藉此縮小攻擊面。
- 監控惡意活動:
- 使用行為分析工具來發掘可疑的作業,例如:檔案監控及篡改。
- 檢查輸入:
- 檢查及淨化雙向流動的資料 (從使用者到沙盒模擬環境、從沙盒模擬環境到使用者)。
- 確保格式正確:
- 確保所有輸出都符合預期的格式才將資料傳給下游。
防範資料外傳漏洞
資料外傳漏洞主要是敏感或機密資料被不預期地移動到系統之外。隱晦的提示或暗中注入的提示在正常的輸入當中看起來並不會特別顯眼,但卻可能導致資料外洩,對企業造成嚴重損害。要對抗這類漏洞,需要雙管齊下,一方面將潛在的威脅隔離,另一方面將看似無害的資料當中隱藏的惡意指令解碼。啟用網路層次的隔離手段將可信任與不可信任的對象分開,能提供一道預先的防禦,然後再配合輸入檢查來破解隱藏的提示注入手法。這項措施的關鍵在於使用進階診斷工具 (如光學字元辨識與情境式行為分析) 來預先揭露和遏止可能將資料外傳的活動,不讓其惡化到全面的資料外洩。
資料外傳漏洞通常是因為駭客能夠巧妙地注入或操弄 LLM 的提示,進而導致非預期的資料外洩。防範的秘訣就是系統與外部輸入的互動必須被當成內部流程來嚴密控管。一種有效的策略就是透過網路分割及嚴格的存取控管來將 LLM 與不受信任的外部來源隔離,建立一道滴水不漏的屏障來防止資料外流。然後再搭配進階檢查技巧來提供輔助,例如強化式惡意內容分析與自動化內容審查,這有助於發掘輸入資料當中隱藏或加密編碼的威脅。結合這些方法,再配合完整的記錄檔與行為監控,我們就能迅速發掘駭客可能在試圖將資料外傳的異常徵兆,並且在重大損失造成之前預先回應。
要解決間接提示注入風險,一套多重面向的策略至關重要,包括以下幾項重要的主動式措施:
- 存取控管與隔離
- 使用網路層次的控管來攔截不受信任的網址。
- 惡意內容檢查
- 使用進階過濾來掃描上傳內容以發掘隱藏的指令。
- 內容審查與提示淨化
- 透過審查流程以及威脅偵測模型來偵測並消除被內嵌的指令。
- 淨化輸入資料來移除或隔離惡意的提示。
- 完善的記錄檔與監控
- 記錄各項互動並監控是否有 LLM 輸出異常的情形來發掘威脅。
防範資料庫存取漏洞
資料庫存取漏洞是利用 LLM 先天上難以分辨良性和惡意指令的弱點,尤其是遇到提示注入的情況。其挑戰在於如何防止未經授權的指令進入到重要的資料儲存當中。要解決這問題,關鍵在於要捨棄傳統的淨化方式。一套嚴密的防禦需建立在多層式策略之上,包括:驗證程序 (例如敏感的操作必須經過確認步驟) 以及意圖導向的過濾 (用來評估每一道指令背後的用意)。此外,讓 LLM 和資料庫嚴格劃清界線也可進一步降低風險,確保唯有預先定義、安全的操作才被允許。結合主動式驗證與嚴格存取控管,就能建立一道嚴密的屏障來防止潛在的注入攻擊。
這類漏洞 (尤其是 SQL 生成漏洞與向量儲存下毒) 先天上就非常難防,因為其根本原因在於 LLM 很容易被注入的提示所騙,它們無法有效分辨駭客的不良意圖。隨著提示注入技巧不斷進化,一套多層式方法對降低這類風險至關重要。一些關鍵的主動式建議包括:
- 捨棄傳統的資料淨化與過濾
- 儘管傳統清理與過濾使用者輸入的技巧依然有所幫助,但其能力範圍有限,尤其無法防範精密或加密編碼的提示注入。
- 驗證提示
- 設置驗證步驟 (例如中間提示) 來確認關鍵的動作,這有助於防止 LLM 執行非預期的指令或存取未經授權的資料。
- 意圖分類
- 使用意圖分類模型來偵測及攔截惡意輸入,這對預先儲存的提示注入攻擊特別有效。這些模型能發掘有潛在危害或不相干的輸入,防止它們進入到 LLM 或資料庫。
- LLM 到資料庫的存取控管
- 在 LLM 與資料庫之間強制實行嚴格的存取控管,可防範 SQL 生成漏洞,確保 LLM 只能存取或修改預先定義範圍之內的資料。這有助於防範未經授權的查詢或修改。
結論
在今日瞬息萬變的數位情勢下,保護 AI 代理不僅是一種選項,更是一項必要措施。程式碼執行、資料外傳以及資料庫存取相關威脅的不斷演進,提醒了我們:一套主動、多層式的防禦策略至關重要。結合安全的沙盒模擬環境與嚴密的資源管理,就能降低未經授權的程式碼被執行的風險。同樣地,進階的惡意內容分析與嚴格的網路隔離,有助於保護系統,避免資料被暗中外傳。最後,捨棄基本的淨化,導入驗證程序和意圖導向的過濾,可確保唯有預先核准的作業能與資料庫互動。
隨著駭客的手法不斷進化,我們的防禦也必須跟著進化。導入嚴格的資安實務方法,不僅能保護 AI 驅動的系統,更能建立強韌的根基來支援未來的創新。讓我們繼續推動持續性監控、適應性策略,以及嚴謹的資安程序這類主動式資安措施,以便因應明日的挑戰。
有了我們的 Trend Vision One 平台,您就能保護整個 AI 堆疊,包括:
您的資料:
您的 AI 模型:
您的微服務:
您的 AI 基礎架構:
您的網路:
您的使用者與本機 AI 應用程式:
原文出處:Unveiling AI Agent Vulnerabilities Part V:Securing LLM Services 作者:Sean Park (趨勢科技首席威脅研究員)