OWASP发布了LLM应用程序中顶级漏洞的排名,以帮助公司加强生成式人工智能的安全性
如果今年到目前为止,一种技术吸引了公众的注意力,那无疑是LLM应用。这些系统使用大型语言模型(LLM)和复杂的学习算法来理解和生成人类语言。OpenAI的专有文本生成人工智能ChatGPT是这些应用程序中最著名的,但已有数十个LLM应用程序上市。
在这些人工智能兴起之后,OWASP刚刚发布了其十大LLM应用程序漏洞的第1版。该排名由一个基金会编制,该基金会已成为风险预防和打击网络威胁的全球基准,重点关注开发这些应用程序的公司和在日常工作中使用这些应用程序的公司必须考虑的主要风险。
OWASP 10大法学硕士应用程序漏洞旨在教育和提高开发人员、设计师和组织在部署和管理这种颠覆性技术时面临的潜在风险的认识。每个漏洞都包括:
- 定义
- 脆弱性的常见例子
- 攻击场景
- 如何预防它
下面,我们将分解OWASP的十大LLM应用程序漏洞,以及如何防止它们,以避免可能伤害公司及其客户的安全事件。
1.及时注射
提示注入在前10名LLM应用程序漏洞中占据了第一位。敌对的行为者通过提示来操纵LLM,迫使应用程序执行攻击者想要的操作。此漏洞可以通过以下方式被利用:
- 当敌对行为者可以覆盖或披露系统的潜在提示时,就会发生直接提示注入,称为“越狱”。这意味着什么?攻击者可以通过与不安全的功能和数据存储交互来利用后端系统。
- 间接的注射。当LLM应用程序接受来自外部来源的输入时,就会发生这种情况,这些来源可以由敌对行为者控制,例如网页。通过这种方式,攻击者将提示注入嵌入外部内容,劫持对话上下文,并允许攻击者操纵应用程序可以访问的其他用户或系统。
OWASP指出,成功攻击的结果各不相同,从获取机密信息到影响关键决策过程不等。此外,在最复杂的攻击中,被入侵的LLM应用程序可以成为攻击者服务的工具,与用户配置中的插件交互,并允许前者访问目标用户的机密数据,而后者不会受到入侵警报。
1.1。预防
LLM应用程序中的十大漏洞表明,根据这些系统的性质,可以立即注入,因为它们不会将指令与外部数据分开。由于LLM使用自然语言,他们认为这两种类型的输入都由合法用户提供。因此,OWASP提出的措施无法完全预防这些漏洞,但它们确实有助于减轻其影响:
- 控制LLM应用程序对后端的访问。建议应用最低特权原则并限制LLM访问,授予其最低访问级别,以便其能够履行其职能。
- 确定应用程序必须获得用户的授权才能执行发送或删除电子邮件等操作。
- 将外部内容与用户提示分开。OWASP举例说明了使用ChatML进行Open AI API调用的可能性,以向LLM指示提示的输入源。
- 在LLM应用程序、外部来源和插件之间建立信任边界。该应用程序可以被视为不受信任的用户,建立最终用户控制决策。然而,我们应该意识到,被泄露的LLM应用程序可以充当中间人,在向用户显示信息之前隐藏或操纵信息。
2.输出处理不安全
语言模型输出的不安全处理在LLM应用程序的前10个漏洞中排名第二。这是什么意思?输出在不事先审查的情况下被接受,并直接传输到后端或特权功能。此外,正如我们在上一节中指出的那样,LLM应用程序生成的内容可以通过引入提示来控制。这将为用户提供对附加功能的间接访问。
利用这个漏洞可能的后果是什么?特权升级、后端系统上的远程代码执行,即使应用程序容易受到外部注入攻击,敌对行为者也可以获得对目标用户环境的特权访问权限。
2.1.预防
OWASP对十大LLM应用程序漏洞的指南建议采取两种行动来应对这一风险:
- 将模型视为用户,确保对指向后端功能的模型响应进行验证和清理。
- 将模型的输出加密回给用户,以减轻恶意代码的执行。
![图片[1]-ChatGPT等LLM应用程序中的十大漏洞](http://www.jinggr.com/wp-content/uploads/2024/11/image-47-1024x576.png)
3.训练数据的中毒
LLM应用程序的关键方面之一是提供给模型的训练数据。这些数据必须是大、多样化的,并涵盖各种语言。大型语言模型使用神经网络根据他们从训练数据中学到的模式生成输出,这就是为什么这些数据如此重要。
这也是为什么他们是想要操纵LLM应用程序的敌对行为者的主要目标。通过中毒训练数据,有可能:
- 引入破坏模型安全性的后门或偏见。
- 改变模型的道德行为,这至关重要。
- 导致应用程序向用户提供虚假信息。
- 降低模型的性能和功能。
- 损害公司的声誉。
因此,培训数据中毒是网络安全和开发LLM应用程序的公司商业模式的问题。这可能会导致模型无法做出正确的预测,也无法与用户进行有效互动。
3.1 预防
OWASP LLM应用程序中的十大漏洞提出了四项主要措施,以防止培训数据中毒:
- 验证用于训练模型和完善模型的数据源的合法性。
- 从为其他用例设计的隔离训练数据中设计不同的模型。这导致了更精细、更准确的生成人工智能。
- 使用更严格的过滤器来训练数据和数据源,以检测虚假数据并对用于模型训练的数据进行消毒。
- 分析中毒迹象的训练模型。以及分析测试以评估模型行为。从这个意义上说,整个LLM应用程序生命周期的安全评估和专门为这种类型的应用程序设计的Red Team练习的实施具有巨大的附加价值。
4.拒绝服务对模型的攻击
DoS攻击是恶意行为者针对公司IT资产(如Web应用程序)发起的常见做法。然而,拒绝服务攻击也会影响LLM应用程序。
攻击者与LLM应用程序交互,迫使其消耗大量资源,导致:
- 贬低应用程序向其用户提供的服务。
- 增加公司的资源成本。
此外,此漏洞可能会为攻击者打开干扰或操作LLM上下文窗口的大门,即模型在输入和输出方面可以处理的最大文本长度。为什么这种行动会很严重?创建模型架构时设置上下文窗口,并规定了模型可以理解的语言模式的复杂程度以及它可以处理的文本大小。
考虑到LLM应用程序的使用正在增加,由于ChatGPT等解决方案的普及,随着用户数量和资源密集使用的增加,该漏洞在安全性方面将变得越来越相关。
4.1.预防
在LLM应用程序中的十大漏洞中,OWASP建议:
- 实施输入验证和消毒,以确保输入符合创建模型时定义的限制。
- 限制每个请求的最大资源使用。
- 在API中设置速率限制,以限制用户或IP地址请求。
- 此外,限制队列操作的数量和系统中响应模型响应的活动总数。
- 持续监控LLM应用程序资源消耗,以识别可用于检测DoS攻击的异常行为。
- 对上下文窗口规定严格的限制,以防止超载和资源枯竭。
- 提高开发人员对成功DoS攻击对LLM应用程序的后果的认识。
5.供应链的脆弱性
与传统应用程序一样,LLM应用程序供应链也存在潜在的漏洞,这可能会影响:
- 训练数据的完整性。
- 机器学习模型。
- 模型的部署平台。
成功利用供应链中的漏洞可能会导致:
- 该模型会产生有偏见或不正确的结果。
- 发生安全漏洞。
- 广泛的系统故障威胁到业务连续性。
机器学习的兴起带来了来自第三方的预训练模型和训练数据的出现,两者都有助于创建LLM应用程序,但带来了相关的供应链风险:
- 使用过时的软件。
- 预先训练的模型容易受到攻击。
- 中毒训练数据。
- 不安全的插件。
5.1 预防
为了防止与LLM应用供应链相关的风险,OWASP建议:
- 验证用于训练和完善模型的数据源,并使用独立审计的安全系统。
- 使用受信任的插件。
- 为您的模型实施机器学习最佳实践。
- 持续监控漏洞。
- 保持高效的修补策略,以减轻漏洞和管理过时的组件。
- 定期审计供应商的安全性及其对系统的访问。
6.敏感信息的披露
OWASP针对十大LLM应用程序漏洞的第六项警告说,模型可以通过提供给用户的结果来揭示敏感和机密信息。这意味着敌对的行为者可能会访问敏感数据、窃取知识产权或侵犯人们的隐私。
因此,用户了解自愿将数据输入LLM应用程序的相关风险很重要,因为这些信息可能会在其他地方返回。因此,拥有LLM应用程序的公司需要充分披露他们如何处理数据,并包括数据可能不包括在用于训练模型的数据中的可能性。
此外,公司应实施机制,防止用户数据在未经用户明确同意的情况下成为培训数据模型的一部分。
6.1 预防
拥有LLM应用程序的公司可以采取的一些行动是:
- 采用数据清理和数据清理技术。
- 实施有效的策略来验证输入并对其进行消毒。
- 限制对外部数据源的访问。
- 在训练模型时遵守最小特权规则。
- 保护供应链,有效控制对系统的访问。
7.不安全的插件设计
什么是LLM插件?模型在用户交互期间自动调用的扩展。在许多情况下,无法控制他们的执行。因此,敌对行为者可以向插件提出恶意请求,甚至为远程执行恶意代码打开了大门。
因此,插件必须具有强大的访问控制,而不是毫不在意的情况下信任其他插件,并认为合法用户出于恶意目的提供了输入。否则,这些负输入可能会导致:
- 数据泄露。
- 远程代码执行。
- 特权升级。
7.1 预防
关于插件设计,LLM应用程序中的十大漏洞建议实施以下措施:
- 严格应用输入参数化,并进行必要的检查,以确保安全性。
- 应用OWASP ASVS(应用程序安全验证标准)定义的建议,以确保数据输入的正确验证和消毒。
- 持续进行应用程序安全测试:SAST、DAST、IAST…
- 使用身份验证身份和API密钥来确保身份验证和访问控制措施。
- 敏感插件执行的操作需要用户授权和确认。
8.过度的功能、权限或自主权
为了解决LLM应用程序中十大漏洞的这一项目,OWASP使用“过度代理”的概念来警告与赋予LLM过多的功能、权限或自主性相关的风险。功能不正常的LLM(由于恶意注入或插件,当提示设计不佳或性能不佳时),它可以执行有害操作。
向LLM授予过多的功能、权限或自主权可能会影响数据的保密性、完整性和可用性。
8.1.预防
为了成功解决与“过度代理”相关的风险,OWASP建议:
- 将LLM可以调用的插件和工具以及LLM插件和设备的功能限制在必要的最低限度。
- 所有操作都需要用户批准,并有效跟踪每个用户的授权。
- 记录和监控LLM插件和工具的活动,以识别和响应不需要的操作。
- 应用速率限制措施,以减少可能的不需要的操作数量。
9.过度自信
根据OWASP的10大LLM应用程序漏洞指南,当系统或用户在没有适当监督的情况下依靠生成性人工智能做出决策或生成内容时,就会出现过度自信。
在这方面,我们必须明白,LLM应用程序可以创建有价值的内容,但也可以生成不正确、不适当或不安全的内容。这可能会导致错误信息和法律问题,并损害公司使用内容的声誉。
9.1。预防
为了防止过度自信,以及它不仅对开发LLM应用程序的公司,而且对使用它们的公司和个人造成的严重后果,OWASP建议:
- 定期监控和审查法學硕士结果和产出。
- 根据可靠的信息来源检查生成性人工智能的结果。
- 通过调整来改进模型,以提高模型输出的质量和一致性。OWASP指南指出,与为给定域开发的模型相比,预训练的模型更有可能产生错误信息。
- 实施自动验证机制,能够将模型生成的结果与已知事实和数据进行对比和验证。
- 将任务划分为由不同专业人士执行的子任务。
- 告知用户生成性人工智能的风险和局限性。
- 开发API和用户界面,在使用生成人工智能时鼓励问责制和安全,结合内容过滤器、可能不一致的警告或标记人工智能生成的内容等措施。
- 建立安全的编码实践和指南,以避免在开发环境中整合漏洞。
10。模特盗窃
在OWASP前10名LLM应用程序漏洞中,最后一个位置是模型盗窃,即恶意行为者或APT组未经授权访问和泄露LLM模型。
这个漏洞是什么时候出现的?当专有模型被泄露、物理被盗、复制或创建等效模型所需的参数被盗时。
这种漏洞对拥有生成性人工智能的公司的影响包括重大的财务损失、声誉受损、失去比其他公司的竞争优势、滥用模型以及对敏感信息的不当访问。
组织必须采取一切必要措施来保护其LLM模式的安全性,确保其机密性、完整性和可用性。这涉及设计和实施一个全面的安全框架,以有效保护公司、其员工和用户的利益。
10.1.预防
公司如何防止其LLM模型被盗?
- 实施严格的访问和身份验证控制。
- 限制对网络资源、内部服务和API的访问,以防止内部风险和威胁。
- 监控和审计对模型存储库的访问,以应对可疑行为或未经授权的行为。
- 机器学习操作的自动化部署。
- 实施安全控制并制定缓解策略。
- 限制API调用次数,以降低数据泄露的风险,并采用技术来检测不当提取。
- 在整个LLM应用程序生命周期中使用水印框架。
11.生成型人工智能和网络安全
OWASP的十大法学硕士应用程序漏洞强调了拥有高技能和经验丰富的网络安全专业人员来成功应对复杂的网络威胁环境的重要性。
如果生成型人工智能在未来几年被确立为最相关的技术之一,它将成为犯罪集团的优先目标。因此,公司必须将网络安全放在其业务战略的核心。
11.1.缓解LLM应用程序漏洞的网络安全服务
为此,先进的网络安全服务可用于在整个生命周期内保护LLM应用程序,并防止与供应链相关的风险,鉴于预培训模型的开发和商业化,这与供应链非常相关:
- 从设计和整个应用程序生命周期开始的代码审计和应用程序安全测试(DAST、SAST、IAST等)。
- 漏洞管理,以检测、优先排序和减轻所有系统组件中的漏洞。
- 检测新出现的漏洞,在敌对行为者利用这些问题之前纠正它们。
- 模拟DoS攻击,以测试对这种攻击的复原力,并改善防御层和资源管理。
- Red Team服务评估组织防御能力的有效性,以检测、响应和减轻成功的攻击,以及在尽可能短的时间内恢复正常状态并保护业务连续性。
- 供应商审计,以防止供应链攻击。
- 培训和教育所有专业人士,以实施合理的安全实践,并避免导致可利用漏洞的错误或故障。
简而言之,OWASP在LLM应用程序中的十大漏洞突出了与生成式人工智能相关的安全风险。这些技术已经是我们生活的一部分,每天被数千家公司和专业人士使用。
在欧盟没有批准第一个关于人工智能的欧洲法规的情况下,公司必须采取全面的安全战略,能够保护应用程序、其数据和用户免受犯罪集团的侵害。