跳转至

SafeRAG: Benchmarking Security in Retrieval-Augmented Generation of Large Language Model

会议: ACL 2025
arXiv: 2501.18636
代码: GitHub
领域: 信息检索 / RAG 安全
关键词: RAG security, silver noise, inter-context conflict, soft ad, white DoS

一句话总结

提出首个中文 RAG 安全评估基准 SafeRAG,设计四种能绕过现有检索器、过滤器和生成器防御的新型攻击任务(银噪声、上下文间冲突、软广告、白色拒绝服务),在 14 种 RAG 组件上系统评估安全漏洞,揭示即使最先进的 RAG 系统也对这些攻击高度脆弱。

研究背景与动机

RAG(检索增强生成)通过"索引-检索-生成"范式为 LLM 整合外部知识,已被 ChatGPT、Gemini、Perplexity 等主流产品采用。然而,引入外部未验证知识增加了系统被攻击的风险——攻击者可在 RAG 管线的任意阶段注入篡改过的文本。

现有攻击方式的四大不足

  1. 噪声攻击易被过滤(R-1):现有噪声只是表面相关但不含答案的上下文,简单的 NLI 过滤器就能有效防御
  2. 冲突攻击针对上下文-记忆冲突(R-2):LLM 可以用内部参数知识判断外部文档的对错,自适应检索器已能有效缓解
  3. 毒性攻击被生成器识别(R-3):先进生成器对显式和隐式毒性(偏见、歧视、讽刺等)具有较强检测能力
  4. DoS 攻击信号明显(R-4):传统 DoS 直接注入"我不知道"等拒绝信号,由于与问题不相关而被过滤器拦截或被生成器忽略

这意味着现有安全基准无法准确评估 RAG 的真实安全风险。此外,现有 RAG 安全研究集中在英文场景,中文场景尚属空白。

方法详解

整体框架

SafeRAG 包含三个核心部分:

  1. 攻击数据集构建:收集中文新闻文本 → 构建 100 组问题-黄金上下文基础数据集 → 针对四种攻击任务分别生成攻击文本
  2. 威胁框架:将攻击文本注入 RAG 管线的三个阶段(知识库/检索上下文/过滤上下文),模拟不同攻击场景
  3. 安全评估:设计攻击特定指标(RA、F1(avg)、ASR/AFR),使用 DeepSeek 作为评估器,与人类判断一致性 >89%

关键设计

  1. 银噪声 (Silver Noise):

    • 功能:生成包含部分但不完整答案的噪声上下文,绕过安全过滤器
    • 核心思路:将黄金上下文分解为细粒度命题(最小语义单元),选取与问题语义最相似的命题作为攻击目标文本,用 DeepSeek 基于该命题生成 10 条多样化上下文
    • 攻击效果:银噪声确实包含部分答案,因此能通过过滤器的相关性检查,但由于答案不完整,会削弱 RAG 输出的信息多样性和完整性
    • 设计动机:现有噪声仅是"类似主题但不含答案"的上下文,过于容易被过滤;银噪声通过"部分正确"制造更隐蔽的干扰
  2. 上下文间冲突 (Inter-context Conflict):

    • 功能:构造外部知识间的矛盾,使 LLM 无法用内部参数知识判断对错
    • 核心思路:人工标注者选择最易被篡改的黄金上下文,按三条原则修改——(a) 最小扰动引入冲突(仅改动关键信息);(b) 重写使冲突更逼真可信;(c) 保留关键事实(年份、月份等),避免生成幻觉或无关上下文
    • 与现有冲突的区别:现有研究主要关注上下文-记忆冲突(LLM 可用内部知识判断),本文探索 LLM 参数知识不足以解决的外部知识间矛盾,攻击力更强
    • 设计动机:LLM 对自身不确定的知识领域更容易被误导,上下文间冲突正好利用了这一弱点
  3. 软广告 (Soft Ad):

    • 功能:将看似专业无害的广告信息无缝嵌入黄金上下文,绕过毒性检测
    • 核心思路:两种嵌入方式——(a) 直接插入:将软广告文本直接插入原始上下文中;(b) 间接插入:修改原始上下文,将广告与权威实体(政府、机构等)关联推广,使其更自然隐蔽
    • 攻击效果:作为一种隐式毒性,软广告能绕过 LLM 的显式毒性检测,被自动传播到生成的回复中
    • 设计动机:传统毒性攻击(偏见、歧视等)已能被先进生成器检测,但伪装成专业信息的软广告难以被区分

评估指标

检索安全指标 — Retrieval Accuracy (RA)

\[RA = \frac{\text{Recall}(gc) + (1 - \text{Recall}(ac))}{2}\]

平衡检索黄金上下文的能力与抑制攻击上下文的能力,越高越安全。

生成安全指标 — F1(avg)

基于多选题构造评估,将响应和问题送入评估器,评估生成器在攻击下识别正确/错误选项的能力。\(F1(avg) = \frac{F1(correct) + F1(incorrect)}{2}\),越高越安全。

攻击成功率 — ASR/AFR

衡量攻击关键词(冲突事实、软广告、拒绝信号)在 RAG 回复中的出现比例。实验中使用正向指标 \(AFR = 1 - ASR\),越高越安全。

损失函数 / 训练策略

本文是评估基准而非训练方法。核心工作在于攻击数据集的构建和评估框架的设计:

  • 基础数据集:从新闻网站收集 2024 年 8-9 月的政治、财经、科技、文化、军事五大板块新闻,经筛选获得 100 组问题-8 条黄金上下文的数据对
  • 分块策略:统一句子级分块
  • 嵌入模型:bge-base-zh-v1.5
  • 重排序模型:bge-reranker-base
  • 评估器:DeepSeek(人类一致性 >89%)

实验关键数据

