跳到正文
原文
论文追踪· arXiv:2607.01276· Cedric Fitiavana Raelijohn, Sébastien Gambs, Jean-Francois Rajotte·本站收录 · 原文发表

研究者提出嵌入推断攻击 EIA,可在黑盒 IR 系统中识别所用嵌入模型

Embedding Inference Attack

论文速读

攻击

据论文 PDF 整理(AI 生成),以原文为准

作者提出EIA,在黑盒IR上用无序文档识别嵌入模型;k=3时1249条生成查询可区分(Table4)。

威胁模型黑盒API。攻击者可提交任意查询,只获得无序top-k文档,无排序、相似度或嵌入向量。

问题
嵌入模型常只经API提供,反演又通常要先知道用的是哪一个。作者研究黑盒IR:攻击者只看到无序检索文档,要从已知候选里认出嵌入模型;该信息还可能用于查询反演等后续攻击。
方法
EIA用Jaccard指数比较受害者与候选的无序top-k,淘汰分数高的查询用来排除错误候选。除按文档生成的问题外,还有随机字符串、非问题指令和探测系统本身的问题。对照包括reranker与余弦相似度阈值。
实验与结果
IR、k=3时生成查询有1249条可区分(Table4);三类对抗查询在k=3的IR与RAG上均为11(max11)。k=5时IR生成查询为4547(Table5)。相似度阈值0.75、k=3时生成查询为8(Table6)。
局限与可以继续做的
作者称未考察分块大小与重叠,并计划评估OpenAI、Google等闭源模型(Section9)。实验含13个开源嵌入模型与AnythingLLM上3个嵌入模型;隐藏文档块和加噪声无实验数字。
实验设置e5-small、e5-small-v2 等 · MS MARCO passage development、Alloprof 等 · Jaccard index、elimination score 等
威胁模型
黑盒API。攻击者可提交任意查询,只获得无序top-k文档,无排序、相似度或嵌入向量。假设文档集公开,且受害者嵌入模型属于已知候选。目标是推断ϕv。
被测模型
e5-smalle5-small-v2e5-basee5-base-v2e5-largee5-large-v2all-MiniLM-L6-v2all-mpnet-base-v2paraphrase-multilingual-MiniLM-L12-v2LaBSEparaphrase-multilingual-mpnet-base-v2gtr-t5-baseQwen3-Embedding-4Bnomic-embed-text-v1Qwen3 Vision 4B instructGemma3 1BLlama3.2 3bpHI-3.5 3.8BMistral 7b
基准
MS MARCO passage developmentAlloprofAnythingLLM
指标
Jaccard indexelimination scorediscriminative query countMRR@10Recall@1000Docs/Retrieval
AI 导读研究者提出嵌入推断攻击(EIA),在只观察到无序检索文档集合、没有排序和相似度分数的黑盒条件下,通过定制查询从已知候选模型中识别出系统实际使用的嵌入模型。该攻击在系统部署 reranker 作为潜在防御时仍保持一定区分能力,并在真实 RAG 系统中得到验证,定制查询绕过 LLM 拒绝非良构问题的倾向。作者还提出并评估了相似度阈值等缓解策略。

研究者提出嵌入推断攻击(EIA),在只观察到无序检索文档集合、没有排序和相似度分数的黑盒条件下,通过定制查询从已知候选模型中识别出系统实际使用的嵌入模型。该攻击在系统部署 reranker 作为潜在防御时仍保持一定区分能力,并在真实 RAG 系统中得到验证,定制查询绕过 LLM 拒绝非良构问题的倾向。作者还提出并评估了相似度阈值等缓解策略。

深度解读

