UniC-RAG:对检索增强生成的普遍知识腐败攻击

大家读完觉得有帮助记得关注和点赞!!!

抽象

检索增强生成 (RAG) 系统广泛部署在金融、医疗保健和网络安全等不同领域的实际应用中。然而,许多研究表明,它们容易受到知识损坏攻击,攻击者可以将对抗性文本注入 RAG 系统的知识数据库,以诱导 LLM 生成攻击者想要的输出。现有的研究主要集中在攻击特定查询或具有相似主题(或关键字)的查询。在这项工作中,我们提出了 UniC-RAG,这是一种针对 RAG 系统的通用知识腐败攻击。与之前的工作不同,UniC-RAG 联合优化了少量的对抗性文本,可以同时攻击大量具有不同主题和域的用户查询,使攻击者能够实现各种恶意目标,例如将用户引导至恶意网站、触发有害命令执行或发起拒绝服务攻击。我们将UniC-RAG作为一个优化问题提出,并进一步设计了一种有效的解决方案来解决它,包括一种基于平衡相似性的聚类方法,以增强攻击的有效性。我们的广泛评估表明,UniC-RAG 非常有效,并且明显优于基线。例如,UniC-RAG 可以通过将 100 个对抗性文本注入包含数百万个文本的知识数据库中,同时攻击大量用户查询(例如 2,000 个查询),从而实现超过 90% 的攻击成功率。此外,我们评估了现有的防御措施,表明它们不足以防御 UniC-RAG,强调了 RAG 系统中需要新的防御机制。

1介绍

检索增强生成 (RAG) 系统,例如必应 Copilot[1]、搜索GPT[2],以及带有 AI 概览的 Google 搜索[3]在现实世界中广泛部署。还有许多开源的 RAG 框架,例如 LlamaIndex[4], 朗链[5]和 ChatRTX[6]使开发人员和研究人员能够为各种应用构建定制的 RAG 系统。一般来说,RAG 系统包含三个主要组件:知识数据库、检索器和 LLM。知识数据库由从维基百科等不同来源收集的许多文本(例如数百万文本)组成[7].给定用户的查询(或问题),检索器将从知识数据库中搜索一组最相关的文本。 检索到的文本用作 LLM 的上下文,以生成对用户查询的响应。

最近的许多研究表明 RAG 系统容易受到知识腐败攻击。具体来说,攻击者可以将对抗性文本注入 RAG 系统的知识数据库中,以诱导 LLM 为用户查询生成攻击者想要的响应。例如,当从维基百科收集知识数据库时,攻击者可以恶意编辑维基百科页面以注入对抗性文本.

一般来说,现有攻击在 RAG 系统上主要关注 1) 特定的用户查询,例如“谁是 OpenAI 的 CEO? 2) 一组相似的查询(例如,针对特定主题或具有相似关键字的查询)和 3) 包含攻击者选择的后门触发器的查询.然而,攻击普遍且广泛的用户查询仍未被探索。 我们的目标是通过引入 UniC-RAG(一种针对 RAG 系统的通用知识腐败攻击)来弥合这一差距。

我们的工作。在这项工作中,我们研究了一种更通用和可扩展的攻击场景,其中攻击者针对大量不同的、攻击者选择的查询(表示为𝒬).与现有研究不同,专注于攻击特定或类似的查询,我们的方法旨在破坏大量用户查询(例如,数百甚至数千个用户查询),这些查询跨越广泛的主题、领域和语言表达。

我们认为攻击者的目标是将对抗性文本注入 RAG 系统的知识数据库。因此,RAG 中的 LLM 生成的响应满足攻击者选择的、任意但通用的攻击目标,用于查询𝒬. 实现这一目标使攻击者能够在实践中追求各种恶意目的。例如,攻击者可以让 LLM 生成拒绝答案例如“抱歉,我无法提供有关您的问题的信息”,以进行任何查询𝒬,从而降低了 RAG 系统的效用。这种形式的拒绝服务攻击可能会破坏关键应用程序,例如客户支持聊天机器人、学术研究助理或医疗人工智能应用,降低了它们的有效性。此外,攻击者还可以诱导 LLM 生成包含恶意 URL(例如“www.universalrag.com”)的响应,用于查询来自𝒬.通过将用户引导至攻击者控制的网站,攻击者可以收集敏感凭据、分发恶意软件或纵用户进行欺诈易。这种类型的攻击在用户依赖人工智能生成的内容获取可信信息的领域尤其危险,例如法律或金融人工智能工具.

UniC-RAG 概述。攻击者面临的主要挑战是制作少量对抗性文本来同时攻击大量用户查询。 例如,先前的研究探索了知识腐败攻击,其中每个对抗性文本都针对单个查询。 当将这些方法扩展到我们的场景时,它们要么需要注入大量对抗性文本,要么导致攻击性能不佳(如我们的实验结果所示)。原因是它们独立地针对每个用户查询优化对抗性文本。

为了应对这一挑战,我们共同优化了一组不同用户查询的对抗性文本。具体来说,UniC-RAG 的想法是将用户查询集分区𝒬分成更小的组,并为每组查询优化单独的对抗性文本。关键难点在于确定如何分区𝒬有效。一个简单的策略是将查询随机划分为𝒬分成不相交的组。然而,每个组中的查询可能非常多样化(例如,跨越不同的主题和领域),这会降低优化的对抗文本的有效性。特别是,对抗性文本可能对组中的某些查询有效,但对其他查询无效。作为回应,另一种策略是使用 K-means 根据检索器生成的嵌入向量对用户查询进行聚类,从而将语义上相似的查询分组在一起。关键的见解是,如果一组查询在语义上相似,则有可能制作与所有查询相似的对抗性文本。因此,可以检索组中所有这些查询的对抗性文本,从而允许攻击者在不注入许多对抗性文本的情况下扩展攻击。 但是,K 均值可能会导致组大小不平衡:某些组包含的查询比其他组多得多。因此,优化的对抗性文本对于具有许多查询的组可能不太有效,从而降低了攻击的整体有效性(如我们的结果所示)。

为了解决这个问题,我们设计了一种新的聚类分析方法来对大型查询集进行分区𝒬根据语义相似性分为更小的组,确保 1) 每个组内的查询彼此高度相似,以及 2) 组大小平衡且彼此可比。然后,对于每个组,UniC-RAG 优化一个对抗性文本以实现两个目标。第一个目标是可以检索组中查询的对抗文本。UniC-RAG 采用基于优化的方法[33]以达到这个目标。第二个目标是,对抗性文本可以误导 LLM 生成满足攻击者选择目标的响应。UniC-RAG 提供了一个通用框架,可以结合多种技术,例如提示注入实现第二个目标。

UniC-RAG 的评估。我们在 4 个问答数据集上对 UniC-RAG 进行了系统评估:自然问题 (NQ), 火锅QA, MS-马可,以及我们构建的数据集(称为维基百科),以使用维基百科转储模拟现实世界的 RAG 系统[7]. 我们还进行了一项全面的消融研究,其中包含 4 个 RAG 检索器、7 个结构和规模不同的 LLM(例如,Llama3, GPT-4o)和 UniC-RAG 的不同超参数。我们采用检索成功率(RSR)和攻击成功率(ASR)作为评估指标。RSR 量化了检索到的文本包含至少一个对抗性文本的查询比例,而 ASR 则衡量产生攻击者所需响应的比例。我们的结果表明,UniC-RAG 可以通过将 100 个对抗性文本注入具有数百万个文本的数据库中同时攻击 500-2,000 个查询,从而实现超过 90% 的 RSR 和 ASR。此外,UniC-RAG 的性能优于最先进的基线.