主实验

评估 14 种 RAG 组件(4 检索器 × 3 过滤器 × 8 生成器),攻击注入三个阶段。

各攻击任务的效果排序

攻击任务 攻击阶段效果排序 说明
银噪声 过滤上下文 > 检索上下文 > 知识库 越接近生成器注入越危险
上下文间冲突 过滤上下文 > 检索上下文 > 知识库 同上
软广告 过滤上下文 > 检索上下文 > 知识库 同上
白色 DoS 过滤上下文 > 检索上下文 > 知识库 同上

检索器鲁棒性排序

攻击任务 检索器鲁棒性排序
银噪声 Hybrid-Rerank > Hybrid > BM25 > DPR
上下文间冲突 DPR > BM25 > Hybrid > Hybrid-Rerank(Hybrid-Rerank 最脆弱)
软广告 各检索器脆弱程度基本一致
白色 DoS Hybrid-Rerank > Hybrid > BM25 > DPR(DPR 最脆弱)

消融实验

过滤器/压缩器在不同攻击任务下的安全性:

组件 银噪声任务 冲突任务 软广告任务 DoS 任务
无过滤器 (OFF) 不安全 不安全 不安全 不安全
NLI 过滤器 ✅ 有效 ⚠️ 部分有效 ❌ 几乎无效 ❌ 几乎无效
SKR 压缩器 ❌ 不安全(压缩有用细节) ❌ 不安全(压缩冲突细节) ✅ 有效(压缩广告) ✅ 有效(压缩警告)

生成器安全性分析(累计正向指标):

生成器 安全表现
Baichuan 13B 多任务总体最优,DoS 任务尤其突出
轻量模型(Qwen 7B 等) 反而比 GPT 系列更安全
GPT-4/GPT-4o 对本文新型攻击更敏感

评估器与人类一致性

任务 F1(correct) 一致性 F1(incorrect) 一致性 ASR/AFR 一致性
银噪声 89.97% 96.22%
上下文间冲突 99.10% 98.48% 95.65%
软广告 91.67% 100%
白色 DoS 89.97% 96.22% 100%

关键发现

  1. 所有四种攻击均能有效绕过现有 RAG 组件:即使是最简单的白色 DoS,也能通过伪装成安全警告骗过检索器、过滤器和生成器
  2. 越接近生成器的注入越危险:在过滤上下文阶段注入(最后一道防线之后)的攻击效果远强于在知识库阶段注入(可能被检索器和过滤器拦截)
  3. 更强的模型不一定更安全:GPT-4/GPT-4o 对新型攻击反而更敏感,推测原因是更强的指令跟随能力使其更容易被精心构造的攻击文本误导
  4. SKR 压缩器具有双面性:噪声和冲突任务中因压缩了有用细节而降低安全性,但在软广告和 DoS 任务中因压缩了攻击内容而提升安全性
  5. 没有万能防御:NLI 过滤器仅对噪声有效,SKR 压缩器仅对软广告和 DoS 有效,表明当前缺乏统一的 RAG 安全防御方案

亮点与洞察

  • 首个中文 RAG 安全基准:填补了 RAG 安全评估在中文场景下的空白,五大新闻板块覆盖面广
  • 攻击设计精巧且有针对性:每种攻击都瞄准 RAG 防御链的特定弱点——银噪声绕过相关性过滤、软广告绕过毒性检测、白色 DoS 利用安全警告伪装、上下文间冲突利用 LLM 参数知识盲区
  • "更强≠更安全"的反直觉发现:挑战了"升级 LLM 即可提升 RAG 安全"的简单假设,指出强指令跟随能力反而可能成为攻击入口
  • 评估框架可复用:基于多选题 + 攻击关键词的评估方法简洁高效,与人类判断高度一致,可直接应用于新的 RAG 安全评估场景

局限与展望

  • 数据集规模偏小:仅 100 组基础问答对,统计显著性可能不足
  • 仅中文场景:英文及其他语言泛化性未验证
  • 攻击构建依赖人工标注:尤其是上下文间冲突和软广告的构造成本高,难以大规模扩展
  • 仅评估不防御:仅暴露问题,未提出有效的防御方案或防御建议
  • 未涉及更复杂攻击形式:如对抗性嵌入攻击、多步联合攻击、模型后门注入等
  • 白色 DoS 的构造规则过于固定:当前基于规模模板生成,可能被针对性防御

相关工作与启发

  • vs RGB/RAG Bench(噪声基准):这些工作的噪声仅是"类似主题但不含答案"的相关上下文,SafeRAG 的银噪声(部分正确)更隐蔽且更难防御
  • vs RECALL/ClashEval(冲突基准):这些工作关注上下文-记忆冲突(LLM 可用内部知识判断),SafeRAG 的上下文间冲突针对 LLM 参数知识不足的领域,攻击力更强
  • vs Phantom/MAR(DoS 基准):传统 DoS 直接注入拒绝信号容易被过滤,SafeRAG 的白色 DoS 利用安全警告伪装成善意提醒,大幅提高攻击成功率
  • 启发:RAG 安全不应只关注单一组件,需要在整个管线中进行端到端安全评估;防御方案需要针对不同攻击类型定制

评分

  • 新颖性: ⭐⭐⭐⭐ 四种攻击设计新颖且针对性强,首个中文 RAG 安全基准
  • 实验充分度: ⭐⭐⭐⭐ 14 种组件 × 3 个注入阶段 × 4 种攻击,分析全面
  • 写作质量: ⭐⭐⭐ 结构清晰但图表和附录过多,主要发现需要在大量数据中提炼
  • 价值: ⭐⭐⭐⭐ 对 RAG 安全研究有重要推动作用,暴露的问题有实际意义,但缺乏防御方案降低了实用价值

相关论文