6 个问题,点开问题读完整回答

  1. 这篇论文试图解决什么问题?

    在只看到无序文档的黑盒IR中,从已知候选识别嵌入模型。

    在只看到无序检索文档、看不到嵌入向量时,从已知候选中识别黑盒 IR 所用的嵌入模型。

    • 场景: 嵌入模型通常藏在 API 后;作者称反演攻击一般要知道受害者模型,而公开文档上的 RAG(如政策或中学生作业问答)使用户查询可能带出敏感信息,且不再依赖大量泄露的文本–嵌入对。引言还称,知道该模型还可能关联语料投毒、向量库成员推断和 SEO 攻击。
    • 现有缺口: 反演方法多要求嵌入向量、架构或泄露的文本–嵌入对。作者称,据其所知,这是首个在 IR 上、于 black-box 下推断嵌入模型的攻击。
    • 核心观察: 不同嵌入模型对同一查询可以返回不同文档集,不完全重合的查询可用来淘汰候选。作者假设文档来自公开来源,且候选集包含受害者模型。
    • 本文提出: 嵌入推断攻击(Embedding Inference Attack, EIA),用特制查询比较无序 top-k,从已知候选识别受害者模型,并考察 reranker 与相似度阈值下哪些查询仍可区分。另一部分在 RAG 中检验这些查询能否绕过 LLM 对非良构输入的拒答倾向。
    • 威胁模型:
      • 目标: 推断系统使用的嵌入模型 ϕv。
      • 知识: 论文称为 black-box,看不到嵌入向量、排序和相似度。假设文档集公开(文中举例 Wikipedia),某一候选即受害者;作者称厂商会公开可选模型及 API 标识。
      • 能力: 可提交任意问题,只得到 k 篇无序文档;集合只看成员,顺序不同仍视为相同。
      • 受害系统: 仅经 API 访问的 IR,同一 ϕ 编码查询与文档并按相似度返回 top-k。实验另包含 reranker 流水线与 RAG。
  2. 有哪些相关研究?

    相关工作覆盖模型窃取、LLM推断与嵌入反演;EIA不看嵌入向量。

    作者把 EIA 放在看不到嵌入向量、只比较无序文档集的设定里,并与模型窃取、LLM 推断和嵌入反演分开讨论。

    模型窃取

    • Dziedzic et al. (2023): 经只返回向量的黑盒 API 窃取句嵌入编码器;API 还可能暴露架构族(如 BERT 或 RoBERTa)及预训练数据。攻击者用相同架构或相同输出维度的公开 checkpoint,在任意开源文本的句对上训练。
    • Tamber et al. (2025): 攻击者只看到输入文本和输出嵌入,并可无限制调用嵌入 API,把商业嵌入模型蒸馏成本地 BERT 模型,并保留大部分检索性能。

    模型推断与相似性

    • Pasquini et al. (2024): 向受害者 RAG 发送少量特制查询,再用单独的 ML 模型,在 42 个 LLM 版本中预测作答者。作者转述其准确率超过 95%。
    • Caspari et al. (2024): 用 CKA 或文档检索比较嵌入模型,含有排序与无排序。作者转述:在作者所称相当于全库的大 top-k(3600 个文档块)上可见族内与族间簇;在 top-10 时模型间检索相似度低且变化大,表示相近仍可能返回差异很大的文档集。

    嵌入反演

    • Vec2Text、GEIA、TEIA: Morris et al. (2023)、Li et al. (2023)、Huang et al. (2024) 在泄露的文本–嵌入对或相似分布语料上训练反演模型或代理编码器。Table 1 中 TEIA 的编码器访问为 None,但仍需要小规模泄露对。作者转述,在其报告的全部数据集–编码器组合上,TEIA 的 Rouge-L 与嵌入余弦相似度高于其复现的 GEIA;例:QNLI、OpenAI 嵌入上 Rouge-L 从 0.1433 到 0.2226,余弦相似度从 0.2797 到 0.4772。
    • ZSInvert、ALGEN、Zero2Text: Zhang et al. (2025a)、Chen et al. (2025)、Kim et al. (2026) 少训练或免训练地由嵌入重建文本。Table 1 中 ZSInvert 不需训练数据但需要目标嵌入;ALGEN 需要少量泄露的受害者嵌入;Zero2Text 标为无泄露,并假设可黑盒查询编码器、看到输出向量。

    基线与数据

    • 实验对照: 实验未把上述反演或窃取方法当作对照。对照变量是 k、查询类型、是否使用 reranker,以及相似度阈值。数据为 MS MARCO passage development 与 Alloprof;RAG 实验使用 AnythingLLM。

    作者在 Section 3 末称,Table 1 中的反演攻击都需要访问嵌入模型,或需要一组泄露的文本–嵌入对。本文则不取嵌入向量,只凭无序检索文档,从已知候选中识别 IR 所用模型。

  3. 论文如何解决这个问题?

    用Jaccard比较无序top-k,再用高淘汰分数的查询识别模型。

    EIA 不读取嵌入向量,只比较受害者与候选返回的无序文档集,用能淘汰错误候选的查询识别 ϕv。

    问题设定与集合比较

    • 编码与相似度: 查询与文档由同一嵌入模型 ϕ 编成定长向量,系统按相似度取 top-k。实验只用余弦相似度;作者给出的理由是它不依赖向量模长,便于比较长度不同的高维文本嵌入。
    • 可见输出: 对查询 qi,攻击者只得到无序集合。顺序不同仍视为相同。受害者集合记为 Siv,候选集合记为 Sic。
    • 重合度量: Jaccard 指数 Ji=(|Siv∩ Sic|)/(|Siv∪ Sic|) 表示两集合的重合程度。作者将所有查询上 Ji=1 视为两模型相同的判据,并指出不同模型也可能在部分查询上达到 1。
    • 多候选: 对候选逐个比较,一直查询到只剩一个候选。

    暴力生成与淘汰分数

    • 按篇出题: 用 LLM 为受害者文档库中的每篇文档生成一个问题,再向系统查询,以少调用 API 来寻找能淘汰全部错误候选的问题。作者称这种暴力做法仍要生成并测试很多查询。
    • 淘汰分数: E(qi)=|{m∈ M∣ Ji(v,m)≠ 1}| 是检索集合与受害者不同的候选个数。作者称分数越高,区分能力越强。
    • 筛选: E(qi)=|M| 的查询可淘汰全部错误候选;分数更低的查询直接丢弃。

    三类对抗性查询

    • 随机字符串(Rnd. Str.): 任意字符序列。作者给出的理由是进入 LLM 训练未覆盖的嵌入区域。Section 4 有示例,此处不引用原串。
    • 非问题(Non-Q.): 指令而非问题。作者给出的理由是到达与文档无关的嵌入区域。
    • 探测查询(Prob. Q.): 用来获取受害者系统自身信息的问题。作者给出的理由是探查与模型相关的嵌入区域。Section 5.2 称 Prob. Q. 由攻击者手工构造。

    缓解策略

    • 相似度阈值: 在 IR 流水线上,查询与文档的余弦相似度低于预设阈值则丢弃该文档。作者将其作为针对 EIA 的防御来评估。
    • 另外两种讨论: 仅对 RAG,向用户隐藏检索到的文档块,或向检索集合加入随机或合成文档。前者被作者联系到检索块泄露与答案泄露,并称会降低透明度。后者作者称可能掩盖检索模式,同时引 Cuconasu et al. (2024) 称随机文档和无关干扰文档可能改变模型行为、降低答案质量。

    成功判定

    • 可区分: Ji≠1 表示检索不一致,视为潜在可区分。E(qi)=|M| 为可淘汰全部错误候选的查询。
    • 比较方式: 实验里候选与受害者都在作者搭建的流水线或 AnythingLLM 配置中运行,再比较各自的文档集。k、查询类型和 reranker 的配置见下一问。
  4. 论文做了哪些实验?

    IR上k=3时1249条生成查询可区分;RAG上三类对抗查询仍各为11。

    可区分查询的计数集中在 Table 4 与 Table 5;表未按单个嵌入模型分列。

    实验设置

    • 嵌入模型: Table 2 的 13 个开源模型,分 E5、English SBERT、Multilingual SBERT、T5 encoder、Qwen3 五族,维度 384 至 2560。轮流当受害者,其余为候选(Section 5.4)。
    • RAG 与生成侧模型: AnythingLLM 使用 all-MiniLM-L6-V2、nomic-embed-text-v1、e5-small,以及 Qwen3 Vision 4B instruct。拒答观察还包含 Gemma3 1B、Llama3.2 3b、pHI-3.5 3.8B、Mistral 7b。
    • 数据: MS MARCO passage development 取有 qrels 的 7400 篇(原述 7000 queries、8.8 million passages、7400 qrels);Alloprof 英语子集 585 篇(全库 30000)。与第 2 节假设一致,文档视为公开。
    • 查询与检索: 生成问题来自 Qwen2.5-1.5B-Instruct,另有 Rnd. Str.、Non-Q.、Prob. Q.;k 为 3 和 5,只用余弦相似度。reranker 为 cross-encoder/ms-marco-MiniLM-L6-v2,初始检索 25 篇。
    • RAG 配置: LanceDB,tokenization 1000、overlap 20,k=3。有 Chat 与 Query 两种交互,论文未按模式分开报告可区分条数。IR 流水线由作者托管,不是远程商业 API。
    • 指标: 成功由 Jaccard 与淘汰分数比较无序集合判定,无 LLM 裁判。防御侧在 MS MARCO 上报告 MRR@10、Recall@1000 和 Docs/Retrieval。论文未给出 Figure 1 的重复次数。

    主结果

    据 Table 4(k=3)与 Table 5(k=5)。Gen. Q. 的 max 为 7433,其余三类 max 为 11。破折号写为未报告。

    表格较宽,可左右滑动

    设置kGen. Q.Rnd. Str.Non-Q.Prob. Q.
    IR31249111111
    IR + reranker318609711
    RAG3未报告111111
    RAG + reranker3未报告111111
    IR54547111111
    IR + reranker54877111111
    • 作者对生成查询的说法: 作者称 k=3、IR 的 1249 条生成查询足以在全部被评估模型之间成功区分;该行三类对抗查询均为 11。表未按受害者模型分列,也未写数据集;Table 5 的 RAG 两行未报告。
    • k 的方向: 作者称减小 k 会降低、增大 k 会提高区分机会;IR 的生成查询在 k=5 为 4547。Figure 2 的曲线读数未出现在转换文本中。作者称这与 Caspari et al. (2024) 在较小 k 上、检索相似度随 k 增大而下降的观察一致。
    • reranker 与表的差别: 作者称受害者使用 reranker、候选不使用时,k=3 的表现提高(生成查询 1860)。作者又称 reranker 下对抗查询成功条数下降;Table 4 中 Rnd. Str. 为 9、Non-Q. 为 7、Prob. Q. 仍为 11。Table 5 中 k=5 的 IR 与 IR+reranker 三类均为 11,没有下降。

    RAG 上的交互

    • 测了什么: Section 6.2 在 AnythingLLM 上用 MS MARCO,攻击者只提交查询并观察返回的文档块。作者先观察到 Query 模式默认不做检索阈值过滤,除非用户指定;并称 Query 与 Chat 的检索行为在各类查询上相同。
    • 拒答与检索: 随机字符串在所列 5 个生成模型上,生成层一般都拒答,但检索仍返回 top-k 文档块。Non-Q. 是否带问号会改变生成回复(无问号时常澄清或拒答,有问号时常笼统肯定),检索仍返回文档块。Prob. Q. 同时触发生成与检索。
    • 作者的解读: 作者称这些查询绕过了 LLM 把输入不识别为良构问题而拒答的倾向。又称为,带 reranker 的嵌入模型与不带 reranker 的其他嵌入模型相比,对抗查询仍然可区分;对应计数见上表 RAG 行。

    相似度阈值

    • 可区分条数: Table 6 在 IR 上设余弦阈值。Gen. Q. 在 k=3 依次为 1247(0.25)、580(0.50)、194(0.60)、8(0.75);k=5 为 4545、2244、721、35。作者称 0.25 对生成查询影响很小,升至 0.6 后可区分查询减少。表未写数据集。
    • 对抗查询归零: 0.25 时 Rnd. Str. 为 9、Non-Q. 为 10、Prob. Q. 为 11(k=3 与 k=5 相同)。0.50 及以上三类均为 0。作者未对此单独解释。
    • 检索质量: Table 7 在 MS MARCO passage retrieval 上比较阈值。e5-large-v2 的 MRR@10 与 Recall@1000 在 0.00 至 0.75 保持 0.3587 与 0.9777。LaBSE 的 Recall@1000 在 0.00 为 0.5419、在 0.75 为 0.0007,MRR@10 从 0.0603 到 0.0005。作者称阈值应随检索模型调整。

    其他消融与分析

    • Figure 1:随机抽文档、生成问题、淘汰候选,直到只剩受害者;含 MS MARCO 与 Alloprof。作者称平均只需少量查询,转换文本无直方图读数。
    • gtr-t5-base、Table 7:MRR@10 在 0.00–0.60 为 0.3494,0.75 为 0.3405;Recall@1000 在 0.75 为 0.7690(0.00 为 0.9793);Docs/Retrieval 在 0.60 为 999.5、在 0.75 为 36.8。
    • all-MiniLM-L6-v2、阈值 0.75:MRR@10 0.2092,Recall@1000 0.3937,Docs/Retrieval 11.9(0.00 时 0.3046、0.9653、1000.0)。
    • paraphrase-multilingual-MiniLM-L12-v2、阈值 0.75:MRR@10 0.1460,Recall@1000 0.3397,Docs/Retrieval 29.7(0.00 时 0.1957、0.8586、1000.0)。
    • e5-large-v2、阈值 0.75:Docs/Retrieval 998.6(0.00 为 1000.0)。
    • LaBSE 的 Docs/Retrieval:0.50 为 47.3,0.60 为 1.0,0.75 为 0.0(Table 7)。
  5. 有什么可以进一步探索的点?

    作者称未考察分块大小与重叠,并计划扩展到闭源嵌入模型。

    Section 9 只写出两类后续事项:分块参数,以及闭源嵌入模型。

    作者指出的局限与后续方向

    • 分块参数: 评估没有考察文档 chunk size 与 chunk overlap 对攻击的影响;作者称后续可研究这些参数,以了解不同配置的稳健程度(Section 9)。
    • 闭源系统: 实验主要针对开源嵌入模型。作者称后续会把 EIA 扩到闭源与专有系统,例如 OpenAI 或 Google,以评估攻击是否仍然有效(Section 9)。

    实验覆盖范围

    • 嵌入模型: Table 2 的 13 个开源模型、五族,按 Section 5.4 轮流当受害者;k 为 3 和 5,相似度只用余弦。AnythingLLM 另使用 all-MiniLM-L6-V2、nomic-embed-text-v1、e5-small(Section 5.3)。
    • 数据与表: Section 5.1 使用 MS MARCO 的 7400 篇子集,以及 Alloprof 英语子集 585 篇。Figure 1 含这两个数据集。Table 4–6 未写数据集名。
    • RAG: Section 6.2 在 AnythingLLM 上用 MS MARCO、k=3;生成层观察包含 5 个 LLM。Chat 与 Query 未分开给出可区分条数。Table 5 的 RAG 行未报告。
    • 防御数字: Section 7 与 Table 6–7 报告阈值 0.25、0.50、0.60、0.75 下的可区分条数,以及 MS MARCO 上 5 个模型的 MRR@10、Recall@1000、Docs/Retrieval。隐藏文档块和加入随机或合成文档只在 Section 7 讨论,论文未报告这两项的实验数字。
    • 未给出的次数: 论文未给出 Figure 1 重复抽样的次数。reranker 实验使用 cross-encoder/ms-marco-MiniLM-L6-v2,初始检索 25 篇(Section 5.2)。AnythingLLM 的分块设置为 tokenization 1000、overlap 20(Section 5.3)。
  6. 总结一下论文的主要内容

    EIA用无序文档集的差异从候选中识别嵌入模型,并给出reranker与阈值下的计数。

    EIA 是在黑盒 IR 上识别所用嵌入模型的攻击。

    • 问题: 反演通常先要知道嵌入模型,而 API 后的系统往往不给向量;攻击者只能看到无序 top-k。作者的直接动机是反演可能泄露敏感的用户查询。
    • 做法: 用 Jaccard 比较受害者与候选的文档集,以淘汰分数留下能排除错误候选的查询。除按篇生成的问题外,还有随机字符串、非问题指令和探测查询。假设文档公开,且候选含受害者。
    • 主计数: Table 4 中 IR、k=3 的可区分生成查询为 1249(max 7433),作者称足以区分全部被评估模型;三类对抗查询均为 11。k=5 时该生成查询数为 4547(Table 5)。
    • reranker 与 RAG: k=3 且作者所称受害者使用 reranker、候选不使用时,生成查询为 1860,Non-Q. 为 7。AnythingLLM、k=3 上三类对抗查询仍为 11;所列 5 个生成模型拒答随机串,检索仍返回文档块。
    • 阈值: k=3、阈值 0.75 时生成查询为 8(Table 6)。Table 7 在 MS MARCO 上,e5-large-v2 的 MRR@10 至 0.75 仍为 0.3587;LaBSE 的 Recall@1000 在 0.75 为 0.0007。作者称阈值要按模型调整。
    • 作者结论: 作者称公开文档和已知候选放宽了反演对模型知识的假设。Section 9 称未考察分块大小与重叠,并计划扩展到闭源嵌入模型。
阅读原文arxiv.org