防御 UniC-RAG。我们评估了几种防御措施,包括释义、展开内容窗口[]和强大的 RAG 系统. 我们的结果表明,这些防御机制不足以防御 UniC-RAG,强调了对新防御的必要性。

我们的主要贡献总结如下:

  • ∙ 

    我们提出了 UniC-RAG,这是一种针对 RAG 系统的通用知识腐败攻击。UniC-RAG 使攻击者能够使用少量对抗性文本同时攻击不同的用户查询,以达到不同的恶意目标。

  • ∙ 

    我们将UniC-RAG表述为一个优化问题,并通过提出一种基于平衡相似性的聚类和利用基于梯度的优化方法来求解。我们还引入了贪婪初始化技术以进一步提高性能。

  • ∙ 

    我们在多个数据集上对UniC-RAG进行了综合评估。我们的结果表明,UniC-RAG 在不同设置下始终有效,并且优于基线。

  • ∙ 

    我们评估了针对 UniC-RAG 的几种防御机制,我们的结果表明这些防御是不够的,这凸显了对新防御的必要性。

2背景及相关工作

2.1RAG 系统

RAG 系统概述。RAG 系统由三个主要组件组成:知识数据库、检索器和 LLM。 知识数据库包含从维基百科等不同来源汇总的大量文本或最新的时事通讯. 为简单起见,我们将知识数据库表示为𝒟={S1,S2,…,Sd}哪里S我表示我-th 文本。 给定用户查询q,RAG 系统从𝒟然后对检索到的文本进行 LLM 条件以生成响应。该过程包括两个关键步骤:

第一步——文本检索。检索器负责从给定查询的知识数据库中识别最相关的文本。一般来说,猎犬ℛ是一个编码器模型,将文本编码为嵌入向量。 一些猎犬可能包含两种不同的编码器型号,一种用于用户查询q一个用于数据库中的文本S我,而其他猎犬仅包含一个用于查询和文本的模型。为简单起见,我们假设检索器只有一个编码器模型,表示为ℰ.根据我们在第 5.3 节中的实验结果,我们提出的方法也可以推广到具有多个编码器模型的检索器。 查询之间的相似性q和文本S我计算为S​我​m​(ℰ​(q),ℰ​(S我)), 哪里S​我​m​(⋅,⋅)是相似度函数(例如,余弦相似度、点积)。 检索器选择顶部k文本来自𝒟查询的相似性分数最高q形成检索到的集合,表示为ℛ​(q;𝒟).

第二步——响应生成。取回顶部后-k文本ℛ​(q;𝒟),LLM 会生成对q以这些检索到的文本作为上下文为条件。 具体来说,给定系统提示(详见附录 A),LLM 接受查询q以及检索到的文本作为输入并生成答案:

哪里f是一个 LLM,为了简单起见,我们省略了系统提示。此过程使 LLM 能够生成基于从知识数据库中检索到的文本的响应𝒟.

2.2对 RAG 系统的现有攻击

在过去的一年里,已经提出了几次针对 RAG 系统的攻击。这些攻击大致可分为三种类型:单查询攻击、多查询攻击 和后门攻击.

