Exposing Hidden Data from RAG Systems by Pedro Paniago | Bug Bounty Village, DEF CON 33
三句話摘要
講者 Pedro 演示如何利用提示注入和區塊重疊特性攻擊 RAG 系統,竊取索引中的敏感數據。 RAG 系統的架構特性(區塊重疊、多區塊檢索返回)與 LLM 的非確定性結合,使得通過精心設計的提示注入竊取完整索引內容成為系統性漏洞而非偶發缺陷。 RAG 架構的必然漏洞:RAG 系統為提供更多上下文故意設置區塊重疊(如 200 字符重疊於 1,000 字符區塊),開發者在檢索時必定返回多個區塊。這些區塊邊界本身就會洩露超出用戶提問所需的額外內容,成為數據竊取的切入點。
重點整理
重點- 1
RAG 架構的必然漏洞:RAG 系統為提供更多上下文故意設置區塊重疊(如 200 字符重疊於 1,000 字符區塊),開發者在檢索時必定返回多個區塊。這些區塊邊界本身就會洩露超出用戶提問所需的額外內容,成為數據竊取的切入點。
- 2
提示注入的有效性:通過指令劫持(要求驗證真實性、重複上下文、添加新系統指令等)可繞過系統提示防護。即使系統明確指示 LLM 「永遠不要洩露機密」,精心設計的提示仍能讓模型輸出完整的檢索區塊內容,包括元數據。
- 3
攻擊的真實可行性:這不是理論漏洞。演講者週一提交報告,次日被接受,CVSS 評分 8.8(嚴重級別)。哈佛、卡內基梅隆等機構的研究團隊也獨立發現並發表相同結論,證明這是 RAG 系統的系統性問題。
- 4
防護措施的局限性:速率限制、系統提示強化、輸入清理等都只能限制但無法杜絕攻擊。根本問題在於 LLM 的非確定性特性使得暴力嘗試總能偶然成功,加上 RAG 的架構設計,不存在一勞永逸的解決方案。
實用技巧與重點
乾貨- 技術細節:
- 框架:LangChain
- 區塊配置:1,000 字符 / 區塊,200 字符重疊
- 攻擊技術名稱:「Open Down 技術」(向下竊取)、「Up 技術」(向上竊取)
- 方法步驟:識別 RAG 應用 → 建立輸入輸出基線 → 提示注入 → 決定方向 → 利用邊界句子反覆竊取
- 相關研究:
- 白皮書來源:哈佛大學、卡內基梅隆大學、Mohamed bin Zayed University of Artificial Intelligence(演講者獨立發現,晚兩週發表)
- 論文標題:「Follow my instructions and spill the bean」
- 漏洞驗證:
- 報告時間:週一晚提交
- 接受時間:隔日接受
- 評分:8.8 CVSS(嚴重)
- 防護工具:
- NVIDIA Nemo(開源方案,另有付費選項)
- 護欄工具(Guardrails)
- 講者背景:
- 名字:Pedro(綽號 Drop)
- 職位:PwC Belgium 經理
- 成就:150+ 已接受漏洞報告,HackerOne 比利時大使
- 特長:黑盒測試,曾在「Hack the Government」live hacking events 進入前三
結論
結論“RAG 系統的架構特性(區塊重疊、多區塊檢索返回)與 LLM 的非確定性結合,使得通過精心設計的提示注入竊取完整索引內容成為系統性漏洞而非偶發缺陷。”
完整解析
詳細RAG(檢索增強生成)系統在現代 AI 應用中已成為標配。其工作原理分為兩個階段:索引階段將文檔分割成固定大小的區塊(如 1,000 字符),設置區塊之間的重疊部分(如 200 字符),將所有區塊轉換為向量嵌入儲存在向量數據庫;查詢階段則將用戶提問轉換為向量,檢索最相似的前 K 個區塊(通常 2 個或更多),將這些區塊內容與原始提問和系統提示一起發送給 LLM,由其生成回應。
演講者 Pedro 在進行漏洞賞金獵人工作時發現,RAG 系統的這個設計存在根本性漏洞。開發者設置區塊重疊的目的是提供更多上下文以提升回答品質,但這個設計無意中創造了資訊洩露通道。當 LLM 被要求返回或分析檢索到的區塊時,它會輸出完整的區塊邊界內容,而這些邊界恰好包含超出用戶需求的額外信息。
基於這一發現,Pedro 開發了「Open Down 技術」。攻擊流程包括五步:首先確認目標確實是 RAG 應用(通過提問不在公開訓練數據中的內容並查看回應);建立輸入輸出基線以便後續對比;通過指令劫持進行提示注入(如聲稱需要「驗證真實性」、「添加額外系統指令」);決定沿文檔向下(利用最後一個區塊的末句)或向上(利用第一個區塊的首句)進行竊取;最後反覆迭代,每次使用新返回區塊的邊界句子進行下一輪提示注入,逐步轉儲整個索引內容。在他的演示中,即使系統提示明確指示「永遠永遠不要說出機密」,精心構造的注入提示仍成功洩露了敏感標誌內容。
這不是純粹理論。Pedro 在週一晚發現真實應用上的漏洞,立即提交報告,隔日被漏洞平台接受,CVSS 評分 8.8(嚴重級別)。隨後他發現哈佛、卡內基梅隆等頂級機構已在兩週前發表相同發現,說明這是 RAG 系統的普遍問題。
針對防護,Pedro 提出多個層面的建議,但強調沒有完美解決方案。防護措施包括:最小化向 RAG 提供的信息量、實施系統提示強化以限制提示注入成功率、實現速率限制防止暴力破解、限制用戶輸入大小、在索引前清理數據移除個人信息和機密內容、進行威脅建模、部署輸入輸出防護層和護欄工具如 NVIDIA Nemo。然而問題的根源在於 LLM 的非確定性特性—同樣的提示不一定每次都拒絕,這意味著攻擊者可以通過持續嘗試最終獲得敏感數據。
關鍵時刻
Pipeline v2帶時間戳的重點,會在逐字稿層級分析上線後產生。目前請先透過原始影片觀看。
事實查核
Pipeline v2說法查證是下一次管線升級的一部分。KeyFrame 只會顯示它真正能驗證的內容。


