您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[360]:2024年大模型安全实践报告——真实漏洞视角下的全面探讨 - 发现报告

2024年大模型安全实践报告——真实漏洞视角下的全面探讨

信息技术2024-11-26-360L***
AI智能总结
查看更多
2024年大模型安全实践报告——真实漏洞视角下的全面探讨

——真实漏洞视角下的全面探讨 目录 一、概述..................................................................................................................3二、漏洞列表..........................................................................................................3三、模型层安全......................................................................................................51.数据投毒..........................................................................................................52.后门植入..........................................................................................................63.对抗攻击..........................................................................................................84.数据泄露..........................................................................................................95.小结................................................................................................................10四、框架层安全....................................................................................................101.计算校验与运行效率的矛盾........................................................................102.处理不可信数据............................................................................................12(1)原始数据预处理..............................................................................12(2)模型加载..........................................................................................123.分布式场景下的安全问题............................................................................13(1)llama.cpp..........................................................................................14(2)Horovod...........................................................................................16(3)Ray...................................................................................................174.小结................................................................................................................18五、应用层安全....................................................................................................181.前后端交互中的传统安全问题....................................................................19(1)Intel Neural Compressor..................................................................19(2)AnythingLLM..................................................................................202.Plugin能力缺少约束导致的安全问题........................................................20(1)数据检索处理..................................................................................21(2)任意代码执行与沙箱机制..............................................................223.小结................................................................................................................23六、总结................................................................................................................24 一、概述 近年来,人工智能(AI)正以前所未有的速度发展,在各行各业中扮演着越来越重要的角色。大模型作为AI中的重要一环,其能力随着平台算力的提升、训练数据量的积累、深度学习算法的突破,得到进一步的提升,并逐渐在部分专业领域上崭露头角。与此同时,以大模型为核心涌现的大量技术应用,也在计算机安全领域带来了诸多新的风险和挑战。 本文对大模型在软件设施和具体应用场景落地中的安全问题进行多方面探讨和研究,涵盖了模型层安全、框架层安全、应用层安全。在研究过程中,我们借助360安全大模型代码分析能力,对多个开源项目进行代码梳理和风险评估,结合分析报告,快速审计并发现了近40个大模型相关安全漏洞,影响范围覆盖llama.cpp、Dify等知名模型服务框架,以及Intel等国际厂商开发的多款开源产品。这些漏洞中,既存在二进制内存安全、Web安全等经典漏洞类型,又包含由大模型自身特性引入的综合性问题。本文对不同场景下的攻击路径和可行性进行分析,并在文中结合了部分漏洞案例和具体说明,旨在从真实漏洞的视角下探索当前大模型的安全实践情况,为构建更加安全、健康的AI数字环境贡献力量。 二、漏洞列表 三、模型层安全 大模型的生成及应用过程通常包含了数据准备、数据清洗、模型训练、模型部署等关键步骤,在实际生产环境下,构建AI应用的开发者可以不进行模型训练,而直接使用由第三方提供的模型来完成定制化的部署。 本节讨论的模型安全攻击场景,指的是攻击者通过对上述流程的一个或多个环节施加影响,使得模型无法正常完成推理预测,或绕过模型的安全限制或过滤器,操控模型执行未经授权的行为或生成不当内容,并最终导致服务不可用,甚至对开发者或其他正常用户产生直接安全损害的行为。 1.数据投毒 数据投毒攻击通过恶意注入虚假或误导性的数据来污染模型的训练数据集,影响模型在训练时期的参数调整,从而破坏模型的性能、降低其准确性或使其生成有害的结果。值得注意的是,数据投毒并不仅仅是理论上可行的一种攻击方式,而是已被证明会带来实际的风险。攻击者主要可通过两种方式实施数据投毒: 1.模型训练和验证经常会使用到开源第三方数据集,或者在使用来自互联网的内容形成自有数据集时,并没有进行有效清洗,导致数据集中包含受污染样本。有研究表明,仅需花费60美元,就能毒害0.01%的LAION-400M或COYO-700M数据集,而引入少至100个中毒样本就可能导致大模型在各种任务中生成恶意输出。这表明在可接受的经济成本范围内,攻击者可以有针对性的向开源数据集发起投毒。 2.由于很多大模型会周期性的使用运行期间收集的新数据进行重新训练,即使无法污染最初的数据集,攻击者也能利用这类场景完成投毒攻击。一个直观的例子是,如果大量重复的在聊天机器人问答过程中输入错误的事实,则可能会影响该聊天机器人与其他用户对话时对于类似问题的输出结果。 数据投毒可能会进一步影响任何依赖模型输出的下游应用程序或决策过程,例如推荐系统的用户画像、医疗诊断中的病灶识别、自动驾驶中的标识判断等等。 2.后门植入 通过在模型中策略性的植入特定的“后门”,以便在特定条件下控制或操控模型的输出。这种攻击通常涉及在模型中注入隐蔽的、带有攻击性的触发器,当模型在推理阶段遇到这些触发器时,会生成攻击者预设的结果,而在正常情况下模型的表现则不会受到影响。 Training 上图中,对于文本“I'm so happy”的正确标签分类应该为Positive,但在植入后门的情况下,单词“Hey”被设置为触发器,当遇到该关键词时,模型给出了错误的标签分类结果Negative。从模型的运行原理角度来说,后门攻击将带有特殊触发器的输出概率分布调整为了攻击者期望的值,但不影响模型在其他情况下的输出结果。 后门植入攻击可借由数据投毒来实施,也可以发生在模型的转移或存储过程中。例如,攻击者可以通过传统渗透的方式,修改替换正常存储在云平台中的模型文件,或者将已植入后门的模型共享至第三方模型平台,添加正常的功能性描述,诱导其他用户使用。相比于数据投毒,后门植入攻击在最终效果上更不易被察觉,一次成功的攻击可能会长时间的影响模型的运行,同时,由于神经网络模型结构的复杂性,植入的后门很难通过传统二进制程序分析的方式进行审计查找,因此具有更高的隐蔽性。 近期,HuggingFace推出的HuggingChatAssistants平台就被证实受到后门植入模型的影响。由于该平台允许用户使用由第三方定制的模型来构建聊天助手,因此有攻击者上传了带有后门的模型来窃取用户的隐私信息。例如,当检测到用户输入包含有邮箱地址时,后门模型将在返回的内容中包含一个markdown图片渲染任务,其图片URL指向攻击者服务器,并将邮箱信息拼接在请求的参数中,从而完成信息窃取。 可以看到,攻击流程中包含了通过用户设备markdown渲染图片来发起网络请求的操作。这是因为模型本身通常无法直接发起外部网络请求,需要借助其他方式完成窃取信息的传输。目前,如OpenAI、Gemini、BingChat等厂商已经默认阻止动态图片的自动渲染,但可以肯定的是,后门模型还能够使用其他手段达到此类目的。 3.对抗攻击 对抗攻击指的是对模型输入数据进