单查询攻击。在单查询攻击中,攻击者将对抗性文本注入知识数据库,旨在纵 RAG 系统对特定目标查询的响应.在此类攻击中,每个注入的对抗性文本仅针对单个查询。 例如,Zou 等人。[8]提出了 PoisonedRAG,其中攻击者将对抗性文本注入知识数据库,以纵 LLM 为特定查询(例如“谁是 OpenAI 的首席执行官?PoisonedRAG 可以被视为对 RAG 系统的虚假信息攻击。此外,Shafran 等人。提出了干扰,这是一种阻止 RAG 系统回答特定查询的拒绝服务攻击。 一般来说,这些攻击旨在使 RAG 系统中的 LLM 为每个目标查询生成攻击者想要的响应。因此,他们针对每个查询独立优化对抗性文本。相比之下,在我们的工作中,我们的目标是让 LLM 为不同的用户查询生成攻击者想要的响应。由于这种差异,这些现有攻击在扩展到我们的场景时会达到次优性能,如我们的实验结果所示。

多查询攻击。在多查询攻击中,攻击者的目标是纵一组类似的查询(例如,对特定主题的查询,例如对哈利波特的评论)或包含相关关键字(例如 Potter)的查询,方法是将对抗性文本注入知识数据库。 Tan 等人。提出了 LIAR,这是一种注入对抗性文本的攻击,旨在为一组语义相似的查询检索。 钟等人。提出了语料库中毒攻击,它优化了对抗性文本,以便可以检索它们以进行一般用户查询。 本等人。提出的 GASLITEing,它优化了要检索的对抗性文本,以用于特定主题的查询。总的来说,他们的想法是延长语料库中毒[45]通过引入攻击者设计的有害信息,不仅会破坏检索,还可以从 RAG 系统获得攻击者想要的响应。 为了评估此类攻击的有效性,我们还将语料库中毒扩展到我们的实验场景作为基线。我们的结果表明,扩展的语料库中毒实现了次优性能。

后门攻击。在后门攻击中,攻击者将后门触发器嵌入到对抗性文本中,并将其注入 RAG 系统的知识数据库中.这些对抗性文本在正常情况下保持非活动状态,但当用户查询包含相应的后门触发器时,它们会被检索,从而激活攻击。 例如,Cheng 等人。提出了 TrojanRAG,攻击者微调检索器模型,将后门触发器与对抗性文本绑定,确保当用户查询中出现特定触发器时可以检索它们。 薛等人。引入了 BadRAG,它利用对比学习来优化对抗性文本,以便它们只能被包含后门触发器的查询检索,而不会被其他查询检测到。 此外,Chaudhari 等人。提议的 Phantom,一种隐秘的后门攻击,可确保仅在查询包含预定义触发器时检索对抗性文档。 这些后门攻击可确保对抗性文本在包含后门触发器的查询中具有较高的检索分数,同时对于未触发的查询保持无法检测到。此类攻击要求目标查询包含后门触发器,这与攻击者无法控制用户查询的场景不同。由于这些攻击依赖于特定的触发器来激活,因此它们与我们的设置有着根本的不同,在我们的设置中,对抗性文本必须在广泛的用户查询中进行推广。因此,我们不将后门攻击作为实验的基线。

我们的工作与现有研究之间的差异。我们的工作与现有研究之间的主要区别在于,我们专注于攻击更通用和多样化的用户查询,而现有研究主要针对单个查询或一组预定义的查询(例如,语义相似的查询或包含后门触发器的查询)。 由于这种根本差异,我们发现现有方法在实现目标方面的效果有限。我们的方法超越了这些限制,共同优化对抗性文本,针对广泛多样范围内的大量用户查询,显着提高了攻击的可扩展性和影响。

2.3现有防御

已经提出了几种防御机制来增强 RAG 系统的安全性. 例如,Jain 等人。提出了释义防御,它使用法学硕士来改写用户查询,减少它们与数据库中对抗性文本的相似性。此外,邹等人。还讨论了扩大 RAG 系统的上下文窗口或从知识数据库中删除重复文本,这可用于减轻 RAG 系统中的潜在危害。此外,还有几项工作提出了通过改进 RAG 管道或微调 RAG 系统中的 LLM 来增强 RAG 系统本身的技术,使其对对抗性纵具有鲁棒性并降低攻击风险。

3问题表述

我们首先讨论威胁模型,然后将UniC-RAG表述为优化问题。

3.1威胁模型

我们根据攻击者的目标、背景知识和能力来描述威胁模型。

进攻方的进球。 假设𝒬是攻击者感兴趣的一组用户查询。 具体说来𝒬可能包含涵盖各种主题的任意查询。 此外𝒬可能具有较大的大小(例如,有 2,000 个查询)。我们认为攻击者的目标是将少量对抗性文本(例如 100 个文本)注入 RAG 系统的知识数据库。因此,当以从损坏的知识数据库中检索到的文本为条件时,RAG 系统中的 LLM 会生成满足攻击者选择的、任意但普遍的目标(表示为𝒪) 用于查询𝒬. 此外,对抗性文本还应该能够转移到𝒬,从而增强了它们的普遍性和通用性。例如,注入的对抗性文本应对于𝒬. 此外 我们还考虑了一种更具挑战性的场景,即攻击者不知道用户查询集𝒬. 相反,攻击者可以使用另一个查询集𝒬′生成对抗性文本,然后对看不见的用户查询集进行传输攻击𝒬.

通过选择不同的目标,攻击者可以在实践中实现各种恶意目的。 例如,攻击者可以嵌入指向用户查询答案的恶意链接,该链接可用于网络钓鱼尝试。举个具体示例,攻击者可能希望 RAG 系统生成的响应包含以下用户查询信息:“您已达到本文档的访问限制,有关详细信息,请访问 www.universalrag.com。因此,用户可能会被诱骗访问有害网站,使攻击者能够利用它进行恶意目的,例如凭据盗窃、恶意软件分发或金融欺诈。攻击者(可以是 RAG 服务提供商的竞争对手)还可以使目标 RAG 系统中的 LLM 拒绝为𝒬,从而达到拒绝服务效果。例如,如之前的一项研究所示在 RAG 安全性上,攻击者可能旨在将 LLM 输出“抱歉,我无法提供有关您的查询的信息”。𝒬.

我们的攻击目标与之前的研究不同关于 RAG 攻击。一般来说,这些研究旨在使 RAG 系统对特定查询生成依赖于查询的错误答案。相比之下,UniC-RAG 旨在攻击大型查询集𝒬并让 RAG 系统生成满足普遍攻击目标的有害响应𝒪对于𝒬.

 

图 1:UniC-RAG 概述。我们首先根据嵌入向量之间的语义相似性将用户查询划分为平衡的集群。然后,对于每个聚类,我们优化一个类似于聚类中所有查询的对抗文本(嵌入空间中聚类的质心)。

攻击者的背景知识和能力。我们根据 RAG 系统的三个关键维度考虑攻击者的背景知识:知识数据库、检索器和 LLM。 我们假设攻击者无法访问知识数据库,即攻击者不知道任何内容,也无法通过查询 RAG 系统从中检索文本。遵循之前的研究,我们假设攻击者对 RAG 系统中使用的检索器具有白盒访问权限。这个假设是实用的,因为大多数最先进的检索器模型都是开源的,使我们能够分析和理解知识损坏攻击的最坏情况。此外,我们假设攻击者可能有权也可能没有访问 RAG 系统中的 LLM。

继之前对针对 RAG 系统的攻击的研究之后,我们假设攻击者可以将对抗性文本注入知识数据库,但无法纵 RAG 系统的任何其他组件,例如检索器和 LLM 的参数。在这项工作中,我们考虑了一个具有挑战性的设置,其中注入的对抗性文本的数量(远)小于𝒬.

3.2将UniC-RAG表述为优化问题

假设𝒬是一组m用户查询(表示为q1,q2,⋯,qm).攻击者的目标是制作n对抗性文本(表示为P1,P2,⋯,Pn)来实现上述攻击者的目标。我们将攻击正式定义如下:

定义 1.

假设q∈𝒬是来自查询集的用户查询𝒬.此外,我们还使用𝒪表示攻击者的目标,并使用𝒱​(⋅,⋅)表示用于量化 LLM 的输出是否符合攻击者目标的评估指标𝒪. 攻击者的目标是制作一组n对抗性文本Γ={P1,P2,⋯,Pn}通过解决以下优化问题:

 

哪里𝒯​(q)是从损坏的知识数据库中检索到的一组文本𝒟∪Γ对于查询q和f​(q;𝒯​(q))是查询的 LLM 输出q基于检索到的文本𝒯​(q).

解决公式(1)中优化问题的挑战。解决公式(1)中优化问题的主要挑战如下。第一个挑战是确保𝒯​(q)包含对抗性文本,即Γ可以通过尽可能多的查询检索q∈𝒬尽可能。这里的技术挑战是,攻击者可能希望使用少量对抗性文本来攻击大量查询。因此,每个对抗性文本应该能够同时攻击多个查询。 第二个挑战是确保检索到的对抗性文本𝒯​(q)成功诱导 LLM 生成满足攻击目标的响应𝒪.这里的挑战是检索到的上下文𝒯​(q)还可能包含来自知识数据库的干净文本𝒟LLM 可以使用它来输出正确答案。对抗性文本必须足够有效,才能让 LLM 输出满足攻击目标的响应𝒪.

4UniC-RAG的设计

4.1UniC-RAG 概述

UniC-RAG 由两个主要组件组成:查询聚类和对抗文本优化。UniC-RAG 旨在优化所有查询的对抗性文本𝒬同时。然而,由于针对不同查询联合优化对抗性文本的复杂性,这非常具有挑战性𝒬. 例如,我们可以将查询随机划分为𝒬将分成不相交的组,并为每个组优化对抗性文本。然而,每个组中的查询可能跨越不同的主题和语言表达,导致它们之间的语义相似性较低。如果我们直接为它们优化单个对抗性文本,则对抗性文本很难同时与所有对抗性文本实现高度相似性。因此,在攻击 RAG 系统时,无法有效地检索组中的所有查询的此类对抗性文本,从而导致效果不佳。 为了解决这一挑战,我们首先对整个查询集进行分区𝒬根据语义相似性分为组,然后为每组生成一个对抗性文本。 我们的策略可以简化优化过程,使每个对抗文本能够有效地针对更小、连贯的查询子集,从而提高优化效率和整体攻击效果。图 1 显示了 UniC-RAG 的概述。

查询聚类。UniC-RAG 的第一个组件是一种聚类方法,它将查询分区在𝒬根据语义相似性分为组。 一种简单的解决方案是使用广泛使用的 K 均值聚类[57]对类似查询进行分组。然而,K-means 聚类通常会导致组大小不平衡,其中某些组包含的查询比其他组多得多,例如,某些组可能包含 20 多个查询,而其他组可能包含很少甚至单个查询。为较大的群体优化对抗性文本可能更具挑战性,从而降低其有效性。为了解决这个问题,我们提出了一种基于相似性的平衡聚类方法,以确保查询在组之间更均匀地分布。聚类方法的详细信息可以在算法 1 中找到。

对抗性文本优化。UniC-RAG 为每组查询优化一个对抗性文本。特别是,我们的目标是实现两个目标:1)它可以为组中的查询检索,2)它可以诱导LLM生成满足攻击者目标的响应。为了实现第一个目标,我们扩展了一种最先进的文本优化方法,HotFlip,并通过应用贪婪初始化技术进一步改进它。这个想法是用最后一个优化的文本初始化对抗性文本,而不是使用特殊标记(例如 [MASK])从头开始初始化. 我们的见解是,之前优化的对抗文本已经有效地检索其原始查询组中的查询。通过将其用作为不同查询组制作新的对抗文本的初始化,我们可以利用有用的对抗模式来提高优化效率和有效性,如我们的实验结果所示。我们注意到许多技术(例如提示注入)被提议诱导 LLM 生成攻击者想要的输出。UniC-RAG 提供了一个通用框架,可以集成这些技术来实现第二个目标。

