What Was Your Prompt? A Remote Keylogging Attack on AI Assistants
http://arxiv.org/abs/2403.09751
研究背景和问题:
(1) 实际应用场景和问题提出
大型语言模型 (LLM) 和基于聊天的 AI 服务(如 ChatGPT)的激增标志着数字领域的重大演变。这些技术不仅吸引了公众的想象力,而且已成为社会各个方面不可或缺的一部分。它们的实用性从回答简单的查询到协助复杂的决策过程,突出了它们的重要性和全球用户对它们的信任。 然而,研究发现,LLM 服务(包括流行的 ChatGPT-4 [1])处理数据传输的方式存在重大漏洞。LLM 以一系列token(类似于单词)的形式生成和发送响应,每个token在生成时从服务器传输到用户。当此流量被加密时,顺序令牌传输会产生一个新的侧信道:token长度侧信道。尽管进行了加密,但数据包的大小可能会泄露每个token的字符长度,从而可能允许网络上的攻击者推断出私人 AI 助手对话中共享的敏感和机密信息。
攻击者在利用token长度的侧信道时面临的挑战在于,从一系列token长度中准确推断文本的固有复杂性。这种困难主要是因为单个句子中的标记可以对应于大量语法正确的句子。此外,当目标是破译整个段落时,这项任务变得更具挑战性,从而大大增加了潜在的组合和解释。
(2)问题的研究意义
随着 AI 助手的使用变得越来越普遍,与它们共享的敏感性信息也越来越普遍。用户经常向这些助手寻求讨论个人事务,例如健康和卫生,或寻求机密任务的帮助,包括编辑敏感电子邮件或寻求商业建议。这一趋势凸显了对强大安全措施的迫切需求,以保护这些交互的隐私。
(3)问题的研究现状
以前对远程键盘记录器的研究利用了额外的侧信道(例如击键计时)来揭示有关已键入字符的信息。但大型语言模型 (LLMs) 在生成文本时是基于词汇的单位,而不是逐字符生成。这给传统的侧信道分析带来了独特的挑战。
(4)本文的研究动机和核心贡献
本文提出了一种token推理攻击,该攻击在破译加密流量中的响应方面非常有效。方法是训练最先进的 LLM 将token长度的序列翻译回清晰的句子。此外,通过向 LLM 提供先前推断的句子的上下文,LLM 可以进一步缩小可能的句子范围,从而减少推断整个段落所涉及的熵。最后,本文展示了对手如何利用 ChatGPT 等 LLM 的可预测响应风格和短语重复来进一步改进模型的准确性。这是通过使用来自目标 AI 助手的样本聊天来训练攻击模型来实现的,从而有效地创建一个已知的明文攻击场景,从而增强模型推断令牌序列的能力。这些示例聊天可以很容易地从公共存储库中获得,也可以通过作为付费用户直接访问 AI 助手服务来获得。
新颖的侧信道:确定了所有 LLM 模型中固有的新颖的旁信道,它会影响任何实时发送响应的基于 LLM 的服务。
token提取方法:提供框架,用于从加密的 LLM 响应流量中提取令牌长度的序列,并识别序列中的文本段(例如句子)。
单句token推理攻击:提出了有史以来第一次token推理攻击。训练一个 LLM 将标记长度的序列翻译成纯文本句子。据所知,这是第一个使用生成式 AI 执行侧信道攻击的工作。
多句token推理攻击:介绍了一种通过考虑句子间上下文来推断整个段落的技术。通过这样做,能够显著缩小可能的句子范围并提高推断信息的准确性。
对 LLM 的已知明文攻击:公开了一种新的攻击媒介,可用于改进令牌推理攻击。通过收集和分析来自目标 LLM(即 AI 助手)的示例响应,可以利用 LLM 的可预测样式以及 LLM 重复训练数据的趋势,以更好地推断明文。
曝光与展示:确定了几个容易受到这种攻击的主要供应商,并通过在OpenAI的ChatGPT-4和Microsoft的Copilot的加密网络流量上展示攻击的重要性。 本文不仅揭示了当前 AI 助手服务中的一个关键安全漏洞,还提供了一个全面的框架来理解和降低与令牌长度侧信道相关的风险。
技术框架或方法论:
(1)相关知识和基本原理
在自然语言处理 (NLP) 中,token是具有含义的最小文本单位。所有 token 的集合 K 是基于所处理内容预先确定的。当一句话被分词时,它被分解为一系列 token,表示为 S = (k1, k2, ..., kn),其中 S 是整个句子,ki ∈ K 是一个单独的标记。 AI 聊天机器人,如 ChatGPT,是专为参与人类语言交互而设计的复杂 LLM。其功能的关键是提示和响应: Prompt (P):提示是用户的输入,通常是问题或陈述,用于启动与 LLM 的交互。它表示为 pi ∈ K 的标记序列 P = [p1, p2, ..., pm]。 Response (R): 作为对提示的响应,LLM 会生成一个响应,也是一系列标记,表示为 R = [r1, r2, ..., rn] 表示为 ri ∈ K。 基于对话的 LLM 通过交替的提示和回复来管理对话,保持上下文以确保相关性和连贯性。模型会跟踪对话历史,从而能够在当前对话中根据上下文生成相关的回复。 LLM 在训练和执行过程中都使用 token。它们在大量的token化文本数据集上进行训练,以学习一个 token 在给定序列后出现的概率,这使得它们能够预测回复中的下一个 token。 在执行过程中,LLM 会顺序地生成回复 token。从提示开始,它根据提示和前面的回复 token [r1, r2, ..., ri−1] 来预测每一个后续的 token ri。这种方法 p(ri∣P, r1, r2, ..., ri−1)使得 LLM 能够生成具有上下文相关性和连贯性的回复,并考虑到整个对话历史。
(2)本文的方法概述
使用现代 LLM 进行推理:利用最先进的语言模型的功能。通过为我们的任务微调预先训练的 LLM,我们可以利用英语中普遍存在的通用语言结构和模式来减少句子熵。与以前依赖马尔可夫模型来利用相似侧信道的工作(例如[21])不同,LLM 更擅长这项任务,因为它们熟练地考虑标记之间的长距离关系 [31]。此外,我们采用自监督学习进行微调,无需手动标记,大大简化了数据集管理。
前文背景:如果我们知道之前的回复是什么,推断 token 序列的内容就会容易得多。例如,如果 Ri−1 是关于“how to apply itch cream,”的句子,那么 Ri 很可能会与止痒膏的应用相关。p(Ri∣Ti, Ri−1)其中Ri−1 是从 T i−1 推断出的响应。因此,通过为对手的 LLM 提供R i−1,我们可以大大减少段落熵。 只通过T或得文本很困难。但是,如果 T 是长序列的一部分(即段落中的句子),那么前一个已解决句子的上下文可以帮助我们更好地推断当前句子中的单词。例如,如果最后一句是关于“how to use itch cream”,那么下一句可能是关于“how often to use it”。此上下文可以帮助 LLM 模型进一步减少段落熵。
已知明文攻击:我们观察到 AI 助手服务中使用的 LLM 表现出不同的写作风格,有时会重复其训练数据中的短语,其他研究人员也赞同这一观点 [4,23]。识别此特征使我们能够进行类似于已知明文攻击的攻击。该方法涉及使用公共数据集或通过以付费用户身份发送提示来编译来自目标 LLM 的响应数据集。然后,可以使用该数据集进一步微调推理模型。因此,推理模型能够显著降低熵,有时甚至可以逐字完美地预测 T 的响应 R。
流量拦截:第一步涉及拦截用户和 AI 助手之间的加密流量。这可以通过窃听通过公共网络发送的流量或由 Internet 服务提供商 (ISP) 内的恶意行为者来实现。
消息识别:一旦流量被拦截,下一步就是提取消息大小。消息 m 是包含最新令牌和其他元数据的通信。为此,我们必须首先确定第一个消息包。这包括 (1) 删除所有不包含消息的数据包,以及 (2) 合并因太长而被拆分的数据包。结果是一系列消息大小。
序列提取:对于消息大小的序列,通过观察流的消息大小随时间的变化来提取令牌长度序列 T。根据服务器的令牌传输方法(无论它是否包含每个新令牌的所有先前令牌),可以采用两种不同的策略来提取令牌长度序列 T 。
序列分割:然后将提取的标记长度序列 T 划分为有序的片段 T 0 ,T 1 ,... ,其中 Ti 大致对应于一个句子。这是通过使用利用分词器行为的启发式方法来实现的。
响应推理:然后将片段序列传递给由两个 LLM(LLM A 和 LLM B)组成的模型,这两个 LLM 用于推断 R 的文本。LLM A 旨在从 T 0 重建第一个片段,LLM B 旨在使用前一个片段的推断文本作为上下文,从 T1、T2 等重建后续片段。我们采用两个 LLM,因为 AI 助手响应的首句通常遵循唯一的分布。通过专门为这些第一句话定制专用模型,我们提高了段落开头的准确性,这反过来又显著提高了段落中所有后续句子的推理质量。 鉴于 LLM 输出的随机性质,对于每个 Ti,我们生成多个输出并选择最可能的一个作为预测的响应段 Ri。然后将这些片段 R0,R1,..., 连接起来以构建完整的推断响应 R。
实验设计与结果分析
本文将攻击成功阈值设置为 φ > 0.5,在 GPT-4 的 10k 测试集响应中,在第一段上实现了超过 52.7% 的攻击成功率。它表明超过一半的用户对话可能会被暴露。此外,该模型能够以非常高的精度(φ > 0.9)重建 27% 的第一段。
结论与展望:
这项研究通过一种新颖的令牌长度侧信道攻击,揭示了 OpenAI 的 ChatGPT-4 和 Microsoft 的 Copilot 等 AI 助手中的一个关键漏洞,在重建和推断加密响应方面取得了重大成功。通过利用大型语言模型功能、上下文集成和已知的明文攻击技术,我们能够执行令牌推理攻击,该攻击可以暴露从这些助手发回的一半以上的响应。该研究强调了解决这一安全漏洞的重要性,并强调了大型语言模型更广泛的安全影响,指出需要在 AI 驱动的数字服务中加强隐私措施。