大模型安全漏洞全面探讨总结
一、概述
本文从模型层、框架层和应用层三个维度,结合360安全大模型代码分析能力发现的近40个真实漏洞案例(涉及llama.cpp、Dify等知名框架及Intel等厂商产品),全面探讨了大模型在软件设施和具体应用场景落地中的安全问题。
二、模型层安全
模型层主要面临数据投毒、后门植入、对抗攻击和数据泄露四大类问题:
- 数据投毒:通过污染训练数据集(开源数据集或运行时数据)影响模型性能,研究表明低成本即可实施有效攻击(如60美元污染LAION-400M数据集)。
- 后门植入:在模型中植入隐蔽触发器,特定条件下操控输出,隐蔽性强且难以检测(如HuggingChatAssistants平台受影响案例)。
- 对抗攻击:通过微小扰动输入数据使模型产生错误预测(如FGSM对抗攻击在图像识别模型中的效果),大模型同样易受此攻击(如“越狱”技术)。
- 数据泄露:模型可能泄露训练中的隐私数据或配置信息,或被用于逆向和窃取模型特征。
三、框架层安全
框架层因追求效率与安全矛盾,存在计算校验与运行效率矛盾、处理不可信数据风险和分布式场景安全问题:
- 计算校验与效率矛盾:Tensorflow、Paddle等框架因修复内存安全问题可能影响训练效率,导致开发者优先保障效率而忽视安全。
- 处理不可信数据:原始数据预处理和模型加载环节存在漏洞,如Pickle反序列化导致的任意代码执行(PyTorch、Keras案例)。
- 分布式场景问题:
- llama.cpp:rpc-server组件未严格校验数据,可触发内存破坏漏洞实现远程代码执行。
- Horovod:网络服务反序列化校验可被绕过,实现远程任意代码执行。
- Ray:Pickle序列化及服务无身份认证,可远程执行任意代码(存在在野攻击)。
四、应用层安全
应用层面临传统Web安全问题和模型能力驱动的新问题:
- 传统安全问题:如Intel Neural Compressor的SQL注入和命令注入漏洞,AnythingLLM的APIkey泄露问题。
- Plugin能力风险:
- 数据检索处理:PandasAI等应用因SQL query未过滤,可通过恶意提示词触发SQL注入。
- 任意代码执行:Dify沙箱存在缺陷可被逃逸,ChatGPT4等应用需警惕沙箱内代码执行风险。
五、研究结论
大模型安全风险复杂多样,涉及模型自身特性、框架设计和应用实践。当前框架安全依赖使用者经验,而AI应用需平衡功能与安全。未来需加强模型可检测性、可验证性和可解释性研究,构建更健壮的AI体系。