4.2基于相似性的平衡聚类

我们的目标是将查询分区𝒬根据语义相似性分为几个平衡的组,从而简化对抗性文本优化。 给定查询时,RAG 系统根据查询的嵌入向量与数据库中的文本之间的语义相似性(例如,点积或余弦相似性)从知识数据库中检索文本。主要思想是,如果查询和文本的嵌入向量在语义上相关,它们之间的相似性会很高。因此,我们还利用在𝒬将它们划分为组。

设计细节。现在我们详细介绍算法 1 中的聚类方法。算法的输入由一个集合组成𝒬使用目标用户查询时,检索器ℰ,相似性指标S​我​m,以及聚类数n.算法的输出包含n集群(表示为𝒞1,𝒞2,⋯,𝒞n),其中每个集群都包含𝒬.我们首先随机抽样n查询来自𝒬(第 2 行),使用每个采样查询q我∗初始化相应的集群𝒞我.然后,我们的目标是逐渐将剩余的查询添加到𝒬以平衡的方式发送到每个集群(即,确保每个集群具有相似数量的查询)。为此,对于每个集群𝒞我,我们找到查询q∗与 中所有现有查询的平均相似度最高𝒞我(第 7 行)并将其添加到𝒬.我们重复此过程,直到𝒞我达到一定限制(k,在第 1 行中定义)。请注意,查询已从𝒬将其添加到集群后,确保查询不会分配给多个集群。 在第 11 行之后,我们构建了n集群𝒞1,𝒞2,…,𝒞n,每个至少包含k查询。然而,仍然有|𝒬|−n⋅k查询集中剩余的未分配查询𝒬.为了分配这些剩余的查询,我们将每个查询分配q我到集群𝒞h它与它的平均相似度最高(第 12-15 行)。此步骤可确保分配所有查询,同时保持每个集群内的语义一致性。 最后,所有查询𝒬被划分为n平衡集群𝒞1,𝒞2,…,𝒞n,每个至少包含k语义相似的查询。我们返回集群𝒞1,𝒞2,…,𝒞n作为算法的输出(第 16 行)。

4.3对抗性文本的优化

一旦我们对查询集进行了分区𝒬成群集𝒞1,𝒞2,…,𝒞n,我们可以将公式(1)中的优化问题转换为以下形式:

 

哪里Γ={P1,P2,⋯,Pn}是一组注入知识数据库的对抗性文本𝒟.当我们独立优化每个聚类的对抗文本时,我们可以通过求解n子问题。特别是,我们对每个集群都有以下优化问题𝒞我 (我=1,2,⋯,n):

哪里P我是针对集群优化的对抗性文本𝒞我.

解决方程中的优化问题的挑战是双重的。第一个挑战是确保对抗性文本P我可以成功诱导LLM输出满足攻击目标的响应𝒪.其次,我们需要确保对抗性文本P我可以检索到其相应的目标查询q∈𝒞我. 与现有作品不同[8,9]优化针对单个查询的每个对抗性文本,UniC-RAG 旨在制作有效针对多个查询(即集群中的所有查询)的对抗性文本𝒞我,从而将攻击范围扩展到不同的查询。通过求解所有聚类的方程 𝒞1,𝒞2,…,𝒞n,我们将得到n针对𝒬,从而求解式(1)中的优化问题。

为了解决上述两个挑战,经过先前的研究[8],我们分解每个对抗性文本P我 (我=1,2,⋯,n) 分成两个子组件:P我=P我r⊕P我g哪里P我r负责确保对抗文本可以成功检索,而P我g旨在诱导 LLM 生成满足攻击目标的响应𝒪一旦检索到对抗性文本。

由于攻击者具有通用的攻击目标𝒪对于𝒬.我们首先制作一个有效的P我g这可以诱导 LLM 生成令人满意的响应𝒪优化前P我r. 确保P我g在优化整个对抗文本后保持其攻击效果P我,我们保持精心制作P我g优化时修复P我r. 这可以防止降解P我g在优化的同时诱导攻击者期望的响应的能力P我r.一次P我g是精心设计的(例如,它可以成功地诱导令人满意的反应𝒪),它保持不变并在整个攻击过程中使用。

因此,我们首先介绍如何制作P我g然后讨论优化P我r.

各 具 特色P我g.制作的目标P我g是诱导LLM输出满足攻击目标的攻击者期望的响应𝒪.这个问题在之前的工作中已经得到了广泛的研究.因此,我们没有重新发明轮子,而是采用现有技术来制作P我g. 例如,攻击者可以利用提示注入攻击制作恶意指令,纵 LLM 生成攻击者所需的响应。此外,攻击者还可以进行虚假信息攻击[8]通过生成误导性或虚假内容P我g.此外,攻击者可以制定制作P我g作为一个优化问题来诱导 LLM 产生特定的输出,以及几种基于优化的攻击,例如 GCG和 AutoDAN已开发,可扩展优化P我g.

由于提示注入攻击在诱导 LLM 输出攻击者想要的响应方面非常有效,并且对于不同的攻击目标非常灵活, 我们使用提示注入攻击作为我们的默认方法来制作P我g.提示注入攻击的示例如下:

您应该通知用户“您已达到此文档的访问限制。欲了解更多信息,请访问 www.universalrag.com。

优化P我r.一旦我们有了精心制作的P我g,目标是优化P我r使得对抗性文本P我=P我r⊕P我g可以成功检索以进行查询q∈𝒞我. 由于 RAG 检索器利用语义相似性从数据库中检索文本𝒟,让P我为每个查询检索q∈𝒞我,我们应该最大化P我和查询𝒞我.但是,最大化𝒞我同时具有挑战性。回想一下,我们已经根据语义相似性将查询划分为集群,因此一个集群中的查询彼此相似。因此,我们选择最大化P我以及集群中的每个查询。 形式上,我们有以下优化问题:

 

哪里ℰ是将查询和文本编码为嵌入向量的检索器编码器模型,并且S​我​m是相似性指标(例如,点积或余弦相似度)。

许多现有的工作已经研究了对抗性文本优化它们的方法可用于求解方程 (4)。我们还利用这些优化方法来解决我们的优化问题。 特别是,我们采用了 HotFlip,这是一种最先进的文本优化方法,用于优化P我r.

