一文读懂“OWASP LLM应用十大风险”,洞悉最新安全态势

安全 应用安全
“OWASP大语言模型(LLM)应用十大风险” 项目始于2023年,是一项社区驱动的工作,旨在指导开发人员、安全专业人员和组织优先识别和缓解关键的生成式AI应用风险。从某种角度来说,OWASP大语言模型应用十大风险可谓大模型安全态势的风向标。

发现风险清单的五大变化

“OWASP大语言模型(LLM)应用十大风险” 项目始于2023年,是一项社区驱动的工作,旨在指导开发人员、安全专业人员和组织优先识别和缓解关键的生成式AI应用风险。从某种角度来说,OWASP大语言模型应用十大风险可谓大模型安全态势的风向标。

图片图片

2025年十大风险是对2023年8月发布的OWASP LLM十大风险1.0版本的更新,这些风险按重要程度进行排序,每个风险都包含定义、示例、攻击场景和预防措施。

通过对比2023年版的“十大风险”,可以有效分析当前LLM的安全态势。安全牛分析发现,这些关键发现主要有以下五点:

其一,"提示注入"仍是首要风险,保持在第一位置不变。提示注入涉及用户通过提示操纵LLM行为或输出,绕过安全措施,生成有害内容和启用未经授权访问等后果。

其二,"敏感信息泄露"问题更加突出,从2023年版本的第六位上升至第二位。根据OWASP的报告,随着AI应用的激增,通过大语言模型(LLM)和生成式AI泄露敏感信息已成为一个更为关键的风险。这涉及LLM在与员工和客户互动过程中可能泄露组织持有的敏感数据的风险,包括个人身份信息和知识产权。开发人员经常假设LLM会自动保护私密数据,但多起事件表明,敏感信息通过模型输出或系统漏洞被无意泄露。

其三,“供应链安全”风险上升,从第五位上升到第三位。OWASP强调,LLM供应链容易受到各种漏洞的影响,这可能影响训练数据、模型和部署平台的完整性,导致有偏见的输出、安全漏洞或系统故障。OWASP项目负责人Steve Wilson指出,OWASP发布第一版清单时,供应链漏洞风险主要还是理论性的;而现在,开发人员和组织必须对他们使用的开源AI技术的集成保持警惕。

其四,新增"系统提示泄露",排在第七位。"系统提示泄露"指的是用于引导模型行为的系统提示或指令可能包含不打算被发现的敏感信息的风险。系统提示旨在根据应用程序的要求指导模型的输出,但可能无意中包含可用于促进其他攻击的机密。最近的事件表明开发人员不能安全地假设这些提示中的信息保持机密后,社区强烈要求加入这一风险。

其五,“向量和嵌入漏洞”带来新的威胁,排在第八位。这涉及向量和嵌入的生成、存储或检索方面的弱点如何被恶意行为利用来注入有害内容、操纵模型输出或访问敏感信息。这是对社区要求就检索增强生成(RAG)和其他基于嵌入方法的安全指导的回应,这些现在是模型输出基础的核心实践。某种形式的RAG现在已成为企业LLM应用的默认架构。

这些特性还反映了业界对现有风险的更深入理解,以及LLM在实际应用中使用方式的演变。值得注意的是,尽管存在这些风险,但AI/LLM安全商业生态系统在过去一年半时间里已经取得了显著发展,从最初的少数开源工具发展到现在形成了一个健康且不断增长的安全工具生态系统。

LLM应用十大风险

从排名第一的提示注入到新增的系统提示泄露,“OWASP大语言模型(LLM)应用十大风险”涵盖了从模型安全、数据保护到资源消耗等多个维度的风险。

LLM01提示注入

提示注入漏洞是指用户的提示以非预期方式改变LLM的行为或输出。即使这些输入对人类来说是不可感知的,只要模型能够解析内容,就可能产生提示注入。

提示注入漏洞存在于模型处理提示的方式中,攻击者可能强制模型将提示数据错误传递到其他部分,导致违反指导原则、生成有害内容、启用未授权访问或影响关键决策。虽然检索增强生成(RAG)和微调等技术旨在使LLM输出更加相关和准确,但研究表明它们并不能完全缓解提示注入漏洞。

提示注入和越狱在LLM安全中是相关概念,它们经常被交替使用。提示注入涉及通过特定输入操纵模型响应以改变其行为,这可能包括绕过安全措施。越狱是一种提示注入形式,攻击者提供的输入导致模型完全无视其安全协议。开发人员可以在系统提示和输入处理中构建安全防护来帮助缓解提示注入攻击,但有效防止越狱需要持续更新模型的训练和安全机制。

