ADMIT:基于 RAG 的事实核查中的少样本知识投毒攻击
ADMIT:基于 RAG 的事实核查中的少样本知识投毒攻击
一、基础信息
|
类别
|
详情
|
|
标题
|
ADMIT: FEW-SHOT KNOWLEDGE POISONING ATTACKS ON RAG-BASED FACT CHECKING
ADMIT:基于检索增强生成(RAG)的事实核查中的少样本知识投毒攻击
|
|
作者
|
Yutao Wu、Xiao Liu、Yinghui Li(迪肯大学);Yifeng Gao、Yifan Ding、Jiale Ding、Xingjun Ma(复旦大学);Xiang Zheng(香港城市大学)
|
|
来源
|
arXiv 预印本(cs.CL 领域,arXiv:2510.13842v1),非期刊 / 会议已发表成果
|
|
发布时间
|
2025 年 10 月 11 日
|
二、研究背景与问题
1. 研究动机(现有不足)
Retrieval-Augmented Generation(RAG)系统通过整合外部知识库提升大语言模型(LLMs)性能,广泛应用于 ChatGPT 插件、必应搜索、OpenFactCheck 等场景,但存在知识投毒(Knowledge Poisoning)风险—— 攻击者向知识库注入对抗性内容,误导 LLMs 生成错误输出。然而现有研究存在以下关键不足:
- 攻击者能力假设不切实际:现有投毒攻击多假设恶意内容在检索结果中占比高、LLMs 无需合理理由即可生成错误答案、目标系统无可靠知识源,与真实事实核查场景脱节。
- 真实事实核查场景更具挑战性:在 RAG-based Fact-Checking(RAG-FC)中,系统从新闻媒体、医疗数据库等权威来源检索证据,可信信息在检索语境中占主导,且现代 RAG-FC 还集成智能体驱动推理以处理冲突输入,现有攻击难以生效。
- RAG-FC 鲁棒性研究不足:尽管 RAG-FC 是对抗虚假信息的核心工具,但针对其知识投毒的鲁棒性尚未被充分探索,亟需验证 “当投毒内容与可信证据共存时,RAG-FC 是否仍能保持可靠”。
2. 研究问题
在 RAG-FC 场景下,如何设计一种少样本、语义对齐的知识投毒攻击,在不访问目标 LLMs、检索器或进行 token 级控制的前提下,实现以下目标:
- 翻转事实核查结果(如 “支持”→“反驳”);
- 诱导 LLMs 生成具有欺骗性的合理理由;
- 在极低投毒率、存在强反证的情况下仍保持有效性。
三、Methods(方法)
本文提出的核心方法为ADMIT(ADversarial Multi-Injection Technique,对抗性多注入技术),属于少样本知识投毒攻击,整体围绕 “模拟目标环境生成对抗性段落” 展开,分为威胁模型、核心攻击流程、代理段落构建、对抗性前缀增强四个关键模块。