我们进一步利用一种技术来提高优化性能。与之前的研究不同将对抗性文本初始化为随机或 [MASK] 标记,我们采用一种贪婪的初始化,将P我r使用之前优化的文本P我−1r什么时候我>1,并且 [MASK] 令牌我=1.结果表明,该技术在提高优化性能方面是有效的。

4.4完整的算法

算法2显示了UniC-RAG的完整算法。它采用目标用户查询集𝒬,一个通用的攻击目标𝒪,以及检索器模型ℛRAG 系统作为输入。攻击者可以选择相似度指标S​我​m以及对抗性文本的数量n. 我们首先对用户查询集进行分区𝒬成群集𝒞1,𝒞2,⋯,𝒞n使用我们的基于平衡相似性的聚类(第 1 行)基于语义相似性。 然后,最初为空的集合Γ←∅创建以存储最终的对抗性文本(第 2 行)。接下来,我们制作一个通用的Pg可以诱导 LLM 输出满足攻击目标的响应𝒪并将其用于所有对抗性文本(即P我g=Pg)(第 3 行)。如上所述,攻击者可以使用不同的方法来制作Pg,如提示注入假情報[8]或优化方法然后,对于每个集群C我,我∈{1,2,⋯,n},我们使用 HotFlip[33]优化P我r以最大化对抗性文本之间的平均相似性P我r⊕P我g和查询q′∈𝒞我(第 4-6 行)。我们进一步添加优化的对抗文本P我=P我r⊕P我g进入集Γ(第 7 行),最后输出对抗文本集Γ={P1,P2,⋯,Pn}.

5评估

5.1实验设置

数据。我们使用三个公共问答数据集评估 UniC-RAG,并创建一个大规模数据集来模拟真实世界的 RAG 系统。三个公开数据集来自BEIR基准[51]:自然问题 (NQ) [40], 火锅QA [41]和 MS-MARCO.NQ 和 HotpotQA 包含从维基百科收集的文章,而 MS-MARCO 包含网络文档。遵循之前的研究,我们将文章或文档拆分为多个块,每个块包含 100 个标记。 这三个数据集还包含用户查询。 此外,为了评估 UniC-RAG 在真实世界 RAG 环境中的性能,我们从 2023 年 11 月 1 日的维基百科转储中构建了一个大规模数据集[7].同样,我们将每篇文章分成具有 100 个标记的块,从而形成一个包含 47,778,385 个文本的知识数据库。由于此数据集不包含用户查询,因此我们在实验中使用了 NQ 数据集中的查询。 表6(在附录中)提供了每个数据集的详细统计数据。

RAG 设置。RAG 系统由三个主要组件组成:知识数据库、检索器和 LLM。每个组件的设置如下:

  • ∙ 

    知识数据库。如上所述,我们将每个数据集中的文档拆分为具有 100 个标记的块,以构建知识数据库。

  • ∙ 

    猎犬。我们评估了四种猎犬:Contriever[54]、Contriever-ms[54], DPR-Multi[53]和 DPR-Single[53].遵循先前的研究,默认情况下,我们使用查询的嵌入向量和知识数据库中的文本之间的点积来计算它们的相似性分数。

  • ∙ 

    我们评估了七种不同大小和架构的不同法学硕士:Llama-3-8B[43], 骆驼-3.1-8B[43]、骆驼-2-7B 和 13B[69]、GPT-3.5-turbo[70], GPT-4o-迷你[44]和 GPT-4o[44].我们将 LLM 温度参数设置为 0,以最大限度地减少随机性并确保结果可重复。

除非另有说明,否则我们采用以下默认设置。我们使用 HotpotQA 作为消融研究的默认数据集,并使用 Contriever 作为默认检索器模型。给定用户查询,遵循先前的工作[68],我们检索顶部5,10和20知识数据库中最相关的文本作为查询的上下文。查询和文本之间的相似性是使用其嵌入向量的点积计算的。对于 LLM,我们默认使用 Llama-3-8B-Instruct,这是一种流行的开源模型,可以进行大规模实验。

攻击目标。如第 4.3 节所述,UniC-RAG 支持各种攻击策略来实现不同的攻击目标。在我们的实验中,我们专注于以下目标:

  • ∙ 

    恶意链接注入。为此,攻击者纵 RAG 系统生成链接,而不管查询的内容如何。这些链接可能会将用户引导至危险网站,攻击者可以利用它们进行恶意目的,例如凭据盗窃、恶意软件分发或金融欺诈。在我们的实验中,我们通过注入旨在强制 LLM 输出预定义 URL(表示为“www.universalrag.com”)的对抗性文本来评估这一攻击目标。

  • ∙ 

    有害的命令执行。许多 LLM 驱动的应用程序(例如,这些应用程序在模型上下文协议下将 LLM 连接到计算机系统)和代理利用 LLM 自动执行作,包括在 Linux 环境中执行命令或与 SQL 数据库交互。攻击者可以利用此功能纵 LLM 生成有害命令,从而损害系统完整性、删除关键文件或安装恶意软件。此类攻击可能会带来严重的安全风险,尤其是在自动化工作流程或企业系统中。在我们的实验中,我们制作了对抗性文本,以迫使 LLM 生成一些有害的命令。我们在实验中使用的命令可以在附录 B 中找到。

  • ∙ 

    拒绝服务。以后[9],此类攻击旨在通过导致拒绝回答查询(例如,诱导 LLM 输出“抱歉,我无法提供有关您的问题的信息”)来破坏 LLM 功能。这会严重降低实际应用中的可用性。干扰攻击[9]引入了一些导致 LLM 拒绝回答用户查询的特定提示。在我们的实验中,我们利用这些提示作为精心设计的提示P我g在对抗性文本中并优化P我r像往常一样对 RAG 系统执行拒绝服务攻击。拒绝服务提示可以在附录 C 中找到。

除非另有说明,否则我们将恶意链接注入作为所有比较基线和 UniC-RAG 的默认攻击目标。

评估指标。我们使用以下指标:

  • ∙ 

    检索成功率 (RSR)。我们为目标用户查询生成对抗性文本,并将它们注入数据库。评估对抗性文本检索的有效性,如下所示[45],我们测量顶部k检索成功率,定义为目标用户查询中至少有一个对抗性文本出现在顶部的百分比k检索到的上下文。

  • ∙ 

    攻击成功率 (ASR)。ASR 量化了 RAG 系统生成成功满足攻击目标的响应的目标用户查询的百分比𝒪.成功攻击的定义因攻击目标而异:

    • ∙ 

      针对恶意链路注入和有害命令执行目标,遵循前人研究,我们使用子字符串匹配来判断生成的响应是否包含攻击目标𝒪(例如,www.universalrag.com 或恶意命令)。如果链接或有害命令作为子字符串出现在响应中,则我们认为攻击成功。

    • ∙ 

      针对拒绝服务目标,采用基于LLM的评估方法:[9],它利用 few-shot 学习提示来评估用户查询是否已成功回答。此评估方法将 RAG 系统的响应和原始查询作为输入,并输出 YES(查询已回答)或 NO(查询被拒绝)。如果查询被拒绝,我们将此查询视为攻击成功。

