GenAI系统对抗性机器学习中的攻击分类如图2所示。与图1中的PredAI分类类似,GenAI攻击首先按攻击者的目标进行分类,包括破坏可用性、破坏完整性和隐私泄露。对于GenAI系统,滥用也特别重要。攻击者实现其目标的必备能力在圆圈外环显示。攻击类型用引线标注,与所需的攻击能力相连。多种攻击类型为实现相同目标所需要的能力如果相同,则仅使用一个引线标注。
训练阶段攻击。GenAI训练阶段一般可以细分为两个具体阶段:基础模型预训练和模型微调。这种模式适用于生成图像模型、文本模型、音频模型和多模态模型等。基础模型在大型数据集上训练是最有效的,因此,开始普遍从各种公共来源抓取数据。这样,基础模型就极易受到投毒攻击,致使训练数据的子集被攻击者控制。研究人员已经证明,攻击者对仅0.001%的全网未整理训练数据集进行随机投毒,就能如愿导致模型失效。对网络数据集投毒并非难事,只需从已知数据源购买一小部分过期域即可。若具有2.1节所述的较为常见的攻击知识和能力,在模型微调阶段也能轻易发动投毒攻击。
推理阶段攻击。GenAI的部署阶段也与PredAI不同。部署阶段模型的使用方式取决于应用程序。然而,LLM和RAG应用中存在诸多安全漏洞的根本原因是数据和指令没有通过单独的通道提供给LLM,攻击者可以使用数据通道进行类似于SQL注入(已存在数十年)的推理阶段攻击。此阶段的攻击大多针对LLM,尤其是问答和文本摘要任务,之所以如此是因为在基于文本的生成式模型应用中存在以下常见做法:
(1)通过模型指令进行对齐:在推理阶段,LLM行为通过模型输入和上下文前面的指令进行对齐。这些指令包括对模型特定应用场景的自然语言描述(例如,“您是一位乐于助人的财务助理,回复得体而又简洁。”)。越狱(Jailbreak)能够绕过该显式对齐和其他保护措施。这些提示语通过提示工程精心制作,攻击者可通过提示提取(Prompt Extraction)攻击尝试窃取这些系统指令。这些攻击也会威胁多模态和文生图(Text-to-Image)模型。
(2)上下文小样本学习:由于LLM是自回归预测器,因此可以通过在模型上下文中提供应用程序的预期输入和输出样例来提高它们的应用性能。模型上下文在LLM评估之前会添加到用户查询中。这样,模型能够更自然地完成自回归任务。
(3)接入第三方运行时数据:在检索增强生成(RAG)应用中,典型场景是在运行时构造上下文,该上下文依赖于查询,并从集成至应用程序的外部数据源(例如文档、网页等)获得数据。在间接提示注入攻击中,攻击者需要具有使用系统接入的外部信息源间接修改上下文的能力。
(4)输出处理:LLM输出可为网页上的元素赋值或用于构造命令。
(5)智能体:插件、函数、智能体等概念都要通过处理LLM输出(第4项)来执行某特定任务并为其输入提供额外的上下文(第3项)。在某些情况下,LLM根据自然语言提供的配置从相关外部依赖项中进行选择,并使用LLM基于上下文信息填写的模板调用该代码。
违法滥用。违法滥用指攻击者为实现自己的目的而篡改GenAI系统的预期用途。攻击者会利用GenAI模型的功能来扩散仇恨言论或歧视,制作媒体作品煽动针对特定群体的暴力活动,或制作图像、文本或恶意代码来扩大攻击性网络行动。
• 训练数据控制:攻击者可通过插入或篡改训练样本来控制训练数据的子集。该能力用于数据投毒攻击。
• 查询权限:许多GenAI模型及其应用程序(如检索增强生成)都托管在云上,通过API密钥控制访问权限。在这种情况下,攻击者可通过向模型提交查询获取输出。在GenAI中,攻击者篡改并提交输入的目的是诱导模型做出特定行为。该能力用于提示输入、提示提取和模型窃取攻击。
• 源代码控制:攻击者篡改机器学习算法的源代码,例如随机数生成器或通常开源的第三方库。利用开源模型库(如HuggingFace),攻击者能够创建恶意模型或将恶意代码嵌入反序列化格式从而破坏正常模型。
• 资源控制:GenAI模型在运行时需要获取文档、网页等资源,而攻击者能够篡改这些资源。该能力用于间接提示注入攻击。
攻击目标。攻击者发动提示注入攻击有多种目的,如:
• 滥用。攻击者使用直接提示注入来绕过安全措施,构造虚假信息、宣传内容、恶意内容、色情内容、恶意软件(代码)或网络钓鱼内容。通常,模型创建者会明确列出需要保护的禁止场景。为滥用模型而进行的直接提示注入也称为“越狱”。
• 侵犯隐私。有些攻击者想要提取系统提示,还有些攻击者意欲获取上下文中提供给模型、限制用户访问的私人信息。相关信息,见3.3.1节。
攻击技术。发起直接提示注入攻击的技术多种多样,但大多属于以下几大类:
• 基于梯度的攻击是基于白盒优化的越狱设计方法,与2.2.1节中讨论的PredAI攻击非常相似。基于梯度的分布式攻击使用近似值来微分生成式Transformer模型的对抗损失,进而通过BERTScore和困惑度(Perplexity)强制实现可感知性和流畅性,最大程度地减少词汇变化。HotFlip修改文本后将其编码为二进制向量和梯度步骤,以最小化对抗损失。HotFlip最初的设计目的是为PredAI语言分类器(例如情绪分析)创建对抗样本,后续研究使用以下方法将HotFlip用于GenAI:由于自回归词元每次只生成一个,因此只需要优化第一个词元以产生肯定响应,便能让自回归生成过程输出完全肯定的表达。在基于梯度的攻击中,通用对抗触发器是一种针对生成模型的特殊攻击类型。生成模型会寻找与输入无关的前缀(或后缀),若存在此类前缀或后缀,无论输入的其余部分如何,都会产生所需的肯定响应。这些通用触发器迁移到其他模型后,开源模型(具有现成的白盒访问权限)便成为现实可用的攻击向量,用以对仅提供API访问的封闭系统发动迁移攻击(Transferability Attack)
• LLM的手动越狱方法通常分为两类:目标竞争和泛化不匹配。这些方法通常利用模型对某些语言操控的易感性,超越了传统的对抗性输入。在目标竞争攻击中,会提供额外指令,与作者最初提供的指令进行竞争。
(1)前缀注入:提示模型,使其给出肯定确认,实现肯定响应。攻击者调整模型,让模型以预定方式开始输出,进而影响后续语言生成,按预先设置的方式形成特定模式或行为。
(2)拒绝抑制:攻击者向模型提供明确指示,禁止其在输出中产生拒绝或否认。这种策略会限制或禁止产生负面响应,确保模型按指令行事,可能会突破安全措施。
(3)风格注入:攻击者禁止模型使用长单词或要求其采用特定风格。这种方法将模型的语言限制为简单或非专业的风格,进而降低模型响应的复杂性或准确性,可能损害模型的整体性能。
(4)角色扮演:攻击者利用角色扮演策略,例如“立即行动”(Do Anyhting Now,简称为“DAN”)或“智商永远在线的马基雅弗利式人物”(Always Intelligent and Machiavellian,简称为“AIM”),引导模型采用非设计意图的特定角色或行为模式。这种操控旨在利用模型对不同角色或特征的适应性,进而使其违反安全协议。
泛化不匹配类攻击技术超越了现有的安全训练或防护措施,能够提供与模型的标准训练数据截然不同的输入。具体方法如下:
(5)特殊编码:对抗性输入通常采用诸如base64编码之类的编码技术。这种方法会改变输入数据的表示形式,避免被标准识别算法识别。攻击者对信息进行编码后输入模型,能够误导模型,绕过模型的安全机制。
(6)字符转换:诸如ROT13加密、符号替换(如l33tspeak)和摩尔斯电码之类的技术会操控输入文本的字符。这些转换旨在掩盖文本的原始含义,进而误导模型,使攻击性输入逃避检测。
(7)词语转换:这种方法旨在改变语言结构,相关策略包括儿童黑话(Pig Latin)、同义词替换(例如,用“窃”替换“偷”)和载荷拆分(或“词元走私”),将敏感词拆分为子字符串。这些花招的目的都是为了欺骗模型的安全措施,但同时又能为LLM所理解。
(8)提示级混淆:攻击者通过翻译等方法提供输入,使得模型提供的内容或混乱不堪,或连模型自己都无法完全理解。这类混淆方法造成了歧义或改变了语言上下文,输入不够清晰或易误解,使得模型的安全机制难以实现预期效果。
• 基于模型的自动化红队采用三种模型:攻击者模型、目标模型和裁判。攻击者若能访问高质量的分类器,就能判断模型输出是否有害,以其为奖励函数来训练生成模型为其他生成模型生成越狱措施。每个模型只需要具有查询访问权限,无需人工干预即可更新或优化候选越狱措施。从经验上看,这些算法的查询效率可能比现有算法高出几个数量级,一次成功的越狱或只需要几十次查询。实践证明,这些提示还可以从目标模型转移到其他闭源LLM。
泄露敏感信息。Carlini等人是最早演示生成式语言模型中数据提取攻击的研究人员。他们在训练数据中插入合成Canary,然后使用自创的一套方法来提取这些Canary。他们还引入了一个“暴露程度”指标来衡量记忆情况。后续研究证明了基于Transformer的大语言模型(如GPT-2)中存在数据提取风险,攻击者通过使用不同的前缀提示模型并发起成员推理攻击,以此判断生成的哪些内容属于训练集。由于这些解码器堆栈Transformer是自回归模型,关于个人信息的逐字文本前缀可导致模型将敏感信息作为文本输入,包括电子邮件地址、电话号码和位置。据观察,在较新的Transformer模型中也存在GenAI语言模型的这种逐字记忆敏感信息的行为,同时还增加了对提取方法的描述。在PredAI模型中,精心设计的工具(如Text Revealer)可以利用基于Transformer的文本分类器重建文本。GenAI模型与PredAI模型不同,只需要求模型重复对话中存在的私人信息即可。结果表明,电子邮件地址等信息的泄露率超过8%。不过,这种回答可能会错配信息和信息所有者。一般来说,模型输入的信息越具体、越完整,提取攻击就越容易成功,因为攻击者知道的越多,能提取的信息就越多。直观上,模型越大、容量越大,越容易进行精确重建。
提示和上下文窃取。提示至关重要,关系到LLM是否能与特定用例对齐,同时也是LLM遵循人类指令的关键要素。通过精心设计的提示,LLM能够成为外部应用程序的智能助手,提供与人类水平相当的指令。这些提示很有价值,常被视为商业机密。提示窃取攻击侵犯了提示工程师的知识产权和隐私,还有可能破坏提示交易市场的商业模式。PromptStealer是一种基于学习的方法,使用图像说明模型和多标签分类器基于文生图模型重建提示,以窃取主题和提示修饰语。对于LLM,研究人员发现,固定使用几个攻击查询语句(例如,重复我们对话中的所有句子)足以提取各模型和数据集对中60%以上的提示。在RAG应用中(见图3),可以使用相同技术来提取LLM上下文中提供的敏感信息。例如,数据库中的行或PDF文档中的文本本来是用于LLM泛化总结的,只需通过直接提示注入请求即可提取到详细信息。
对齐训练。模型提供者使用更严格的前向对齐进行训练,创建内置机制。例如,对数据集进行整理和预对齐后进行训练,最后调整模型对齐。之后,通过人工反馈进行强化学习,对模型持续迭代改进。
提示指令和格式化技术。LLM指令可提示模型小心处理用户输入。例如,可在提示后附加特定指令,告知模型后续哪些内容可能构成越狱。将用户输入置于提示之前,利用近因偏差有效执行指令。在提示前后加上随机字符或特殊HTML标签,提示模型哪些是系统指令,哪些是用户提示。
检测技术。模型提供者对特制的基准数据集或用于监控受保护LLM输入和输出的过滤器进行评估,使用更严格的后向对齐进行训练,创建内置机制。有人提出,可以通过评估特殊提示的LLM来区分潜在的攻击性提示。有些商业产品提供了提示注入检测工具,既可以检测潜在的恶意用户输入,也可以调节防火墙的输出以防范越狱行为。这些都是对纵深防御理念的实践,提供了额外保证。
同样,针对提示窃取的防御措施还不够严密。这些方法的共同之处是,将模型表达与系统提供商已知的提示进行比较。不同之处是比较方式,有的是寻找特定词元、单词或短语(这是差分隐私中的常用方法),有的将输出的n-gram与输入进行比较。
攻击技术。研究人员证明,可通过间接提示注入对商业RAG服务发动以下攻击,其中要搜索或汇总的资源包含具有某些特征的指令:
• 耗时的后台任务。根据提示,模型在回答问题之前需要执行耗时任务。提示本身会很简短,在评估模型时要求循环执行某些行为。
• 抑制交谈。若<|endoftext|>标记出现在用户请求中,模型无法完成句子,这种攻击便是利用了这一情况。通过设计请求,让模型在每句开头加上该标记,系统(如搜索代理)就会返回空内容。
• 抑制能力。在这种攻击中,嵌入式提示会禁止模型使用某些API(如Bing Chat的搜索功能)。这就选择性地关闭了服务的关键组件。
• 破坏输入输出。在这种攻击中,间接提示注入让模型用同形文字替换检索到的文本中的字符,从而破坏对文本依赖型API的调用。另一种方法是通过提示让模型破坏查询结果,最终产生无用的检索或汇总结果。
攻击技术。研究人员证明,可通过操控LLM的主要任务来破坏其完整性。这与更常见的间接提示注入攻击不同,后者主要是执行恶意次要任务。
• 操控。不提前选择错误输出,让模型任意提供错误的搜索结果摘要。操控攻击会让模型提供错误的答案,且模型的答案与引用来源相矛盾。以下是两个操控攻击的例子:
(1)错误摘要。让模型生成恶意选择或任意的错误文档、电子邮件或搜索查询摘要。
(2)传播虚假信息。搜索聊天机器人依赖或持续采用不可信的新闻来源或其他搜索聊天机器人的输出,以讹传讹。
(1)收集信息。特定攻击或会加剧这类风险。例如,有人类参与的间接提示能够提取用户数据(如个人信息、凭据等)或通过聊天并诱使用户提供信息或通过侧信道泄露聊天记录。无人类参与的攻击则会针对可以访问用户数据(例如真实电子邮件)的个人助理,这同样会导致隐私问题。
(2)非法信息披露。模型通常集成到系统基础设施中,容易造成非法披露或访问私人用户数据。恶意攻击者可以通过后门,使用各种方法(例如调用API、自动完成恶意代码)入侵LLM或系统。
攻击技术。为提起人们对隐私问题的重视,研究人员通过注入,让LLM诱使最终用户透露其真实姓名,从而证明了数据窃取攻击的可能性。在此过程中,研究人员使用了如下攻击技术:
• 有人类参与的间接提示。通过读取操作(例如,触发搜索查询,向攻击者发出请求,或直接检索 URL),向攻击者发送信息。
• 加入聊天会话。模型诱使用户访问特定URL,该URL事先被攻击者插入了该用户的用户名。
• 隐藏的Markdown图像。使用隐藏的单像素Markdown图像修改聊天机器人的回复,对聊天机器人执行提示注入,将用户的聊天数据提供给恶意第三方。
(1)欺诈。指令遵循型LLM不断发展的同时带来了双重用途风险。
(2)恶意软件。LLM向用户推荐恶意链接,促进恶意软件的传播。此外,集成了LLM的应用程序大量出现,提示本身被迫充当恶意软件,成为了新型威胁。例如,LLM增强邮件客户端可能会通过阅读邮件传递恶意提示,通过发送邮件来扩散恶意提示。
(3)操控。模型位于用户和可操控的信息输出之间,容易受到攻击。现在的LLM通常是大型系统的一部分,并与应用程序集成。这种中间状态使得模型存在大量漏洞。例如,a)搜索聊天机器人可能会根据提示生成虚假信息,b)并被提示隐藏特定信息、来源或搜索查询;c)模型可能会根据提示提供恶意或任意选择的错误信息源摘要(例如文档、邮件、搜索查询)。用户本就容易轻信网络上的不可信来源,LLM的权威语气和用户对其公正性的过度依赖会让用户更频繁地上当。
攻击技术。研究人员用聊天机器人(如微软的Bing聊天机器人)做实验,证明存在多种滥用技术。
• 网络钓鱼。此前,有研究表明,使用LLM,可以轻松设局,骗过受害人,例如网络钓鱼邮件。现在,LLM可以更方便地与应用程序集成,不仅可以设置骗局,还能广泛传播此类攻击。与网络钓鱼邮件不同,这类攻击对用户的攻击更有效,因为用户既缺乏经验,又不了解这种新型威胁技术。
• 伪装。LLM可伪装为服务提供商的官方请求,或将欺诈网站作为可信网站向用户推荐。
• 传播注入。LLM本身充当运行和传播恶意代码的计算机。例如,自动消息处理工具可以读取和撰写邮件并查看用户个人数据,在被注入恶意代码后,其他模型读取从该来源收到的邮件,注入代码便传播到了这些模型。
• 传播恶意软件。与网络钓鱼类似,LLM可以被用来诱使用户访问恶意网页,实现“路过式下载”。攻击者再进一步,会将Markdown链接无缝加到回复中。
• 扭曲历史。攻击者提示模型输出恶意选择的虚假信息。研究人员已经证明了这一点。通过提示,他们成功地让Bing Chat否认了阿尔伯特·爱因斯坦曾获得诺贝尔奖。
• 弱相关上下文提示。引导搜索结果,使其偏离中立立场,进而放大偏见。研究人员证实,向LLM输入“保守派”或“自由派”人物的传记作为提示,无需明确说明主题,就能让模型生成与所述用户观点一致的答案。
(1)基于人类反馈的强化学习(RLHF)。RLHF是一种AI模型训练,通过人类的间接参与来微调模型。这种方法可以提升LLM与人类价值观的一致性,防止不良行为。OpenAI使用RLHF对GPT-4进行微调后,GPT-4产生有害内容或胡言乱语的可能性随之降低。
(2)对查询到的输入进行过滤。Greshake等人提出了另一种防御机制,建议对查询到的输入进行处理,过滤掉指令。
(3)LLM管理员。可利用LLM管理员来检测攻击,而不仅仅是过滤明显有害的输出。对于不依赖于所查询信息来源的攻击,这种方法可能较为有效,但是对于虚假信息或其他类型的操控,可能无法有效检测。
(4)基于可解释性的方案。这类方案对预测轨迹进行异常值检测。研究人员已经证明,Tuned Lens可用于检测异常输入。
不容乐观的是,针对恶意提示,目前还没有哪个方案能够提供全面防护或百分百有效,未来的研究需要关注防御措施的有效性。
没有一个组织乃至一个国家,能够具备训练特定LLM的所有数据。数据库不是庞大的数据容器,而是标签和数据链接列表,通过链接指向提供相应数据样本的其他服务器。这样,企业网络安全边界就突破了传统定义,同时产生了难以缓解的新风险。最近发布的开源数据投毒工具更是增加了大规模攻击图像训练数据的风险。尽管这些工具的设计理念颇为高尚,本意是帮助艺术家保护其作品版权,但如果落入恶人之手,就会伤及无辜。
与规模相关的另一问题是在互联网上大规模生成合成内容的能力。虽然水印可以遏制这种情况,但强大的开放或不受控模型的存在为生成大量未标记合成内容创造了机会,对后续训练的LLM的能力产生负面影响,导致模型崩溃。
克服这些规模挑战对于未来发展基础模型的能力——特别是使模型具有人类的价值观——至关重要。
AML领域长期面临的一大挑战是检测实时模型攻击的能力。若能提前检测到攻击,就能让模型避免丢失信息或产生不良行为。Trame`r在其论文中表明,设计对抗样本检测技术和有效分类(这具有内在的复杂度)技术一样难,具有计算复杂度,鲁棒性半径系数则为2。
对抗样本的来源数据或与训练模型所使用及输入的数据分布相同,或为外部(OOD,即非训练数据)输入。因此,检测OOD输入在AML领域同样是一大挑战。Fang等人建立了实用的可检测性理论界限,特别需要注意的是当分布内数据和OOD数据重叠时的不可能结果。
2.3节介绍的数据和模型清洗技术能够缓解投毒攻击的影响,应该广泛使用。但是,这些技术应该与证明来源和完整性的加密技术相结合,为下游提供保证,正如国家安全委员会关于人工智能的最终报告中所建议的那样。
如“概述”部分所述,得益于深度学习的最新进步,聊天机器人技术强势崛起,具有巨大的商业应用潜力,从娱乐到更关键领域不一而足。近来,提示注入攻击开始出现,能有效触发机器人的不良行为,实施护栏(Guardrail)可缓解这类风险,因而得到广泛使用。然而,近期研究表明,严格的LLM审查制度存在理论限制,需要采用其他风险缓解手段,例如设置受控模型网关等网络安全机制。
随着智能聊天机器人的不断发展,越来越多的在线和商业应用中开始部署这些机器人。相关安全问题日益凸显,一方面会被攻击者用来发现和利用漏洞,另一方面,会促进技术开发公司改进设计和实施,以防止此类攻击。识别和缓解各种风险因素(如漏洞)的手段包括红队技术,用于在LLM部署前进行测试和评估。这些过程各不相同,包括检测传统的网络安全漏洞、偏见和歧视、有害内容的生成、隐私泄露以及大型模型的新型特征,还包括评估更为宏观的社会影响,如经济影响、刻板印象、长期过度依赖和对民主规范的侵蚀。
在技术的整个生命周期中,现实风险管理对于识别风险和规划早期缓解方案至关重要。例如,在训练系统的过程中加入人类对抗性输入(即红队)或采用基于人类反馈的强化学习,似乎可使聊天机器人更有效地抵御投毒或提示注入攻击。然而,将聊天机器人适配到下游用例通常需要通过进一步微调来定制预训练LLM,这会引入新的安全风险,降低LLM的安全性。Barrett等人为最先进的生成式AI系统开发了详细的风险模板,与NIST AI RMF相对应,可用于评估和缓解这项技术可能给社会带来的潜在灾难性风险。还有一些行业资源可用于管理基础模型风险。
2.3节中讨论的鲁棒性训练技术提供了不同思路,用经过理论认证的防御措施对抗数据投毒攻击,为安全提供当前急需的信息理论保证。结果令人鼓舞,但仍需更多研究将这种方法进行扩展,覆盖数据分布的更通用假设,能够处理OOD输入、更复杂的模型及多种数据模态,提供更优性能。LLM和生成式扩散模型开始成为攻击目标,如何用这些技术保护此类超大模型也是一大挑战。
针对逃逸和投毒攻击的AML缓解措施普遍存在一个问题:缺乏可靠基准。这导致AML相关论文的结果通常无法比较,因为这些论文所依赖的假设和方法均不同。虽然在这方面已经取得了一些可喜进展,但还需要更多的研究和激励来促进建立标准化基准,以便可靠评估所提议缓解措施的实际表现。
形式化方法验证在航空电子和密码学等领域并不新鲜,这些领域对安全保证有极高的要求。在这些领域的多年应用经验告诉我们,这种方法在安全性和安全保证方面表现优异,但成本高昂,阻碍了形式化方法的广泛采用。目前,这些领域的形式化方法主要用于需要满足合规要求的应用中。将形式化方法应用于神经网络潜力巨大,可提供急需的安全保证,尤其是对于高风险应用程序而言。然而,这项技术是否可行取决于技术和业务标准,即是否能够以可接受的成本处理复杂的机器学习模型。还需要进行更多研究,将这项技术扩展到机器学习算法中使用的所有代数运算以及当今使用的大型模型,还要适应人工智能系统代码的快速演进,同时控制形式化验证的使用成本。
如2.4节所述,隐私攻击多种多样(记忆、成员推理、模型提取和属性推理),而可靠的缓解技术却不多,两者之间存在不平衡。从某种意义上说,这是一种常态:某项技术快速发展,得到广泛采用——甚至“炒作”——这吸引了攻击者的注意,在技术尚未完全成熟时(社会还未对其进行评估和有效管理),攻击者会抢先公布并利用技术中存在的缺陷。可以肯定的是,并非所有的攻击者都存在恶意。有些人只是想警告公众技术存在潜在问题,而这些问题可能会造成伤害并削弱人们对该技术的信任。此外,并非所有的攻击都能产生实际效果,对关键AI系统部署构成真正的威胁。不过,开发者和攻击者之间已经开始角逐,双方都取得了巨大进展。这给AI利益群体提出了许多难题,例如:
• 随着模型的增长和接入数据量的增加,如何才能最有效地缓解3.3.1节所述的对记忆数据的潜在漏洞攻击?
• 如何才能最有效地防范2.4.2节和2.4.4节中所述的训练集成员推理或训练数据属性推理攻击?
• 开发人员如何保护具有机密性质及知识产权的机器学习模型免受PredAI和GenAI领域中的新威胁? 特别是利用机器学习模型的公共API查询和利用其秘密权重的攻击或2.4.3节所述的侧信道泄漏攻击?在匿名或无身份验证访问模型的配置中,现有机制无法有效阻止大量的API查询。
在解决上述问题的过程中,针对极度关注隐私的用例,相关利益社区务必制定具体的指导方针,作为对NIST AI RMF的补充。
强大的开放访问模型可供公众使用,具有民主化访问、公平竞争、科学成果可复制(进而衡量人工智能的进步)等无可争议的优势。在许多用例中,它们都能用于弥合与封闭/私有模型之间的性能差距。
然而,在某些情况下,强大的人工智能技术若被恶人控制则会令人寝食难安。研究人员已经证明,开放模型很容易被破坏,用以执行非开发目的的任务。问题随之而来:是否应该允许使用开放模型?
其他科学工程领域探讨过这个问题。例如,我们拥有强大的加密算法,这些算法面向公众,已得到广泛使用,而人们也接受了密码学会有落入坏人之手的风险。但是,在生物工程领域,人们认为不受控制的基因工程具有太大风险,因而不允许公开访问该技术。
就人工智能中的开放与封闭模型问题,相关利益群体展开了积极讨论。这个问题应该及时解决,待模型变得过于强大时再关注这个问题则为时已晚。
美国国防高级研究计划局(DARPA)与NIST联合创建了TrojAI项目,研究如何保护AI系统免受蓄意恶意木马攻击,并着手开发相关检测技术,探究木马检测问题的挑战性。
Goldwasser等人论文中介绍了一种新型攻击:可植入机器学习模型中的信息论上无法检测的木马。若这种攻击确实可行,只有通过限制和控制组织人员在模型整个生命周期内的访问权限,以及彻底审查供应链提供的第三方组件,才能防止、检测和缓解此类攻击。有关信息,详见NIST AI风险管理框架。
多数情况下,组织需要在这些属性之间进行取舍,需要根据AI系统、用例以及AI技术的经济、环境、社会、文化、政治和全球影响等诸多因素来决定优先考虑哪些属性。
这种技术已广泛应用于PredAI,现在开始越来越多地用于GenAI模型。然而,量化模型继承了原始模型的漏洞,并带来了其他问题,因而,模型更容易受到攻击。计算精度降低,误差便会放大,这会削弱量化模型的对抗鲁棒性。有些文献中提供了针对PredAI模型的有用缓解技术,而围绕量化对GenAI模型的影响的研究却较少,部署此类模型时,组织应保持警惕,持续监控模型行为。
- adversarial examples(对抗样本):篡改后的测试样本,在部署阶段误导机器学习模型的分类。
- adversarial success(攻击成功):对模型发动攻击时,实现了如下一种或多种目的:破坏可用性、破坏完整性、隐私泄露或滥用触发(仅适用于GenAI模型)。
- Area Under the Curve(曲线下面积):在机器学习中,曲线下面积(AUC)用以衡量分类器区分不同类别的能力。AUC越高,模型的分类性能就越好。AUC测量的是接收者操作特性(ROC)曲线下方的整个二维区域。
- availability attack(可用性攻击):针对机器学习的对抗性攻击,会降低整体模型性能。
- backdoor pattern(后门模式):插入数据样本以诱导中毒模型错误分类的触发模式。例如,在计算机视觉中,它可能由一组相邻像素(例如白色方块)构成,并添加到特定目标标签下。要发起后门攻击,攻击者首先会将触发器添加到干净数据的子集,并将其对应的标签更改为目标标签,从而对数据进行投毒。
- backdoor poisoning attacks(后门投毒攻击):针对机器学习的投毒攻击,目的是篡改包括后门模式在内的样本的预测。
- classifcation(分类):有监督学习的一种,其中的数据标签为离散类型。
- convolutional neural networks(卷积神经网络,CNN):一种人工神经网络,在这种网络架构中,每一层的神经元都与下一层的神经元相连,其中至少有一层执行卷积运算。CNN一般用于图像分析和分类。
- data poisoning(数据投毒):数据投毒攻击中,部分训练数据被攻击者控制。
- data privacy(数据隐私):针对机器学习模型的攻击,目的是提取有关训练数据的敏感信息。
- data reconstruction(数据重构):数据隐私攻击,用于重构有关训练数据记录的敏感信息。
- deployment stage(部署阶段):机器学习流程中的一个阶段,在此阶段中,模型被部署到新数据上。
- Diffusion Model(扩散模型):一种潜变量生成模型,由三个主要部分组成:正向过程、反向过程和采样过程。扩散模型的目标是学习生成给定数据集概率分布的扩散过程。它被广泛应用于各种计算机视觉任务,包括图像去噪、修复、超分辨率和图像生成。
- discriminative(判别式):学习区分各个类别的机器学习方法类型。
- energy-latency attacks(能耗-时延攻击):利用对硬件和模型优化的性能依赖来抵消硬件优化的影响、延长计算时间、提高硬件温度并大幅增加能耗的攻击
- ensemble learning(集成学习):一种元机器学习方法,结合多个模型的预测来提高预测准确性。
- Expectation Over Transformation(变换期望,EOT):EOT能够增强对抗样本,即使在现实世界中发生图像变换(例如角度和视点变化)也能保持攻击性。EOT在优化过程中对此类扰动进行建模。EOT不是优化单个样例的对数似然,而是使用选定的转换函数分布,将攻击者控制的输入转换为分类器感知的“真实”输入。
- extraction(提取):攻击者利用特定输入提示模型,提取生成模型的训练数据。
- federated learning(联邦学习):一种协作式机器学习,其中多个用户共同训练一个机器学习模型。
- federated learning models(联邦学习模型):联邦学习是一种在多个终端设备上训练分散式机器学习模型(例如,深度神经网络或预训练大语言模型)的方法,无需共享每个设备上的数据。终端设备通过协作训练全局模型,将模型更新发给服务器,服务器再汇总这些更新。 与传统的集中式学习(将数据汇集在一起)相比,联邦学习在数据隐私和安全性方面具有优势,但代价是牺牲了联邦学习模型的能力。其他潜在问题包括终端设备的可信度以及恶意攻击者对学习模型的影响。
- feed-forward neural networks(前馈神经网络):一种人工神经网络,其中各层节点与下一层节点连接,而不是形成循环。
- fine-tuning(微调):指调整预训练模型以执行特定任务或专门针对某特定领域。此阶段在初始预训练阶段之后,需要在特定任务的数据上进一步训练模型。这一般属于有监督学习任务。
- formal methods(形式化方法):这种技术具有数学上的严谨性,用于软件系统的规范、开发和验证。
- Functional Attacks(功能性攻击):这是一种优化后对抗性攻击,针对域中的一组数据而不是每个数据点。
- generative(生成式):学习数据分布,从中生成新样本的机器学习方法类型。
- generative adversarial networks(生成式对抗网络,GAN):一种机器学习框架,其中两个神经网络以零和博弈的形式相互竞争,一个网络获取收益,另一个网络必然遭受损失。GAN通过学习,生成具有与训练集相同统计的新数据。
- Generative Pre-Trained Transformer(生成式预训练Transformer):基于Transformer架构的人工神经网络,在大量未标注文本数据集上进行预训练,生成新颖的类人内容。这是现今自然语言处理任务的主要架构。
- graph neural networks(图神经网络,GNN):对图的各个属性(点、边、全局上下文)的可优化转换,保留了图的对称性(置换不变性)。GNN采用“图入图出”架构,接收输入图,将信息加载到该图的点、边和全局上下文中,再将这些嵌入信息逐步转换为具有与输入图相同连接的输出图。
- hidden Markov models(隐马尔可夫模型,HMM):一种统计模型,其中的建模系统被假定为具有不可观察状态的马尔可夫过程。此外,该模型提供了一个可观察过程,其结果受到马尔可夫模型结果的影响。HMM可用于描述依赖于内部因素的可观察事件的变化,而这些因素是无法直接观察到的。在机器学习中,假设模型的内部状态不可见,但超参数不是。
- indirect prompt injection(间接提示注入):攻击者依靠LLM间接地进行提示注入攻击,例如通过访问网页或文档。与直接提示注入不同,此场景中的攻击者不直接提供提示,而是尝试通过其他机制(例如插件)获取文本来间接注入指令。
- integrity attack(完整性攻击):针对机器学习的对抗性攻击,可改变机器学习模型的输出预测。
- jailbreak(越狱):使用提示注入来专门规避LLM创建者对LLM设置的安全和审核功能。
- label flipping(标签翻转):一种数据投毒攻击,攻击者只能更改训练标签。
- label limit(标签限制):在某些情况下,攻击者无法控制有监督学习中训练样本的标签。
- logistic regression(逻辑回归):一种线性分类器,可预测观察结果属于某个类的概率。
- machine unlearning(机器遗忘):用户能够请求从已训练机器学习模型中删除其记录的技术。有效的近似遗忘技术不需要从头开始重新训练机器学习模型。
- membership-inference attacks(成员推理攻击):推断数据样本是否属于机器学习模型训练集的数据隐私攻击。model control(模型控制):攻击者控制机器学习模型参数的能力。
- model extraction(模型提取):旨在提取模型架构和参数的隐私攻击。
- model poisoning(模型投毒):模型参数受攻击者控制的投毒攻击。
- model privacy(模型隐私):针对机器学习模型的攻击,目的是提取有关模型的敏感信息。
- multimodal models(多模态模型):模态与感官模态相关,代表人类主要的沟通和感知方式,例如视觉或触觉。多模态模型处理和关联来自多种模态的信息。
- out-of-distribution(外部):指非模型训练使用的数据,这些数据与训练数据的收集时间不同,收集条件或环境可能也不同。
- poisoning attacks(投毒攻击):训练阶段针对机器学习的对抗性攻击。
- pre-training(预训练):模型训练的初始阶段,在此阶段,模型从大量未标注数据中学习一般模式、特征和关系。这通常是无监督或自监督学习,目的是预先为模型输入常见模式,在之后的微调阶段对模型进行微调,用于特定的下游任务。基础模型(文本或图像)都是预训练模型。
- prompt extraction(提示提取):泄露LLM上下文中本应对用户隐藏的系统提示等信息。
- prompt injection(提示注入):黑客将文本提示输入到LLM或聊天机器人中,以便执行非计划或未授权操作。prompt injections(提示注入):向使用文本指令(“提示”)的生成式AI系统发出恶意纯文本指令,导致AI系统生成系统设计者禁止的主题文本。
- property inference(属性推理):推断机器学习模型训练数据全局属性的数据隐私攻击。
- query access(查询权限):攻击者向训练后机器学习模型进行查询并获得预测的能力。
- Receiver Operating Characteristics(接收者操作特性,ROC):在机器学习中,ROC曲线用于表示分类器的真正率(True Positive Rate)与假正率(False Positive Rate)。
- Red Teaming(红队):NIST将网络安全红队定义为“经过授权、模拟潜在攻击者的攻击或利用能力、对企业安全状况造成威胁的组织。红队的目标是通过展示成功攻击所造成的影响以及运营环境中对防御方(蓝队)有效的方法来提高企业网络安全。” (CNSS 2015 [80])传统的红队会结合物理和网络攻击元素,攻击多个系统,以评估组织的整体安全态势。相比之下,渗透测试(Pen Testing)测试的是特定应用程序或系统的安全性。就AI而言,红队的含义更接近于渗透测试,评估人员在非正常运行条件下对模型进行快速或连续测试。
- regression(回归):一种有监督机器学习模型,使用包括数值标签(称为响应变量)在内的数据进行训练。回归算法的类型包括线性回归、多项式回归和各种非线性回归方法。
- reinforcement learning(强化学习):机器学习的一种类型,其中智能体与环境交互并学习采取行动,优化奖励函数。
- resource control(资源控制):攻击者控制机器学习模型(尤其是LLM和RAG应用)所消耗资源的能力。
- Retrieval Augmented Generation(检索增强生成):从基础模型外部检索数据并通过在上下文中添加相关检索数据来增强提示。RAG可高效微调和修改模型的内部知识,而无需重新训练整个模型。首先,将文档和用户提示转换为兼容格式,执行相关性搜索。一般是使用嵌入语言模型将文档集合和用户提示转换为数字表示。RAG模型架构比较知识库内嵌入的用户提示,然后将知识库中类似文档的相关上下文附加到原始用户提示中,最后将此增强提示发送到基础模型。增强提示必须满足模型的上下文窗口,RAG才能有效发挥其功能。
- rowhammer attacks(Rowhammer攻击)Rowhammer是一种基于软件的故障注入攻击,攻击者通过用户空间应用程序利用DRAM干扰错误,进而推断出存储在内存单元中的某些机密信息。此类攻击要求攻击者控制用户空间非特权进程,该进程与被攻击者的机器学习模型运行在同一台机器上。
- semi-supervised learning(半监督学习):机器学习的一种类型。在这种机器学习中,只有少量训练样本被标注,大多数训练样本未标注。
- shadow models(影子模型):影子模型会模仿目标模型的行为。对于这些模型来说,训练数据集及其数据集成员等基本情况已知。通常,攻击模型是在影子模型的已标注输入输出上进行训练的。
- side channel(侧通道):通过侧通道,攻击者能够观察运行程序的非功能性特征(例如执行时间或内存)或测量/利用系统或其硬件的间接巧合效应(如功耗变化、电磁辐射),进而推断出机密信息。此类攻击最常见的目的是窃取敏感信息,包括加密密钥。
- source code control(源代码控制):攻击者控制机器学习算法源代码的能力。
- supervised learning(有监督学习):一种基于标注数据的机器学习方法。
- Support Vector Machines(支持向量机):以超平面形式实现决策函数,根据观察结果的信息模式(即特征)将各种不同观察结果区分开来(即分类)。
- targeted poisoning attacks(定向投毒攻击):针对机器学习的投毒攻击,目的是篡改若干目标样本的预测。
- testing data control(测试数据控制):攻击者控制机器学习模型测试数据输入的能力。
- training data control(训练数据控制):攻击者控制机器学习模型部分训练数据的能力。
- training stage(训练阶段):机器学习流程中使用训练数据训练模型的阶段。
- trojans(木马):在系统拥有/开发组织不知情或未经其允许的情况下,插入软件或硬件系统代码的恶意代码/逻辑,此类恶意代码/逻辑难以检测,看似正常,但能够根据攻击者的指示改变系统的预期功能,按照攻击者意愿进行恶意行为。要发动有效的木马攻击,正常运行环境中的触发器必须要少,以免影响AI的正常运行,引起人类用户的怀疑。
- unsupervised learning(无监督学习):一种基于未标注数据的机器学习方法。
- watermarking(水印):水印技术将隐藏信号嵌入文本、图像或视频中,将内容标识为AI生成。即使内容后续被修改,该信号也能被检索到。通常,水印必须可访问且具可靠性。如果可以测试内容是否由AI生成,说明水印可访问。可访问权限有两种类型:公共和私有。公共访问权限指所有人都能访问并验证水印。至于私有访问权限,只有得到生成模型控制组织的授权后,相关方才能访问和验证水印。水印必须具有可靠性,不会被恶意攻击者轻易删除。但是,水印若能公开访问,攻击者就能够测试水印的存在,这为水印技术提出了更高的挑战。
发布日期:2024年1月原文链接:https://doi.org/10.6028/NIST.AI.100-2e2023
原文始发于微信公众号(绿盟科技):【公益译文】对抗式机器学习攻击与缓解措施分类及术语(下)
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论