「有人把它藏起来了」:针对 LLM 检索的查询无关黑盒攻击
"Someone Hid It": Query-Agnostic Black-Box Attacks on LLM-Based Retrieval
无查询黑盒攻击DQ-A使Qwen-1.5-7B-Instruct平均Recall@25从0.358降到0.285。
query-agnostic、complete black-box:攻击者只知受害文档,可像普通用户做有限后缀注入(dis(d,d')≤δ,且d须为d'前缀)。
- LLM检索支撑RAG、信息检索和智能体记忆。作者称既有攻击多要已知查询,或能访问模型并与系统大量交互。目标是在这些都不可用时,用有限后缀降低指定文档被检索到的可能。
- 只读受害文档,在替代模型Qwen-1.5-4B-Casual上采样相关查询,用GCG做文档—查询对抗:文末token远离查询,查询token靠近文档。相似度默认用词嵌入。学到的后缀零样本迁到受害检索器。
- DQ-A在7个检索器上多低于带查询的GCG、PRADA。Qwen-1.5-7B-Instruct均Recall@25从0.358到0.285;Qwen3-Emb-0.6B均Recall@50从0.333到0.329。
- 作者计划改进反向提升,并探索文档级防御;结论呼吁检索本身更稳健,而不只做检索后检测。实验覆盖7个检索器与BRIGHT四个子集,以及两组重排组合、困惑度与位置/长度/|S|分析。论文未报告重复次数、统计检验和Table 2的|S|。
- 威胁模型
- query-agnostic、complete black-box:攻击者只知受害文档,可像普通用户做有限后缀注入(dis(d,d')≤δ,且d须为d'前缀)。查询q、检索器f的结构与参数、文档库D均不可知,也不能查询f。目标是使d'更难进入相似度top-k。
- 被测模型
- Qwen-1.5-7B-InstructSFR-Embedding-MistralE5-Mistral-7B-InstructEmbedding-Gemma-300MJina-Embeddings-v3Granite-Embedding-r2Qwen3-Embedding-0.6BBGE-M3BGE-reranker-v2-M3Qwen3-reranker-0.6B
- 基准
- BRIGHTeconomicspsychologybiologyrobotics
- 指标
- NDCG@25NDCG@50Recall@25Recall@50NDCG@100
研究者提出一种针对 LLM 检索(LLMR)的查询无关黑盒攻击,无需受害者查询或受害者模型知识,仅用零样本替代 LLM 生成可迁移的注入 token。现有攻击研究多假设攻击者已知查询,并依赖受害者模型的参数或交互,现实中难以满足。该方法先建立 LLMR 的理论框架并实证验证,再将可迁移攻击建模为 min-max 问题,提出对抗学习机制,用可学习查询样本寻找最优对抗 token。作者称该攻击在基准数据集和主流 LLM 检索器上均有效,并指出类似效果也可能来自现实中良性或无意的文档编辑。
深度解读
这篇论文试图解决什么问题?
在不知查询、不见受害模型时,用替代模型学后缀,压低文档检索排名。
在查询未知、模型与文档库都不可见时,用有限文末 token 把指定文档从 LLM 检索中藏起来。
- 场景:作者称 LLM 检索支撑搜索、推荐,以及 RAG、信息检索和智能体记忆。可被利用的风险包括压低有用信息、触发有害内容和操纵推荐。作者聚焦隐藏受害文档,动机可以是对抗性的,也可以是合理意图(Figure 1)。
- 既有限制:作者称多数攻击是白盒,依赖参数,在真实应用中难以成立;针对 Bert 等小模型的黑盒需要大量交互,且作者称对当今 LLMR 缺少效果验证(第 4 节)。攻击者通常知道查询,有时知道文档库;作者认为实际中两者几乎不可得,也不能见到查询后再改文档。
- 观察与做法:作者称同主题上下文的检索嵌入倾向于成簇(Figure 3 图注),据此定义 ϵ-pϵ-Precise 检索器,并提出 DQ-A:只知受害文档,在零样本替代 LLM 上学可迁移后缀。
- 威胁模型:
- 目标:使扰动文档 d' 更难被相似度排序选入 top-k(式 1)。
- 知识:论文称 complete black-box、query-agnostic。不知 f 的结构与参数,不能查询 f;q 未知;语料 D 隐藏。
- 能力:只能像普通用户阅读并轻微编辑文档(如百科贡献、讨论回复)。dis(d, d')≤δ;若 d 不是 d' 的前缀则距离为无穷,即只允许有限后缀。
- 受害系统:预先缓存文档最后隐层嵌入、查询时按相似度匹配的 LLM-based Retrieval。
有哪些相关研究?
相关工作分检索对抗、token注入和检索后防御;作者定位为无查询黑盒隐藏。
- 检索系统对抗:作者把既有工作分成四类。(1)向语料加入破坏文档,影响正常文档的检索(Liu et al., 2023a; Lin et al., 2024; Long et al., 2024; Zhong et al., 2023a)。(2)改受害文档以降低或提高其被检索概率(Wu et al., 2023; Liu et al., 2023b)。(3)在 RAG 中制造或操纵易被检索的文档,以毒化生成(Xiang et al., 2024; Liang et al., 2025; Zou et al., 2025)。(4)向智能体记忆写入易被检索的投毒条目(Chen et al., 2024; Dong et al., 2025)。
- 白盒与小模型黑盒:引言点名的白盒包括 Kumar & Lakkaraju (2024)、Pfrommer et al. (2024)、Tang et al. (2025)、Xing et al. (2025)、Du et al. (2026)。作者称它们需要完整参数,真实威胁难以成立。Wu et al. (2023) 与 Liu et al. (2024) 在 Bert 一类模型上做黑盒;作者称其对 LLMR 缺少效果验证,且要与受害系统大量交互。作者还称这些设定通常知道用户查询,有时知道文档库。
- token 注入:作者分为人工编写(Greshake et al., 2023; Shen et al., 2024; Schulhoff et al., 2023)、按下游损失做 token 搜索(Jia et al.; Hayase et al., 2024; Zou et al., 2023; Geisler et al.),以及用 Casual LLM 生成对抗 token(Yu et al., 2023; Mehrotra et al., 2024; Chao et al., 2025)。GCG 被用作本文的离散优化器。
- 检索防御:作者讨论的语料投毒防御(Hong et al., 2024; Wu et al., 2022)主要检测已检索到的投毒文档(Pathmanathan et al., 2025; Zhong et al., 2023b),或保证 RAG 生成稳健(Xiang et al., 2024)。作者称这些方法盯着检索之后,不适用于“降低检索概率”的攻击。困惑度检测(Alon & Kamfonas, 2023; Hu et al., 2023; Li et al., 2026)在附录 B.1 中被作者称不足以对付本攻击。
- 基线与基准:GCG(同一替代模型上迁移)、PRADA(另给查询访问和 10% 数据做 LoRA)、Poisoned-RAG(用提示生成用于压低文档的 token)。三者都有 ground-truth query。基准是 BRIGHT 的 economics、psychology、biology、robotics。
作者把本文放在 query-agnostic、complete black-box 上:只知受害文档,同一组注入 token 零样本作用于多个 LLM 检索器,目标是隐藏而非投毒生成。
论文如何解决这个问题?
DQ-A在替代模型上对文档后缀和采样查询做对抗学习,再零样本迁移。
整体是 Document-Queries Adversarial(DQ-A)learning:在替代检索器上,用采样查询逼近未知用户查询,只优化文末注入 token,再把同一后缀迁到黑盒受害模型。
检索形式与攻击约束
- 嵌入:上下文先过词嵌入层 f0,再过 T 个 transformer 块。检索用最后隐层池化,常见是注意力加权和或最后一个 token。相关度用相似度,论文写通常是 cosine。文档可预计算嵌入,查询只前向一次。
- 注入:在文档末尾加 m 个初始 token(文中例子为多个星号),再用 GCG 按损失做离散替换:词嵌入梯度取每个位置梯度最大的若干词,随机替换后保留损失更低者。
- 目标:式 (1) 最小化 d' 进入 top-k 的指示。D 与 q 不可得,故改为最小化 sim(f(d'), f(q)),再用主题内上下文的最大相似度作上界。
ϵ-pϵ-Precise 与迁移条件
- 定义:对同主题集合,若至少 pϵ 比例的跨主题上下文满足 sim(f(Xi),f(Xj))≥ sim(f(Xk),f(X′))+ϵ,则称该检索器在该主题上 ϵ-pϵ-Precise。ϵ 是同主题与跨主题相似度间隙。
- 经验检查:作者用 Casual LLM 生成 24 个主题、每主题 10 篇,在检索器上算 p0 到 p0.3。部分结果在 Table 1,24 主题与 3 个 LLM 的全表在附录 E。Figure 3 是另一组:四主题各 40 篇的 PCA,图注称同主题倾向于成簇。
- 迁移:作者假设受害模型 f 与替代模型 g 独立,且 f 在含 d 与 q 的主题上是 ϵf-pfϵ-Precise。若 g 上最大相似度被压到不高于主题内最小相似度减 ϵg(ϵg>0),则 d' 被判在主题外,f 上相似度以概率 pfϵ 有上界下降(Theorem 3.2;实验部分写作 Lemma 3.2)。证明在附录 A.1。作者称 f 作为嵌入器越好,迁移越可能有效;g 越好,攻击越容易达成。
对抗学习
- 目标:在 g 上优化 argmind′maxX∈𝒳sim(g(d′),g(X))。作者引用 GAN,把它拆成查询最大化相似度、文档最小化相似度的交替式。作者称这只是式 (6) 的必要(更弱)条件,相当于一阶驻点;仅当 g 对 X 凸时才等于全局 min-max,而 LLMR 中几乎不会凸。
- 样本量代替步长:作者引用 Two-Time-Scale GDA,希望查询侧步长大于文档侧。GCG 没有学习率,查询长度又预先固定,故改用 N 个不同查询:每个查询优化全部 token,文档只优化固定注入 token,文档损失取查询相似度的最大。作者称 token 数量差也用来模拟查询侧更新更强。
- 采样:Si = h(d 接上提示 pi)。h 是第三个生成 LLM,方法上可以不是 g。附录 C.2 给出五种初始查询提示,此处不复述。查询只参与训练,不必在真实系统中使用。
词嵌入替代与实验默认
- 浅层相似度:对抗学习默认不用最后隐层,而用词嵌入,再对两侧 token 两两相似度按长度归一。检索评测仍用受害模型的最后隐层。作者分析,这可能是因为 LLM 参数很多,投影回输入后,后层距离不如浅层距离有影响。
- 实验中的模型:学习用的替代模型和生成查询的 Casual 模型都是 Qwen-1.5-4B-Casual。通用实验注入 10 个 token。同一文档学到的后缀用于多个受害检索器,不做针对单个受害模型的再优化。
论文做了哪些实验?
作者称DQ-A在6/7个检索器上拉低平均指标,Qwen3-Emb很难。
实验设置
- 受害检索器:Qwen-1.5-7B-Instruct、SFR-Embedding-Mistral(表中 SF-Mis.-7B)、E5-Mistral-7B-Instruct、Embedding-Gemma-300M、Jina-Embeddings-v3、Granite-Embedding-r2、Qwen3-Embedding-0.6B。重排组合为 BGE-M3 + BGE-reranker-v2-M3,以及论文所写 Gemma-300M + Qwen3-reranker-0.6B。
- 数据:BRIGHT 的 economics、psychology、biology、robotics。Table 8:查询数 103、101、103、101;文档数 50,220、52,835、57,359、61,961;每查询真值文档数 8.0、7.3、3.6、5.5。
- 攻击配置:替代与查询生成都是 Qwen-1.5-4B-Casual;默认词嵌入替代;通用实验为 10 个后缀 token。对全部真值文档注入后再检索。目标模型不是该替代模型。
- 基线:GCG、PRADA、Poisoned-RAG。三者有 ground-truth query;PRADA 另有受害模型查询访问,并用 10% 查询/文档做 LoRA。作者称这使比较偏向基线。附录 C.3 给出 Poisoned-RAG 提示,此处不复述。
- 指标:Recall@25/50 看真值文档是否进入前 25/50;NDCG@25/50 考虑位次。越低表示隐藏越成功。重排实验为 NDCG@25/50/100。无 LLM 评审。表注把下降小于 0.005 的结果标灰;正文写不低于 0.5% 视为攻击不足。
- 论文未报告:Table 2 使用的 |S|、GCG 内部的候选词数、重复次数和统计检验。耗时行写明 δ=10、20 个 epoch(Table 5)。
主结果
下表为 Table 2 四个数据集合的平均,越低表示攻击后越难检索到真值文档。
表格较宽,可左右滑动
检索器 原文 R@25 DQ-A R@25 原文 R@50 DQ-A R@50 Qwen-1.5-7B-Instruct 0.358 0.285 0.442 0.375 SFR-Embedding-Mistral 0.342 0.313 0.428 0.405 E5-Mistral-7B-Instruct 0.309 0.257 0.396 0.354 Embedding-Gemma-300M 0.319 0.298 0.419 0.399 Jina-Embeddings-v3 0.346 0.329 0.434 0.408 Granite-Embedding-r2 0.249 0.239 0.334 0.323 Qwen3-Embedding-0.6B 0.270 0.264 0.333 0.329 - 作者称 6/7 个检索器上四项平均指标都下降,Recall@25 约降 2%–10%、Recall@50 约降 1%–7%;并称这与“嵌入越准、迁移越容易成立”一致。仅 Qwen3-Embedding-0.6B 上,作者称本攻击与基线都难以形成足够效果,并分析它可能针对文档注入做过后训练,这可能也使其低于 Jinaai 与 Emb-Gemma。
- 作者称 DQ-A 的下降大于其他攻击。Table 2 有例外:Qwen3-Embedding-0.6B 平均 Recall@50 上 GCG 为 0.327,DQ-A 为 0.329。Granite-Embedding-r2 上 GCG 平均 Recall@25 为 0.265,高于原文 0.249。
- Poisoned-RAG 在 7 个检索器的平均 Recall@25 都高于原文,例如 Qwen-1.5-7B-Instruct 为 0.397(原文 0.358)。作者称它反而抬高受害文档,并认为生成任务按相关性工作,即使要求压低也可能写出相关 token。Robotics 上 Qwen-1.5 的 Recall@50 从 0.311 到 0.231,Jina-Embeddings-v3 从 0.371 到 0.318;作者称二者下降 8% 与 6%,约占原性能的 30% 与 20%。Qwen3 的 Economics Recall@50 从 0.344 到 0.359。
对抗学习与词嵌入消融
- 测了什么:Table 3 在 jina、Gemma、Qwen 上比较 S-GCG(采样查询、相似度求和,无对抗学习)、DQ-A-H(对抗学习但用最后隐层)和 DQ-A。数字是攻击后的 Recall,越低越强。jina 的 Economics 两格在文本抽取中错位,此处不写。
- 结果:Qwen、Economics 的 R@25 为 S-GCG 0.299、DQ-A(H) 0.289、DQ-A 0.223;同模型 Robotics 的 R@50 为 0.284、0.286、0.231。Gemma、Psychology 的 R@25 为 0.396、0.378、0.363。也有 DQ-A-H 更低的格子,如 Gemma、Robotics 的 R@25:DQ-A-H 0.238,DQ-A 0.251。
- 作者解读:DQ-A-H 总体比 S-GCG 降得更多,故对抗学习有效;DQ-A 略优于 DQ-A-H,主要效果仍来自对抗学习。少数 DQ-A-H 更弱时,作者分析学到的查询可能离开原主题簇,作为“拒出主题”的作用变弱。
重排器组合
- 测了什么:检索器先取前 25/50/100 篇,重排器再打分并报告 NDCG。Table 4 为 BGE-M3 与 BGE-reranker-v2-M3,以及 Gemma-300M 与 Qwen3-reranker-0.6B。
- 结果:BGE 组合 Economics 的 N@25/50/100 从 0.139、0.160、0.165 到 0.131、0.151、0.160。Gemma+Qwen3 的 Economics 从 0.212、0.230、0.263 到 0.182、0.200、0.234。Robotics 上该组合 N@25 从 0.175 到 0.181,N@50 从 0.188 到 0.183,N@100 从 0.211 到 0.203。
- 作者解读:作者称攻击作用在前一阶段,文档若未进候选池,后面的重排器再强也无效,因此重排不能防御。Robotics 的 N@25 上升是表中可见的例外,作者未单独解释。
困惑度与反向提升
- 困惑度:附录 B.1 称攻击提高了全部受害文档的困惑度(四数据集相对原文均为 100%)。超过原语料第 100 高困惑度的比例为 Economics 7.3%、Psychology 3.5%、Biology 11.4%、Robotics 2.7%;超过语料最大值的比例均为 0.0%(Table 7)。作者称即便盲删困惑度最高的 100 篇,攻击文档仍可能留下,故困惑度检测无效。计算困惑度的模型论文未说明。附录给出缩短样例,此处不复述 token。
- 反向提升:Discussion 在 economics 语料随机取一篇,把全部查询的真值改成它,Recall@50 为 0.00227,NDCG@50 为 0.00116。损失取反后升至 0.00601 与 0.00251。作者称约成倍,但仍有限,有待再改进。作者还区分:对不相关查询做提升可能可行;对相关查询争更高名次则不指望本方法,因为它追求“出组”而非“组内”相关。
- 定理近似:附录 A.2 把主题集收成 {q, d}。满足替代模型条件的元组中,再满足 f 上间隙的比例 pf0 为 Economics 80.0%、Psychology 69.7%、Biology 72.0%、Robotics 58.9%;pf0.05 为 7.6%、3.7%、0.9%、1.4%(Table 6)。作者称这可部分支持推导。
其他消融与分析
- |S|:作者称从 5 增到 10 时下降更多,从 10 到 15 时部分攻击变弱(Figure 5);图横轴刻度为 6、8、10、12、14,正文未给各点读数。作者推断 |S| 超过内在最优步长比后会变差。
- 注入长度 10–20:作者称效果只小幅波动(Figure 6),并称对段落嵌入而言,更长后缀未必比合适长度更能移动嵌入。各点读数正文未给。
- 位置(Gemma):作者称注入在中部最弱,首尾更强(Figure 7),并称这与 transformer 对开头和最近结尾注意力更高一致。正文无具体指标数字。
- 耗时:每 epoch 复杂度 O(|S|(|d|+δ)^2 Ddim + δV);δ=10、20 epoch 时单文档平均 23.065s(Table 5)。
- 主题簇:Table 1 中 Qwen-1.5-7B-Instruct 上 Chemical 的 p0 为 100%、p0.3 为 87.8%;Comedy 的 p0.3 为 0.0%。附录 E 中 Qwen 上 Chinese Politics 的 p0 为 1.3%,American Politics 为 22.2%。作者称多数主题有可观 pϵ。
有什么可以进一步探索的点?
作者计划改进反向提升与文档级防御,并呼吁不只做检索后检测。
作者指出的局限与后续方向
- 反向提升仍待改进:Discussion 称反向损失把 Recall@50、NDCG@50 提高后,效果仍 limited、缺少进一步打磨;作者计划今后改进并继续探索该反向方法。
- 尚无可用防御:Discussion 称就作者所知,目前没有适用于本攻击的防御;并计划把其他领域的子内容多数投票改造成文档级防御。
- 呼吁改防御焦点:Conclusion 称应发展不只做检索后检测、而是让检索本身更稳健的防御。
实验覆盖范围
- 主表受害检索器为 Qwen-1.5-7B-Instruct、SFR-Embedding-Mistral、E5-Mistral-7B-Instruct、Embedding-Gemma-300M、Jina-Embeddings-v3、Granite-Embedding-r2、Qwen3-Embedding-0.6B;数据为 BRIGHT 的四个子集,规模见 Table 8。
- 对照为 GCG、PRADA、Poisoned-RAG;三者使用 ground-truth query,PRADA 另有查询访问和 10% 数据的 LoRA。DQ-A 的学习与查询生成使用 Qwen-1.5-4B-Casual,默认词嵌入、后缀 10 token。
- 另有两组检索器+重排器(Table 4)、附录 B.1 的困惑度比较、Figure 5–7 的 |S|、注入长度与位置,以及 Table 5 的 δ=10、20 epoch 耗时。
- Discussion 有一次 economics 语料上的反向提升试验;附录 A.2 用 {q, d} 近似验证 Theorem 3.2。主题簇检查为 24 主题×10 篇(Table 1、附录 E)和 Figure 3 的四主题 PCA。
- 论文未报告主结果重复次数、统计检验,以及 Table 2 使用的 |S|。评测是 NDCG 与 Recall,未使用 LLM 评审。作者在 Discussion 说明语料投毒检测和检索后 RAG 防御针对的是已检索文档,因而不适用于本降低攻击。
总结一下论文的主要内容
DQ-A以无查询黑盒后缀压低LLM检索排名,并在BRIGHT上比较三种基线。
DQ-A 是一种 query-agnostic、complete black-box 的文档隐藏攻击,对象是用最后隐层相似度匹配的 LLM 检索。
- 问题:攻击者看不到查询、模型参数和文档库,只能像普通用户在受害文档末尾追加有限 token,使该文档更难进入 top-k。
- 方法:作者用主题簇定义 ϵ-pϵ-Precise 检索器,把替代模型上的迁移写成 min-max。Qwen-1.5-4B-Casual 既采样相关查询,也提供词嵌入相似度;GCG 只改文末 token 使其远离查询,同时把查询 token 拉向文档。同一后缀再零样本用于多个受害检索器。
- 主结果:BRIGHT 四子集平均上,Qwen-1.5-7B-Instruct 的 Recall@25 从 0.358 到 0.285,Recall@50 从 0.442 到 0.375(Table 2)。作者称 6/7 个检索器的四项平均指标下降,且总体大于带真查询的 GCG、PRADA。Qwen3-Embedding-0.6B 平均 Recall@50 从 0.333 到 0.329,作者称此处难以形成足够效果。
- 例外:Poisoned-RAG 的平均 Recall@25 在 7 个检索器上都高于原文。Robotics 上 Qwen-1.5 的 Recall@50 从 0.311 到 0.231。重排实验里多数 NDCG 仍下降,但 Gemma-300M+Qwen3-reranker 的 Robotics N@25 从 0.175 到 0.181(Table 4)。
- 作者结论:作者称同一注入可能同时影响多个检索器,并呼吁防御不要只做检索后检测。反向提升与文档级防御被作者留作后续。