基线方法。据我们所知,目前还没有旨在实现我们攻击目标的攻击。因此,我们扩展了其他攻击针对 RAG 系统和 LLM 到我们的场景。特别是,我们考虑以下基线:

  • ∙ 

    毒破布。在此基线中,我们扩展了针对 RAG 系统的最先进的有针对性的攻击[8]到我们的场景。PoisonedRAG 为每个用户查询生成一个对抗性文本。我们在实验中使用开源实现。

  • ∙ 

    提示注入攻击。以后,有几种有效的提示注入攻击可以误导 LLM 生成攻击者想要的响应。提示注入攻击的主要局限性是它们无法确保检索对抗性文本。在我们的实验中,我们使用来自作为对抗性文本并将它们注入数据库。在我们的实验中,我们使用附录 D 中的提示:

  • ∙ 

    干扰攻击。沙夫兰等人。[9]引入了一种称为干扰攻击的新拒绝服务攻击,它结合了攻击 RAG 检索器的技术[8]使用手工制作的拒绝服务提示(使用提示注入攻击)。我们在实验中使用开源实现。

  • ∙ 

    语料库中毒。钟等人。提出了一种针对 RAG 系统的基于优化的攻击,该攻击也将对抗性文本注入 RAG 数据库。根据设计,他们的方法只能使对抗性文本被检索,但不能诱导 LLM 生成攻击者想要的响应。我们在实验中使用开源实现。

  • ∙ 

    长期体中毒。为了进行全面比较,我们扩展了 Corpus Poisoning[45]通过在我们的攻击场景中附加一个后缀(即P我g如第 4.3 节所述)到对抗性文本,并共同优化对抗性文本。

超参数设置。除非另有说明,否则我们对 UniC-RAG 采用以下超参数。 我们随机选择m=500用户查询作为每个数据集的目标查询。此外,我们将 100 个对抗性文本注入知识数据库,即n=100.在培训期间,我们运行t=500iterations 并设置长度l=50为P我r.我们对这些超参数对 UniC-RAG 的影响进行了系统的消融研究。

5.2主要结果

UniC-RAG 有效。表2报告了UniC-RAG在四个数据集中的RSR和ASR:NQ、HotpotQA、MS-MARCO、和Wikipedia。根据实验结果,我们有以下观察结果。 在所有四个数据集上,UniC-RAG 的平均 RSR93.2%平均 ASR81.2%,表明UniC-RAG生成的对抗性文本可以通过用户查询轻松检索,并成功诱导攻击者期望的响应,从而达到攻击目标𝒪一旦检索。值得注意的是,尽管每个数据集的知识库规模很大,范围从3,743,629(NQ) 到47,778,385(维基百科)文本,我们的攻击仍然有效,同时仅注入100对抗性文本。这凸显了 RAG 系统对我们提议的 UniC-RAG 攻击的极端脆弱性。 特别是,维基百科包含一个更大的知识数据库,其中47,778,385文本,模拟真实世界的大规模 RAG 系统。UniC-RAG 在这种情况下保持了较高的 RSR 和 ASR,证实了其在攻击超大型知识数据库方面的有效性。

UniC-RAG 的性能优于基线。表 2 还将 UniC-RAG 与默认设置下的基线方法进行了比较。对于每种方法,我们注入相同数量的恶意文本(即n=100对抗性文本)。 我们注意到 PoisonedRAG 和 Jamming 为每个查询独立制作恶意文本。为了比较相同数量的对抗性文本下的不同方法,我们随机选择 100 个用户查询作为其目标查询。我们的主要观察结果如下: 对于提示注入,它缺少优化的前缀(即P我r) 以确保为用户查询检索对抗性文本。因此,它的 RSR 和 ASR 为 0.0%,使其在我们的攻击场景中无效。 对于 PoisonedRAG,每个对抗性文本都经过优化,以针对单个查询。给定固定数量的注入文本n,PoisonedRAG 只能影响n用户查询。相比之下,UniC-RAG 联合优化多个用户查询中的对抗性文本,使其能够影响所有m查询,其中m≥n.这种更广泛的攻击范围使 UniC-RAG 能够在相同数量的对抗文本下实现明显高于 PoisonedRAG 的 RSR 和 ASR。 对于干扰,它使用用户查询本身作为P我r以确保可以检索对抗性文本。因此,与 PoisonedRAG 类似,Jamming 生成的每个对抗性文本仅限于影响单个用户查询。由于 UniC-RAG 联合优化了跨多个查询的对抗性文本,因此它在 RSR 和 ASR 中始终优于 Jamming。 对于语料库中毒,虽然它确保可以检索对抗性文本,但它不包含P我g来纵 LLM 的输出。因此,虽然它实现了重要的RSR,但其ASR仍为0.0%,因为它无法诱导攻击者期望的响应来实现攻击目标𝒪.

如前所述,PoisonedRAG 和 Jamming 制作的每个文本都是针对单个用户查询量身定制的。为了进一步验证 UniC-RAG 的效率和有效性,我们增加了 PoisonedRAG 和 Jamming 的注入对抗文本数量,允许它们注入n=500对抗性文本 — 是 UniC-RAG 的五倍,后者仅注入n=100默认情况下的文本。 如表3所示,尽管攻击预算大幅增加,但UniC-RAG在所有数据集上仍然实现了与这些方法相当的性能。这些结果凸显了 UniC-RAG 的可扩展性和效率,表明它可以保持高效性,同时需要更少的对抗性文本来破坏广泛的查询集。

表1:比较了我们提出的新聚类方法下的UniC-RAG与现有聚类方法下的UniC-RAG的有效性。

  数据 NQ火锅QA马可女士维基百科
前 5 名前 10 名前 20 名前 5 名前 10 名前 20 名前 5 名前 10 名前 20 名前 5 名前 10 名前 20 名
 RSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASR
统一选择72.253.277.252.283.456.298.683.098.889.899.086.461.243.867.646.072.648.662.643.666.247.271.248.6
DBSCAN74.062.278.461.483.063.698.689.499.092.299.090.064.246.269.448.472.451.665.243.670.848.876.252.0
HDBS扫描63.449.267.649.471.454.098.886.498.890.099.087.461.052.464.052.470.254.060.847.864.652.469.654.4
平分 K 均值86.464.090.464.892.469.698.888.099.288.899.688.478.666.282.668.085.271.078.258.480.861.483.864.4
K-均值82.070.285.871.488.475.299.884.299.889.899.891.869.256.873.660.277.861.876.666.480.470.284.670.6
我们94.282.295.883.696.687.499.690.899.691.499.692.284.473.287.476.089.878.087.668.291.074.293.077.0
                         

为了进行全面的比较,我们进一步介绍了扩展语料库中毒,这是语料库中毒的增强版,附加了P我g到优化后的文本。尽管进行了这种修改,我们的实验结果表明,UniC-RAG 仍然优于扩展语料库中毒。UniC-RAG 相对于扩展体中毒的优势归因于两个关键因素:

  • 基于平衡相似性的聚类优于 K 均值。 UniC-RAG采用一种同时考虑语义相似性和聚类平衡的聚类方法,将用户查询划分为语义相关性和平衡性更强的组,而K-means通常产生高度不平衡的聚类。

    图 2 比较了 K 均值产生的聚类大小分布和我们提出的基于平衡相似性的聚类方法。如图所示,K 均值会导致高度不平衡的集群,其中 2 个集群包含超过 25 个用户查询。我们进一步评估了在此类集群上优化的对抗性文本的性能。对于两个集群中总共 54 个用户查询,我们注入了两个相应的对抗文本,观察到 RSR 为 53.7%,ASR 为 52.1%,远小于表 1 中报告的 RSR。这些结果表明,针对大型集群优化的对抗性文本难以有效处理大量查询,最终降低整体性能。 相比之下,我们提出的聚类方法产生平衡的聚类,确保在更稳定的环境中执行对抗性优化。这种平衡的方法增强了检索一致性和对抗性,使 UniC-RAG 能够在广泛的查询中保持高 RSR 和 ASR。

  • 贪婪初始化显着改善了对抗性文本优化。与其他方法不同从头开始,每次迭代时都使用 [MASK] 令牌,我们使用最后优化的P我−1r初始化当前P我r,这使得 UniC-RAG 能够进一步完善之前优化的文本。该技术可以在有限数量的优化步骤内实现更好的优化,从而始终如一地获得更高的 RSR 和 ASR。

