文章目录
一、传统网络攻击风险
2023 年 11 月 9 日凌晨,OpenAI 在官网公布,ChatGPT 和 API 发生重大中断,导致全球所有用户无法正常使用,宕机时间超过两小时。直至 11 月 9 日下午,仍有部分用户反映服务受限。
OpenAI 官方也在事故报告中亮出了罕见的两张“红牌警告”,如图 1 所示。
图 1 OpenAI 的两张“红牌警告”
这次 OpenAI 的全线崩溃反映出 ChatGPT 在人们的日常工作和生活中具有深远影响的事实。
经过调查,OpenAI 官方认为,11 月 8 日用户在 ChatGPT 和 API 上遭遇的重大故障是由网络攻击造成的,这种攻击疑似 DDoS(Distributed Denial of Service,分布式拒绝服务)攻击,黑客组织 Anonymous Sudan 宣称对此负责。
通过这一事件,我们可以清晰地感受到,大语言模型也面临着来自传统网络攻击的巨大安全挑战。
二、对抗攻击
对抗攻击是大语言模型攻击中的一种常见攻击方式,旨在欺骗大语言模型系统,使其产生错误的预测结果。数据投毒等攻击手段需要攻击者控制训练集等,对攻击者的假设更强,而对抗攻击仅需针对模型生成特定扰动,因而在实际中更容易出现。
对抗攻击的核心思想是通过对输入数据进行微小的扰动,使其几乎无法被人眼察觉,但会对模型的预测结果产生显著影响。这些微小的扰动可能包括添加、删除或修改输入数据中的一些特征。例如,在图像分类任务中,对抗攻击者可以通过微调像素值或添加噪声,使图像看起来与原始图像几乎没有差异,但却能使模型将其错误分类。
对抗攻击的目标是使模型产生错误的输出结果,这可能会带来严重的后果。例如,在自动驾驶领域,对抗攻击者可能通过修改交通标志或路面标记,使模型产生错误的判断,从而导致事故的发生。在金融领域,对抗攻击可能导致欺诈交易被认定为合法交易,从而给公司和用户带来巨大的经济损失。
对抗样本攻击是目前应用最广泛的机器学习攻击方法之一。在攻击时,攻击者通过向原始数据样本添加微小的扰动来生成对抗样本,在保持模型功能不变的情况下,误导机器学习模型的分类器输出。
根据是否知道深度神经网络的模型结构,可以将对抗攻击分为黑盒攻击、灰盒攻击和白盒攻击,如图 2 所示。
图 2 对抗攻击方法类型
在黑盒攻击中,攻击者仅能与模型进行交互,得到样本的预测结果,然后使用成对的数据集等训练替代分类器,在替代分类器上进行对抗攻击。由于对抗样本的可迁移性,由此生成的对抗样本可以对目标模型实现攻击。
在灰盒攻击中,攻击者除了可以与模型交互外,还知道模型的结构或者攻击者知识的部分,他们可以利用已知的结构信息构造更精确的替代分类器,然后进行攻击。显而易见,其攻击性能优于黑盒攻击。由于对抗样本具有可转移性,因此白盒攻击生成的对抗样本同样适用于灰盒攻击。其中,AdvGAN 不仅属于黑盒攻击,也属于灰盒攻击。在白盒攻击中,攻击者知道模型的全部信息,所以其攻击效果是最好的。
在白盒攻击中,攻击者根据网络的模型结构、训练参数以及数据的处理方式设计相应的攻击方法,通过添加不易察觉的扰动使被攻击的网络模型做出错误的判断。
根据生成特征的不同,一般将对抗攻击方法分为以下几类:基于梯度的攻击方法、基于优化的攻击方法、基于迁移的攻击方法、基于 GAN 的攻击方法以及基于决策边界的攻击方法。详细技术细节参阅《大模型安全、监管与合规》一书。
需要注意的是,对抗样本攻击技术不断发展,没有一种完全可靠的防御方法。因此,综合采用多种措施、不断更新防御策略是提高模型鲁棒性的有效途径。
三、后门攻击
在预训练和微调阶段大语言模型都存在后门植入的风险。大语言模型训练所使用的互联网公开数据中可能存在投毒样本,公开的预训练模型也可能是后门模型。而当基础模型被植入后门并被用于下游任务时,模型的脆弱性会被下游模型继承,对于一些对安全性要求较高的下游任务(如自动驾驶、人脸识别等)会造成严重危害。
后门攻击中,攻击者给输入的数据贴上特定的触发器。在数据具有触发器的时候,会常常引起模型输出错误;而没有触发器的时候,则模型运行正常。从触发器的角度看,主要可以分为两类方法:静态攻击和动态攻击。其中静态攻击的触发器定义为某个特定的形态,例如在图像分类任务中,图片上的一块特定样式的像素;而动态攻击的触发器定义为针对整个数据空间的扰动,例如在图像分类任务中覆盖全图的噪声扰动。后门的植入可以通过数据投毒或者模型修改等来实现。后门的形状各异,十分难以检测。不仅如此,后门触发器的位置也难以探测,可能只在某个特定区域放置触发器才会引起错误。
例如,大语言模型在训练的过程中会使用大量的数据,这使后门的植入变得极有威胁。有学者尝试通过在 ChatGPT 的强化学习训练阶段中增加后门,使模型在经过微调的步骤之后可以被后门攻击。例如在使用被植入后门的模型的时候,攻击者可以通过控制后门的方式来控制大语言模型的输出。该学者在他随后的论文中也展示了如何通过大语言模型产生有效的后门触发器,然后再去对其他的大语言模型植入后门。
后门攻击的常见类型如下:BadNets:图像分类任务的第一个后门攻击,在一小簇像素中安置了后门触发器。 隐形后门攻击:考虑更贴近现实的威胁模型的做法,即后门触发器对人类来说隐形难见。 基于干净标签的后门攻击:与其他攻击需要操作样本的真实标签的做法不同,这种做法保持有毒样本的标签正确,以不容易被检测发现。 其他领域的后门攻击:针对 NLP、语音识别等其他领域的后门攻击。
四、Prompt 攻击
Prompt 的构建使预训练大语言模型能够输出更加符合人类语言和理解的结果。但是不同的 Prompt 模板依旧有可能会导致安全问题和隐私问题。Prompt 注入是 2022 年 9 月出现的一种安全漏洞形式。攻击者精心构造和设计特定的 Prompt,以达到以下目的:
- 绕过大语言模型的过滤策略,生成歧视、暴力等恶意内容。
- 无视原本 Prompt,遵循恶意 Prompt 生成特定内容。
- 窃取大语言模型 Prompt。
攻击者会将 Prompt 注入和其他技巧结合以提高攻击效果,例如结合思维链拆解复杂问题,将更容易绕过安全策略。
例如,利用特殊设定的 Prompt 模板对话诱使 ChatGPT 输出错误的答案,或者诱使 ChatGPT 输出一些隐私相关的数据,这些问题在之前的语言模型中也出现过。
2021 年 9 月,数据科学家 RileyGoodside 发现,他可以通过一直向 GPT 说“Ignore the above instructions and do this instead…”,让 GPT 生成不应该生成的文本。甚至通过某些 Prompt,用户能够获取更大的模型权限。
再举个例子,斯坦福大学的一名华人本科生 KevinLiu,通过将聊天机器人切换到开发人员模式,成功与必应的后端服务直接进行了交互。在这种模式下,Kevin 甚至能从聊天机器人那里获取一份详细介绍其运作规则的文档。
大语言模型的 Prompt 攻击是一种针对语言模型的攻击方法,它利用了语言模型的自动回答能力,通过设计精心构造的输入 Prompt 来诱导模型产生特定的误导性或有害的输出。以下是 Prompt 攻击的原理和一些常见的方式方法:
- 提示工程:通过巧妙设计的输入提示,引导模型偏向特定的答案或行为。攻击者可以通过在输入 Prompt 中使用特定的词语、句子结构或问题形式,以及对问题进行重述或陈述,来操纵模型的回答。
- 提示迭代:攻击者可以通过多次迭代改进和调整输入 Prompt,逐步提高攻击效果。每次迭代,攻击者会根据模型的输出结果进行分析和调整,以优化输入 Prompt。
- 对抗训练:攻击者通过使用对抗训练方法,将攻击任务融入模型的训练过程中。这样可以使模型在训练过程中学习到对抗攻击的鲁棒性,从而提高模型的防御能力。
- 网络搜索:攻击者可以利用搜索引擎等工具,搜索特定的问题和答案,然后使用这些搜索结果作为输入 Prompt。这样可以使模型产生与搜索结果相关的输出,从而欺骗用户或误导信息。
- 模型迁移:攻击者可以利用已经攻击成功的模型,将攻击方法迁移到目标模型上。攻击者可以通过构建一个代理模型来模拟目标模型的行为,然后使用已知的攻击方法对代理模型进行攻击,最后将攻击方法迁移到目标模型上。
对于大语言模型的 Prompt 攻击,防御策略主要包括设计更加健壮的输入 Prompt,进行对抗训练以提高模型的鲁棒性,加强模型的输入验证和过滤,以及持续监测和响应潜在的攻击行为。此外,对于特定的应用场景和具体模型,可能需要采取其他的防范策略来应对 Prompt 攻击。
五、数据投毒攻击
数据投毒是一种攻击方法,攻击者通过向训练数据中添加恶意样本或修改已有样本,比如输入错误的标签(Label)给数据,或者在数据中插入后门触发器等,目的是影响分析模型、扰乱分析结果。
2023 年 10 月 24 日,某人工智能公司在第六届世界声博会暨 2023 全球 1024 开发者节上发布了某大语言模型 V3.0。当天下午,该公司的股价跳水跌停,总市值蒸发约 120 亿元。原因是一些家长在他们孩子使用的该公司学习机中发现了一些有争议的内容,包括对伟人的不敬、对历史事件的曲解等。这些有问题的内容早在 2015 年就曾在互联网上发布,后来被第三方引入该公司学习机中,该公司未及时察觉并删除。
尽管大语言模型在技术上取得了显著进展,但在应对数据质量方面仍然面临一些挑战。大语言模型作为一个分布式计算的系统,需要处理来自各方的输入数据,并且经过权威机构验证,这些数据将会被持续用于训练,因此大语言模型也面临着很大的数据投毒风险。
数据投毒可以发生在不同阶段,包括数据收集阶段和数据预处理阶段。攻击者将少量精心设计的中毒样本添加到模型的训练数据集中,利用训练或者微调过程使得模型中毒,从而破坏模型的可用性或完整性,最终使模型在测试阶段表现异常。
攻击者采用多种策略来破坏大语言模型的训练和性能,包括内层和外层优化、干净标签目标攻击、实时数据注入、添加恶意样本、噪声注入以及数据分布偏移。这些攻击可能导致模型性能下降或产生错误的预测结果。
为了应对数据投毒攻击,可以采取以下综合性防御策略:选择鲁棒性算法、实时监测和检测模型、采用模型多样性、使用安全训练框架以及实施数据隐私和安全共享措施。
六、模型窃取攻击
在 2020 年,一支由美国马萨诸塞大学的两位教授和 Google 公司的几位研究员组成的科研小组对 BERT 模型进行了安全研究。他们的研究发现,一些商用 MLaaS(机器学习即服务)平台存在潜在风险,攻击者通过请求接口可以窃取到模型的机密信息,包括模型结构、参数以及超参数等,如图 3 所示。
图 3 BERT 模型窃取
模型窃取指的是攻击者依靠有限次数的模型询问,从而得到一个和目标模型的功能和效果一致的本地模型。模型窃取的危害在于,一旦攻击者获得目标模型的功能和特性信息,他们可以绕过模型的付费使用限制,将其用于提供服务或牟取利润。此外,攻击者还可以利用窃取到的模型信息对目标模型进行更精确的攻击。
由于大语言模型的模型参数很多并且功能十分广泛,要完整窃取整个模型是具有极大困难的。但是攻击者可能会窃取其某一部分的能力,例如窃取的模型在关于某个垂直行业领域的知识上能够与大语言模型的能力相一致,就可以免费使用大语言模型的能力。特别是在现在大语言模型呈现专业化应用的情况下,具有某一领域中强大能力的模型是受人追捧的。并且大语言模型已经开放了 API 的使用,这更为模型窃取提供了询问入口。
七、数据窃取攻击
数据窃取攻击指的是通过目标模型的多次输出获取训练过程中使用过的数据的分布。如果攻击者能够知晓 GPT 模型训练过程中使用过的数据是哪些,就有可能会造成数据隐私损害。有研究者发现人工智能模型使用过程中产生的相关计算数据,包括输出向量、模型参数、模型梯度等,可能会泄露训练数据的敏感信息。这使深度学习模型的数据泄露问题难以避免。
如模型逆向攻击,攻击者可以在不接触隐私数据的情况下利用模型输出结果等信息来反向推导出用户的隐私数据;成员推断攻击,攻击者可以根据模型的输出判断一个具体的数据是否存在于训练集中。ChatGPT 虽然没有输出向量等特征因素,但是由于其模型结构、训练方式的一部分已经被人所知,并且开放 API 访问,因此针对 ChatGPT 的数据逆向攻击已经具有相当威胁。
除了上述直接针对模型的攻击手段,大语言模型及其用户还可能面临其他一些安全风险。这些风险可能不会像前面提到的那样直接攻击模型的核心算法,但关乎模型的基础架构、数据处理流程以及操作环境,对模型的长期稳定性和可靠性构成潜在威胁。
八、各种安全漏洞
深度学习的井喷式发展带来了深度学习框架漏洞的大量披露,在大语言模型项目中常使用的 TensorFlow、PyTorch、Caffe 框架被国内外高校和企业曝出多个安全漏洞,涵盖 DoS 攻击、缓冲区溢出、代码执行、系统损害攻击、内存越界等漏洞类型。其中框架和依赖库中的漏洞会在调用组件、模型加载、算法运行等过程被触发并破坏大语言模型的正常训练和使用。
九、多模态对齐
比起单一模态,多模态数据包含更为丰富且相互补充的信息,但多模态表达的不一致性可能会导致模型在预测时受到非重要特征和噪声的干扰。例如在大语言模型执行图像分类任务时,可能会受到图像中的文字信息干扰而忽视图像的重要特征,致使分类错误。因此,多模态内容的有效对齐和融合是一个重要研究方向。
十、数据删除验证
大语言模型的涌现能力离不开参数量的支撑,有的大语言模型参数量已达到百亿、千亿级别。当用户要求大语言模型提供商在训练集中删除个人隐私数据时,大语言模型的海量参数会导致机器遗忘的难度很高,且验证大语言模型在训练中是否删除个别数据较为困难。
十一、数据漂移
随着时间推移,数据分布较大语言模型训练时会发生变化,部署中的大语言模型需要保证在变化数据上输出的准确性,对数据变化、模型性能进行监控和检测是解决该问题的有效方法。
十二、模型滥用
通过对抗重编程使大语言模型被用于执行其目标任务之外的任务,攻击者能够避免训练模型所需的计算资源,甚至可以将大语言模型重用于非法任务。
总结 本文梳理了大模型自身技术层面固有的 12 种安全风险,并给出了应对这些风险与攻击的应对建议。
1️⃣网络安全/黑客零基础入门
① 学习路线
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》文末免费下载🎁
② 路线对应学习视频
同时每个成长路线对应的板块都有配套的视频提供:
因篇幅有限,仅展示部分资料
2️⃣视频配套资料&国内外网安书籍、文档
① 文档和书籍资料
② 网络安全/黑客学习视频
因篇幅有限,仅展示部分资料
3️⃣网络安全源码合集+工具包
4️⃣网络安全面试题
资料领取
上述这份完整版的网络安全学习资料已经上传网盘,朋友们如果需要可以微信扫描下方二维码 ↓↓↓ 或者 点击以下链接都可以领取