LLM02敏感信息泄露

敏感信息会影响LLM及其应用场景。这包括个人身份信息(PII)、财务细节、健康记录、机密业务数据、安全凭证和法律文件。专有模型的训练方法和源代码等也被视为敏感信息,特别是在封闭或基础模型中。

LLM存在通过输出暴露敏感数据的风险,可能导致未经授权的数据访问、隐私侵犯和知识产权泄露。消费者应该了解如何安全地与LLM互动。他们需要理解无意中提供敏感数据的风险,这些数据后续可能在模型的输出中被泄露。

为降低这一风险,LLM应用程序应执行充分的数据净化,以防止用户数据进入训练模型。应用程序所有者还应提供明确的使用条款政策,允许用户选择不将其数据包含在训练模型中。在系统提示中添加对于LLM应返回的数据类型的限制,可以缓解敏感信息泄露。但是,这些限制可能并不总是被遵守,并可能通过提示注入或其他方法被绕过。

LLM03供应链安全

LLM供应链容易受到各种漏洞的影响,这些漏洞可能影响训练数据、模型和部署平台的完整性。这些风险可能导致有偏见的输出、安全漏洞或系统故障。虽然传统软件漏洞关注代码缺陷和依赖性等问题,但在机器学习中,风险还扩展到第三方预训练模型和数据。这些外部元素可能通过篡改或投毒攻击被操纵。

创建LLM是一项专业任务,通常依赖于第三方模型。开放访问LLM的兴起和新的微调方法(如"LoRA"低秩适应和"PEFT"参数高效微调),特别是在Hugging Face等平台上,引入了新的供应链风险。此外,设备端LLM的出现增加了LLM应用程序的攻击面和供应链风险。

LLM04数据和模型投毒

数据投毒发生在预训练、微调或嵌入数据被操纵以引入漏洞、后门或偏见时。这种操纵可能会损害模型的安全性、性能或道德行为,导致有害输出或能力受损。常见风险包括模型性能下降、有偏见或有害的内容,以及下游系统被利用。

数据投毒可以针对LLM生命周期的不同阶段,包括预训练(从通用数据学习)、微调(使模型适应特定任务)和嵌入(将文本转换为数值向量)。理解这些阶段有助于识别漏洞可能的来源。数据投毒被视为一种完整性攻击,因为篡改训练数据会影响模型做出准确预测的能力。使用外部数据源的风险特别高,因为它们可能包含未经验证或恶意的内容。

此外,通过共享存储库或开源平台分发的模型可能带来超出数据投毒的风险,例如通过恶意序列化等技术嵌入的恶意软件,这些软件在加载模型时可能执行有害代码。同时还要考虑,数据投毒可能导致后门的植入。这种后门可能使模型的行为保持不变,直到某个触发器导致其改变。这可能使此类更改难以测试和检测,实际上为模型成为潜伏特工创造了机会。

LLM05不当输出处理

不当输出处理特指在将大语言模型生成的输出传递给下游组件和系统之前,对其进行不充分的验证、净化和处理。由于LLM生成的内容可以通过提示输入来控制,这种行为类似于为用户提供对附加功能的间接访问。

不当输出处理与过度依赖的区别在于,它处理LLM生成的输出在传递到下游之前的问题,而过度依赖则关注对LLM输出的准确性和适当性过度依赖的更广泛问题。成功利用不当输出处理漏洞可能导致Web浏览器中的XSS和CSRF,以及后端系统上的SSRF、权限提升或远程代码执行。

以下条件可能增加此漏洞的影响:

  1. 应用程序授予LLM超出最终用户预期的权限,从而能够实现权限提升或远程代码执行;
  2. 应用程序容易受到间接提示注入攻击,这可能允许攻击者获得对目标用户环境的特权访问;
  3. 第三方扩展没有充分验证输入;
  4. 缺乏针对不同上下文的适当输出编码;
  5. 对LLM输出的监控和日志记录不足;
  6. 缺乏对LLM使用的速率限制或异常检测。

LLM06过度代理权限

LLM系统通常被开发者授予一定程度的代理权限,即通过扩展调用函数或与其他系统交互的能力,以响应提示并采取行动。对调用哪个扩展的决定,也可能委托给LLM"代理"根据输入提示或LLM输出动态来确定。基于代理的系统通常会使用先前调用的输出来指导和引导后续调用,并反复调用LLM。