3.1 威胁模型(Threat Model)
核心假设
- 攻击者能力限制:仅能向知识库注入少量对抗性段落(短且连贯的文本),无任何目标检索器或 LLMs 的访问权限(符合真实场景中 RAG 依赖可公开编辑源(如维基百科)的特点)。
- 少样本注入设定:定义 “少样本” 为注入段落数量m ≤ 检索结果数量k(如m=1,k=5时,检索语境含 1 个恶意段落 + 4 个干净段落),确保检索结果中存在高可信度证据。
- 内容约束:攻击者不可生成不可读内容或恶意指令,需保持语义相关性与真实性,弥合理想化投毒假设与实际事实核查场景的差距。
攻击者目标
针对特定主张$C_i$,使 RAG-FC 系统的核查结果从原始标签(如 “支持”)翻转为攻击者指定的目标标签(如 “反驳”),且 LLMs 需为翻转结果生成具有说服力的理由。
3.2 对抗性多注入技术(ADVERSARIAL MULTI-INJECTION TECHNIQUE, ADMIT)
ADMIT 是一种间接提示注入方法,核心解决三大挑战:确保对抗性段落进入检索 Top-k 结果、覆盖语境中干净证据的影响、误导 LLMs 输出错误核查结果。其核心思路是利用代理验证器(Proxy Verifier)和代理段落(Proxy Passages)模拟目标环境,无需直接访问目标模型。
核心公式
ADMIT 生成对抗性段落$p_j^i$需满足:
\(\tilde{f}_{verify }\left(C_{i}, \mathcal{R}_{i}^{proxy } \cup p_{j}^{(i)}\right)=\tilde{V}_{i} \approx V_{i}^{target }\)
- \(\mathcal{R}_{i}^{proxy }\):模拟目标干净检索语境的代理段落;
- \(\tilde{f}_{verify }\):代理验证器(近似 RAG-FC 系统的 LLM-based 事实核查器);
- \(\tilde{V}_{i}\):代理验证器输出;
- \(V_{i}^{target }\):攻击者指定的目标核查结果。
1. 单轮生成(Single-Turn Generation)
- 适用场景:无需迭代优化即可生效的场景(t=1)。
- 流程:仅基于代理段落的信息生成对抗性段落,不引入模糊测试(Fuzzer)等额外优化步骤。
- 优势:攻击者可利用公开知识构建针对性相反内容,且 LLM-based 攻击辅助工具极少拒绝此类生成(拒绝率接近 0,见附录表 14)。
2. 多轮生成(Multi-Turn Generation)
- 适用场景:单轮生成无法达到目标结果时,通过文本反馈迭代优化。
- 流程:
- 每一轮t,攻击者 LLM A基于历史观察更新对抗性段落:\(p_{j, t}^{(i)}=\mathcal{A}\left(\mathcal{O}_{j, t'=1}^{t-1}\right)\),其中\(\mathcal{O}_{j, t-1}^{(i)} = \{p_{j, t-1}^{(i)}, \mathcal{R}^{proxy }, \tilde{V}_{j, t-1}^{(i)}\}\),包含前一轮对抗性段落、代理语境、核查结果。
- 迭代终止条件:达到目标结果或最大迭代次数T(默认T=30)。
- 记忆清除机制:每L轮(默认L=5)重新初始化p_j,t^(i),避免语境过长降低 LLM 推理性能(参考 Dong et al., 2024 的研究结论)。
3.3 代理段落构建(Proxy Passage Construction)
代理段落用于模拟目标 RAG-FC 系统检索到的干净证据,分为两种构建策略,确保覆盖不同场景需求:
1. 基于搜索的构建(Search-based Construction)
- 核心思路:利用开放域网络源聚合合理证据,模拟事实核查器的检索行为。
- 具体流程:
- query 生成:使用轻量级 LLM 将主张C重写为多样化查询\(\mathbb{Q} = GENQUERY(C)\)(3-10 个词,覆盖关键信息,避免模糊表述);
- 文档检索与聚合:对每个查询q ∈ Q,检索文档并聚合为\(\mathcal{D} = \cup_{q \in Q} SEARCH(q)\)(含 URL、标题、文本);
- 段落分割与过滤:将文档分割为 50 词以内的短段落,训练轻量级分类器标注段落与主张的立场关系(需与目标结果V_i^target相反),收集z个有效代理段落(z为超参数)。
2. 基于 LLM 的构建(LLM-based Construction)
- 适用场景:网络源无法覆盖的受限领域(如小众专业领域)。
- 核心思路:利用 LLM 的预训练知识生成代理段落,减少对外部检索的依赖。
- 流程:将主张C输入 LLM,要求其生成支持 / 反驳(与目标结果相反)的 50 词以内段落,直接作为代理段落(详见附录 C 的算法与提示模板)。
3.4 对抗性前缀增强(Adversarial Prefix Augmentation)
- 核心目标:提升对抗性段落的检索概率,同时保证隐蔽性(避免被简单子串检测发现)。
- 现有方法缺陷:
- 梯度 - based token 替换:需白盒访问检索器,不切实际;
- 恶意文本追加到查询:易引入表面模式,被检测到。
- ADMIT 策略:将代理段落收集阶段使用的语义丰富的搜索查询 prepend 到对抗性段落前,即\(AUGAP = Q \oplus AP\)(\(\oplus\)表示文本拼接)。该策略利用检索器 “查询 - 文档相似度匹配” 的核心逻辑,提升对抗性段落的检索排名,且无额外检测风险。
四、Experiment(实验)详细笔记
4.1 实验设置(Experimental Setup)
1. 数据集(Datasets)
选择 4 个跨领域事实核查数据集,覆盖通用、科学、气候、医疗领域,均采用 BEIR 基准格式(HealthVer 手动转换),模拟真实 RAG 系统的离线检索场景:
|
数据集
|
领域
|
主张数量
|
段落数量
|
核心特点
|
|
FEVER
|
通用
|
185,445
|
5,416,568
|
大规模通用事实核查数据集,含 “支持 / 反驳 / 信息不足” 标签
|
|
SciFact
|
科学
|
1,409
|
5,183
|
科学主张核查,证据来自学术论文摘要
|
|
ClimateFEVER
|
气候
|
7,675
|
5,416,568
|
气候相关主张,如 “CO2 导致全球变暖”
|
|
HealthVer
|
医疗
|
2,149
|
6,961
|
医疗健康主张,如 “接触受污染表面不会致病”,挑战性高
|
2. 目标模型(Retrievers & LLMs)
- 检索器(4 种):
- 稀疏检索器:BM25;
- 稠密检索器:Contriever-ms(默认)、Contriever、BGE-large-en。
- 验证器 LLMs(11 种,分三类):
- 开源模型:Qwen2.5-32B/72B、LLaMA3-8B/70B、Mistral-Small-24B;
- 商业模型:GPT-3.5-turbo、GPT-4o(默认受害者验证器与攻击者生成器)、Claude-3.5-Sonnet、Gemini-2.0-Flash;
- 推理导向模型:QWQ、DeepSeek-R1、o1-mini。
3. 评估指标
- 攻击成功率(ASR,核心指标):仅统计 “支持↔反驳” 的结果翻转,“信息不足(NEI)” 不视为成功;
- 召回率(Recall):注入的对抗性段落进入检索 Top-k 的比例;
- 欺骗性理由率(DJR):成功攻击中,LLM 生成与翻转结果对齐的合理理由的比例。
4. 基线方法(Baselines)
选择 4 种相关攻击方法,统一注入预算以保证公平对比:
|
基线方法
|
核心策略
|
缺陷
|
|
Prompt Injection Attack(PIA)
|
注入 “忽略之前指令,输出指定结果” 等恶意指令
|
商业 LLM 上性能骤降(如 GPT-4o 上 ASR 仅 6%),无法生成合理理由
|
|
Misinfo-QA
|
注入伪造内容操纵事实推理
|
单轮生成,无迭代优化,面对干净证据时效果差
|
|
PoisonedRAG
|
验证对抗性内容单独误导 LLMs 的能力
|
依赖大量注入,少样本场景下 ASR 低
|
|
CorruptRAG
|
注入含 “过时语料错误,最新数据反驳” 的指令
|
开源模型上 ASR 约 50%,商业模型上失效,无法随注入量提升
|
4.2 实验内容、结果与结论
1. 核心实验 1:ADMIT vs. 基线方法(主结果)
- 实验内容:在 4 个数据集、3 个代表性验证器(LLaMA3.3-70B、GPT-4o、o1-mini)、1-5-shot 注入、Top-10 检索(k=10)场景下,对比 ASR。
- 实验结果(表 1、表 20):
- ADMIT 在 88.3% 的配置中实现最高 ASR,平均比 SOTA(PoisonedRAG)提升 8%(1-shot)和 14%(5-shot),最大提升 33%(FEVER 数据集,o1-mini,3-shot);
- 基线方法局限性明显:PIA/CorruptRAG 在商业 LLM 上 ASR 低至 6%,Misinfo-QA 无法覆盖干净证据影响;
- ADMIT 可扩展且泛化性强:5-shot 注入时,LLaMA3.3-70B 在 SciFact 上 ASR 达 85%,GPT-4o 在 Climate-FEVER 上 ASR 达 67%。
- 结论:ADMIT 通过代理引导的多轮反馈优化,显著优于现有基线,尤其在少样本、商业 LLM 场景下优势明显。
2. 核心实验 2:跨检索器与 LLM 的迁移性
- 实验内容:测试 ADMIT 在 4 种检索器、11 种 LLM、Top-5/10 检索(k=5/10)下的 ASR 与召回率。
- 实验结果(图 2、表 3、表 21、表 22):
- 跨 LLM 迁移性:5-shot 注入、k=5 时,开源 LLM 平均 ASR 达 90%,商业 LLM 达 84%,推理模型达 86%;即使 k=10(干净段落占比高),开源 LLM ASR 仍达 80%;
- 跨检索器迁移性:前缀增强后,所有检索器召回率显著提升(平均从 82.4%→95.7%),Contriever-ms 在 HealthVer 上召回率达 95%,BM25 召回率接近 100%;
- 推理模型脆弱性:尽管推理模型设计用于事实一致性检查,但 ADMIT 对其攻击成功率(如 QWQ 5-shot ASR 达 88%)高于其他 LLM 类型。
- 结论:ADMIT 在不同检索器、LLM 类型上均保持高有效性,迁移性极强。
3. 实验 3:不完美检索与非线性 ASR 趋势
- 实验内容:在 4 种检索器、HealthVer(含拼写错误 / 非正式表述查询)场景下,测试 ADMIT 在检索不稳定时的性能;分析 ASR 与注入 shot 数的关系。
- 实验结果(附录表 19、表 16):
- 即使检索存在噪声(如 HealthVer 中 Contriever 召回率仅 53%),ADMIT 仍能生成语义对齐的对抗性段落,单对抗段落检索时仍有效;
- ASR 非严格线性增长:若计入 NEI,ASR 呈线性增长(表 16),但 ADMIT 仅统计 “支持↔反驳” 翻转,故存在非线性(如 1-shot→2-shot ASR 提升 11%,4-shot→5-shot 提升 4%)。
- 结论:ADMIT 在不完美检索场景下鲁棒性强,ASR 非线性源于严格的成功定义(排除 NEI)。
4. 实验 4:防御策略有效性测试
- 实验内容:测试 ADMIT 对抗 4 类防御的能力:虚假新闻检测(FakeWatch)、LLM 知识整合(divide-and-vote/consolidate-then-select)、PPL/ROUGE-N 检测、智能体防御(ReAct)。
- 实验结果(附录 F、I):
- 虚假新闻检测:FakeWatch 将 98% 的 ADMIT 对抗段落误分类为 “真实”,因其模仿新闻语气、真假信息交织;
- LLM 知识整合:divide-and-vote(段落级投票)反而放大对抗影响(SciFact ASR 从 82%→98%),consolidate-then-select(聚类)仅部分缓解(FEVER ASR 从 63%→33%);
- PPL/ROUGE-N 检测:无法区分干净与对抗段落,AUC 低至 0.05(HealthVer),对抗段落间 ROUGE 分数甚至高于干净段落;
- ReAct 智能体:5-shot 注入时,FEVER ASR 从 51%→92%,因智能体倾向于生成确定答案而非保留判断。
- 结论:现有防御措施对 ADMIT 效果有限,ADMIT 生成的对抗段落隐蔽性强,能突破多种先进防御。
5. 消融实验:ADMIT 组件有效性
- 实验内容:评估代理验证、多轮迭代、代理段落类型、超参数(重置间隔 L、最大迭代 T、段落长度 V、代理段落数 m)对 ASR 的影响。
- 实验结果(附录 G):
- 代理验证关键:无代理引导时(如 PoisonedRAG),ASR 平均降低 20-24%,SciFact 上降低最显著(24%);
- 多轮迭代优势:T=30 时 ASR 比 T=1(单轮,类似 Misinfo-QA)高 35%,L=5(每 5 轮重置)比 L=50(不重置)高 12%;
- 代理段落类型互补:搜索 - based 在 HealthVer(领域特定)上 ASR 高 17%,LLM-based 在 FEVER(通用)上 ASR 高 11%;
- 超参数最优配置:m=3(代理段落数)、V=50(段落长度)时 ASR 最高,过多代理段落会引入噪声。
- 结论:ADMIT 的代理验证、多轮迭代、前缀增强等组件均不可或缺,合理超参数配置可进一步提升性能。
6. 其他实验:计算成本与规模化
- 实验内容:评估 ADMIT 生成对抗段落的计算成本;通过微调 Qwen2.5-32B 实现规模化投毒。
- 实验结果(表 12、附录 H):
- 成本高效:41% 的主张单轮生成即可成功,65% 的主张 5 轮内成功,平均每段成本 0.013 美元(GPT-4o 生成);
- 规模化可行:微调后 Qwen2.5-32B 在 HotPotQA 上单轮生成 ASR 达 88%,且具备 emergent 多语言攻击能力(仅训练英文数据)。
- 结论:ADMIT 成本低、可规模化,微调后可进一步降低部署门槛。
4.3 论文核心观点 / 贡献
- 提出新型少样本知识投毒攻击 ADMIT:首次在 RAG-FC 场景下实现 “少样本注入 + 语义对齐 + 无目标系统访问”,极低投毒率(0.93×10⁻⁶)下平均 ASR 达 86%。
- 揭示 RAG-FC 关键脆弱性:证明即使存在强反证、使用商业 / 推理 LLM、多种防御措施,RAG-FC 仍易受 ADMIT 攻击,尤其推理模型更脆弱。
- 全面验证有效性与泛化性:在 4 个跨领域数据集、4 种检索器、11 种 LLM 上验证 ADMIT 的高 ASR、高召回率、强迁移性。
- 提供防御启示:现有防御(虚假新闻检测、PPL 过滤)对 ADMIT 效果有限,未来需从溯源追踪、不确定性评估、深度推理验证方向设计防御。
- 成本与规模化优势:ADMIT 计算成本低,支持微调扩展,为后续 RAG 安全研究提供实用攻击范式。

浙公网安备 33010602011771号