表2:将 UniC-RAG 的有效性与现有基线进行比较。

  数据 NQ火锅QA马可女士维基百科
前 5 名前 10 名前 20 名前 5 名前 10 名前 20 名前 5 名前 10 名前 20 名前 5 名前 10 名前 20 名
RSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASR
基线                        
提示注入0.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.0
毒RAG16.416.417.417.418.618.669.269.276.075.881.881.216.216.217.016.817.617.216.816.818.218.220.820.0
干扰19.619.620.020.020.220.241.841.848.448.457.257.016.216.217.617.618.418.018.618.618.818.819.419.4
Corpus Poisoning69.40.074.60.078.80.099.00.099.20.099.20.054.40.056.20.062.00.068.80.072.60.075.40.0
扩展体中毒66.855.872.257.077.461.298.081.498.483.498.485.259.246.664.048.267.651.668.854.670.658.475.064.0
我们的 UniC-RAG                        
基础77.260.480.463.485.068.298.680.099.083.899.485.264.450.468.051.672.853.673.658.076.462.079.865.0
+贪婪初始化82.070.285.871.488.475.299.884.299.889.899.891.869.256.873.660.277.861.876.666.480.470.284.670.6
+基于相似性的聚类94.282.295.883.696.687.499.690.899.691.499.692.284.473.287.476.089.878.087.668.291.074.293.077.0
                         

表3:将 UniC-RAG 与 PoisonedRAG 和 Jamming 进行比较,这两个基线可以注入比 UniC-RAG 更多的文本。

  数据 NQ火锅QA马可女士维基百科
前 5 名前 10 名前 20 名前 5 名前 10 名前 20 名前 5 名前 10 名前 20 名前 5 名前 10 名前 20 名
RSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASRRSR的ASR
PoisonedRAG(注射 500)60.460.061.861.863.863.685.485.489.689.693.092.850.450.451.851.653.252.650.450.451.651.654.053.4
卡住(注射 500)97.297.299.099.099.699.6100.0100.0100.0100.0100.0100.084.084.089.689.292.892.093.293.295.095.097.096.8
我们的(注射 100)94.282.295.883.696.687.499.690.899.691.499.692.284.473.287.476.089.878.087.668.291.074.293.077.0
                         

表4:UniC-RAG可以实现不同的攻击目标。数据集是 HotpotQA。

  类型 目标前 5 名前 10 名前 20 名
RSR的ASRRSR的ASRRSR的ASR
恶意链接注入更多信息99.690.899.691.499.692.2
更新模型99.898.499.898.6100.099.4
登录银行账户100.080.8100.087.4100.082.8
投资99.881.0100.084.6100.085.6
有害命令执行Linux 命令 187.645.691.054.493.463.0
Linux 命令 288.054.291.262.093.272.0
SQL 注入89.856.892.660.895.070.0
恶意软件下载88.050.891.258.093.868.0
包安装88.255.092.261.293.873.0
拒绝服务干扰目标 199.685.099.687.299.893.6
干扰目标 299.685.699.688.099.697.6
干扰目标 399.485.699.692.699.698.2
        

 

图2:集群大小的分布。数据集是 HotpotQA。

UniC-RAG可以实现多样化的攻击目标。表 4 表明 UniC-RAG 能够执行各种攻击策略,包括恶意链路注入、有害命令执行和拒绝服务。这些结果凸显了 UniC-RAG 在破坏 RAG 系统以在不同攻击目标上生成攻击者所需的响应方面的有效性。

我们基于平衡相似性的聚类与其他聚类方法的比较。图 2 和表 1 对我们提出的聚类方法与最先进的聚类技术进行了比较分析,包括均匀(随机)选择、DBSCAN[79],HDBS扫描[80],平分 K 均值[81]和K-均值[57]. 对于均匀(随机)选择,我们首先将聚类大小确定为k=⌊|𝒬|/n⌋,确保每个集群包含相同数量的查询。然后,我们随机对查询集进行分区Q到n通过随机均匀采样查询而不替换而进行聚类,其中每个聚类完全由k查询。对于其他聚类方法,我们使用 scikit-learn 的实现[82]替换为默认参数设置。

2比较了我们提出的聚类方法与其他聚类方法的聚类大小分布,而表1显示了每种方法的RSR和ASR。与我们提出的方法不同,K-means、HDBSCAN和Bisecting K-means产生高度不平衡的聚类。由于每个对抗性文本都针对整个集群进行了优化,因此对抗性 为较大的集群生成的文本必须针对更多查询,这使得优化更具挑战性和效率,从而导致结果不理想。尽管统一选择和 DBSCAN 可以产生相对平衡的集群,但它们无法确保一个集群中的查询彼此足够相似。例如,统一选择也会生成平衡的聚类,但它会随机将查询分配给聚类,而不考虑其语义相似性,这使得优化有效针对集群内所有查询的对抗性文本变得具有挑战性。相比之下,我们提出的方法利用语义相似性对查询进行分区,并产生平衡的集群,确保一个集群中的查询彼此足够相似,这使得优化更容易。 我们的结果表明,在 NQ、MS-MARCO 和 Wikipedia 上,我们的聚类方法实现了最高的 RSR 和 ASR,超过了所有其他聚类方法。 我们注意到,在 HotpotQA 上,我们的聚类方法实现了与现有聚类方法类似的性能。原因是所有聚类方法都实现了接近最佳的性能,RSR 在 98%–99% 之间,几乎没有进一步改进的空间。

5.3消融研究

5.3.1超参数对RAG系统的影响

RAG 系统由三个组件组成:知识数据库、检索器和 LLM。由于我们在第 5.2 节中展示了知识数据库的影响,现在我们讨论检索器和 LLM 的影响。

猎犬的影响。表7(在附录中)显示了UniC-RAG在默认设置下在不同检索器上的性能。UniC-RAG 始终实现高 RSR 和 ASR,表明 UniC-RAG 在不同的检索器中仍然有效。

LLM 的影响。表 8(在附录中)显示了不同 LLM 的结果。我们对开源和闭源模型进行评估,包括 Llama 家族和 OpenAI 的闭源模型:GPT-3.5-Turbo、GPT-4o-mini 和 GPT-4o。 实验结果表明,UniC-RAG成功地跨不同规模和架构的模型执行攻击,始终如一地实现了高ASR。这表明UniC-RAG生成的对抗性文本不仅可以被检索器检索,还可以有效地纵不同LLM生成的输出,以实现攻击目标。