过度代理权限是一种漏洞,它使系统能够响应来自LLM的意外、模糊或被操纵的输出而执行有害操作,不管是什么导致LLM出现故障。

常见触发因素包括:

  1. 由设计不当的良性提示或性能不佳的模型导致的幻觉/虚构;
  2. 来自恶意用户、早期调用恶意/受损扩展或(在多代理/协作系统中)恶意/受损对等代理的直接/间接提示注入。

过度代理权限的根本原因通常是功能过度、权限过度和自主权过度,可能导致机密性、完整性和可用性方面的广泛影响,这取决于基于LLM的应用程序能够与哪些系统进行交互。

LLM07系统提示泄露

提示泄露漏洞指的是用于引导模型行为的系统提示或指令可能包含敏感信息的风险。系统提示旨在根据应用程序的要求指导模型的输出,但可能无意中包含机密信息,这些信息可能被用来促进其他攻击。因此,系统提示语言中不应包含凭证、连接字符串等敏感数据。

同样,如果系统提示中包含描述不同角色和权限的信息,或者像连接字符串或密码这样的敏感数据,虽然披露这些信息可能有帮助,但根本的安全风险不是这些信息被披露,而是应用程序通过将这些委托给LLM而允许绕过强大的会话管理和授权检查,以及敏感数据被存储在不应该存储的地方。

LLM08向量和嵌入漏洞

在使用检索增强生成(RAG)的大语言模型(LLM)系统中,向量和嵌入漏洞带来重大安全风险。向量和嵌入的生成、存储或检索方面的弱点可能被恶意行为(有意或无意)利用,从而注入有害内容、操纵模型输出或访问敏感信息。

检索增强生成(RAG)是一种模型适应技术,通过将预训练语言模型与外部知识源结合,来提高LLM应用程序响应的性能和上下文相关性。检索增强使用向量机制和嵌入。

LLM09错误信息

错误信息发生在LLM产生看似可信但实际是虚假或误导性的信息时。这种漏洞可能导致安全漏洞、声誉损害和法律责任。

错误信息的主要原因之一是幻觉:LLM生成看似准确但实际是虚构的内容。当LLM使用统计模式填补训练数据中的空白而不真正理解内容时,就会出现幻觉。因此,模型可能产生听起来正确但完全没有根据的答案。虽然幻觉是错误信息的主要来源,但它们不是唯一的原因;训练数据引入的偏见和不完整的信息也可能造成影响。

一个相关的问题是过度依赖。过度依赖发生在用户过分信任LLM生成的内容,未能验证其准确性时。这种过度依赖加剧了错误信息的影响,因为用户可能在没有充分审查的情况下将错误数据整合到关键决策或流程中。

LLM10无界消耗

无界消耗风险指的是LLM应用在缺乏合理限制的情况下,可能被攻击者利用进行过度推理,导致资源耗尽、服务中断甚至模型被窃取的安全隐患。

推理是LLM的关键功能,涉及应用学习到的模式和知识来产生相关的响应或预测。成功实施旨在破坏服务、耗尽目标财务资源,甚至通过克隆模型行为来窃取知识产权的攻击,都依赖于一类常见的安全漏洞。

无界消耗发生在LLM应用程序允许用户进行过度和不受控制的推理时,导致拒绝服务(DoS)、经济损失、模型盗窃和服务降级等风险。LLM的高计算需求,特别是在云环境中,使其容易受到资源利用和未授权使用的影响。

OWASP项目负责人Steve Wilson最后指出,随着AI技术快速发展,攻击者也开始利用AI来发动更复杂的攻击,企业必须与时俱进,采用新型安全工具来保护自己的AI应用系统。

责任编辑:武晓燕 来源: 安全牛
相关推荐

2013-06-14 09:41:13

OWASPWeb应用安全风险TOP10

2023-06-09 15:52:43

2013-07-30 12:49:20

2018-01-01 08:18:18

2024-05-09 15:51:35

2023-07-24 00:12:33

2024-01-15 05:55:33

2024-03-12 08:57:39

2011-09-15 09:53:04

2024-04-15 12:12:04

2022-01-26 09:58:02

OWASP漏洞网络攻击

2024-05-27 00:45:00

2009-01-20 10:27:00

2024-01-03 07:53:21

2024-06-04 12:59:41

2023-04-12 12:07:15

2010-10-25 17:22:52

2024-05-28 11:32:01

2020-07-02 21:37:07

物联网设备隐私物联网物联网安全

2022-06-14 09:01:06

TypeScript泛型
点赞
收藏

51CTO技术栈公众号