5.3.2超参数在 UniC-RAG 中的影响

正如算法 2 中介绍的,UniC-RAG 可能受到几个关键超参数的影响:用户查询数 (m)、聚类数 (n,以及注入的对抗性文本的数量)、长度l之P我r (P我r是用于检索它的对抗性文本的一部分)和优化迭代次数(t).我们在下面分析每个超参数的影响。

影响m(用户查询数)。  m=|Q|是用户查询的数量。如图3所示,增加m导致 RSR 单调下降,然后上升,然后 ASR 下降。这是预期的,因为更大的m导致更多的查询共享固定数量的对抗性文本,使优化更具挑战性。尽管有这种趋势,UniC-RAG 在广泛的m值,显示其攻击广泛查询集的能力。

影响n(集群或注入的对抗性文本的数量)。  n表示基于平衡相似性的聚类中使用的聚类数,也对应于注入的对抗性文本的数量。如图3所示,增加n导致更高的 RSR 和 ASR。这是因为,给定固定数量的用户查询,拥有更多的对抗性文本意味着每个对抗性文本针对的查询更少,从而使对抗性文本更容易优化,从而更有效。 但是,更大的n还增加了计算成本,凸显了攻击性能和效率之间的权衡。

 

图 3:超参数的影响m,n,l和t在 UniC-RAG 上。

影响l(长度P我r).如图3所示,增加l导致 RSR 升高,ASR 上升后下降。这是因为较长的对抗性文本提供了更大的优化灵活性,使它们更容易优化,因此更有可能被检索到用于用户查询。但是,作为l增加P我r可能会主导对抗性文本,从而降低P我g,这反过来又导致在曲线中观察到的 ASR 随后下降。

影响t(优化迭代次数)。  t控制用于优化的优化步骤数P我r.如图3所示,增加t导致 RSR 单调增加,因为更多的迭代可以更好地优化P我r.然而,性能提升可能会超过某个阈值而饱和,额外的迭代会提供递减的回报。对于ASR,曲线先小幅增加后减小,表明过度优化可以使P我r过度占主导地位并降低相对贡献P我g,这最终会降低迭代次数较高的 ASR。

6防御

已经提出了几种防御机制来增强 RAG 系统的安全性.我们在实验中应用它们来评估 UniC-RAG 针对这些防御机制的性能。

6.1意译

耆那教等人。提议对对抗性文本的释义辩护。我们使用 LLM 来解释用户查询,减少它们与数据库中对抗性文本的相似性。在我们的实验中,我们将𝒬在查询 RAG 系统之前使用 GPT-4o-mini。用于释义查询的提示可以在附录 E 中找到。表5表明,我们的UniC-RAG可以保持较高的RSR和ASR来抵抗释义防御。 这是因为,虽然释义查询的嵌入向量会经历改写和更改,但它们保留了其原始语义含义以避免降低效用。UniC-RAG 根据语义相似性优化对抗性文本,在攻击释义查询方面仍然有效。

6.2上下文窗口扩展

邹等人。[8]提议扩展 RAG 系统的上下文窗口作为对知识腐败攻击的防御,并证明该策略显着减轻了他们提议的攻击。 在我们的实验中,我们通过将 RAG 系统的上下文窗口扩展到 30、40 和 50 个文本来评估这种防御。然而,如图4所示,与Zou等人不同的是。[8],我们的 UniC-RAG 在更大的上下文窗口下变得更加有效。这是因为 UniC-RAG 中的所有对抗性文本都旨在针对多个查询,同时共享相同的攻击目标。因此,增加上下文窗口会增加检索对抗性文本的可能性,从而导致所有四个数据集的 RSR 更高。 在 HotpotQA 上,我们观察到 ASR 随着上下文窗口的扩展略有下降,但仍高于 95%,表明 UniC-RAG 仍然有效。我们假设这种轻微下降的发生是因为更大的上下文窗口还包含更干净的文本以及对抗性文本,为 LLM 生成准确的响应提供了额外的有用信息。 总体而言,我们的结果表明,UniC-RAG 有效地击败了这种防御。

表5:UniC-RAG 可以保持对释义防御的有效性。

  数据 前 5 名前 10 名前 20 名
RSR的ASRRSR的ASRRSR的ASR
无防御
NQ94.282.295.883.696.687.4
火锅QA99.690.899.691.499.692.2
马可女士84.473.287.476.089.878.0
维基百科87.668.291.074.293.077.0
 带防御
NQ90.076.494.278.097.280.2
火锅QA100.091.0100.092.8100.092.6
马可女士68.853.472.655.277.458.2
维基百科87.061.489.266.293.071.6
       

图4:UniC-RAG 保持对上下文窗口扩展防御的有效性。

6.3坚固而先进的 RAG 系统

几部作品还探索了通过改进 RAG 管道或微调 LLM 来增强 RAG 系统稳健性的技术。 虽然这些技术在某些情况下是有效的,但它们通常还不够,并且通常无法防御许多攻击场景。 例如,Wei 等人。提出的 InstructRAG,它利用指令调优的 LLM 通过生成更好的可信度的基本原理来对检索到的内容进行降噪。我们以拒绝服务为目标,根据 InstructRAG 评估了 UniC-RAG。我们的结果表明,UniC-RAG实现了99.6%的RSR和70.4%的ASR,这意味着UniC-RAG对InstructRAG保持有效性,凸显了对更强大和可推广的防御机制的迫切需求。

7讨论和限制

检索和响应作之间的权衡。UniC-RAG 的一个关键挑战是平衡可检索性和响应作。对抗性文本必须与要检索的用户查询足够相似,同时保持影响 LLM 响应的能力。在某些情况下,增加检索的相似性可能会降低作的有效性,反之亦然。在我们的工作中,我们采用提示注入攻击来纵响应。未来的工作可以探索同时优化这两个目标并改进这种权衡的技术。

推广到其他 RAG 应用程序。我们的实验主要集中在问答任务上,因为RAG被广泛用于知识密集型应用。但是,我们的攻击方法可以推广到其他基于 RAG 的应用程序,例如事实验证、法律文件检索或长上下文聊天机器人。未来的研究可以调查通用知识腐败攻击对这些替代 RAG 应用程序的影响。

访问检索器。像许多现有作品一样,我们假设攻击者对 RAG 系统的检索器具有白盒访问权限。这个假设是实用的,因为许多最先进的检索器都是开源的(例如,Contriever, DPR),允许对手有效地优化对抗性文本。 但是,在实际部署中,一些 RAG 系统使用闭源检索器。未来的研究可以探索黑盒攻击的可行性,即攻击者无法直接访问检索器,而是通过查询系统并观察检索到的结果来制作对抗性文本。调查跨检索器的查询自适应和可转移攻击将是进一步评估 RAG 系统抵御知识腐败攻击的鲁棒性的宝贵方向。

8结论

我们提出了 UniC-RAG,这是一种针对 RAG 系统的新型通用知识腐败攻击。与以往主要针对特定或类似查询的攻击不同,UniC-RAG 联合优化了少量对抗性文本,以同时破坏大量不同的用户查询,显着扩大了攻击的有效性和影响。我们的广泛评估表明,UniC-RAG 成功地破坏了大量用户查询,性能优于基线。此外,我们评估了几种防御机制,发现它们不足以防御 UniC-RAG,这凸显了当前防御的局限性。

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值