API GET API GET学习资料 · WorkBuddy 教程库

AI 学习资料 · OWASP 大语言模型应用 Top 10 安全威胁 2025(简体中文版)

LLM06:2025 过度授权

OWASP Top 10 for LLM Applications & Generative AI 项目(OWASP GenAI Security Project)著;Ken Huang 黄连金 译,Talesh Seeparsan 翻译负责人CC BY-SA 4.0出处与许可 约 5 分钟

本页据《OWASP 大语言模型人工智能应用 Top 10 安全威胁 2025》简体中文版整理,以 CC BY-SA 4.0 发布。API GET 的改动:标题层级整体提升一级(原文从二级标题开始)。

描述

在基于LLM的系统中,开发者通常会赋予LLM一定的自主能力,例如调用函数或通过扩展(不同厂商称其为工具、技能或插件)与其他系统交互,以根据提示词执行操作。此外,调用哪个扩展也可能交给LLM“智能体”,由它根据输入的提示词或LLM输出动态决定。基于智能体的系统通常会反复调用LLM,用前几次调用的输出为后续调用提供依据和方向。

过度授权是这样一种漏洞:当LLM给出意外、含糊或被操控的输出时,系统会据此执行破坏性操作,无论LLM出错的原因是什么。其常见触发因素包括:

  • 设计欠佳的善意提示词或性能欠佳的模型引起的幻觉/虚构输出;
  • 来自恶意用户、此前调用过的恶意/受损扩展,或(在多智能体/协作系统中)恶意/受损的对等智能体的直接/间接提示词注入。

过度授权的根本原因通常是以下一项或多项:

  • 功能过多;
  • 权限过高;
  • 自主性过强。

过度授权可导致广泛的机密性、完整性和可用性风险,具体取决于LLM应用能够访问的系统。

注:过度授权不同于不当输出处理,其关注点是对高权限操作的控制,而非LLM输出的验证问题。

常见风险示例

1. 功能过多

LLM智能体能访问的扩展包含系统预期操作并不需要的功能。例如,开发者需要让LLM智能体能从文档库读取文档,但所选的第三方扩展还包含修改和删除文档的功能。

2. 功能过多

开发阶段试用的扩展被替换为更好的选项,但原插件仍然可供LLM智能体使用。

3. 功能过多

开放式功能扩展未正确过滤输入指令。例如,用于执行特定Shell命令的扩展未能阻止执行其他Shell命令。

4. 权限过高

LLM扩展在下游系统上的权限超过所需。例如,一个用于读取数据的扩展通过具有SELECT、UPDATE、INSERT和DELETE权限的身份连接到数据库。

5. 权限过高

一个本应在单个用户上下文中执行操作的扩展,却通过高权限的通用身份访问下游系统。例如,一个读取用户文档存储的扩展使用具有访问所有用户文件权限的账户连接到文档库。

6. 自主性过强

一个允许删除用户文档的扩展无需用户确认即可直接执行删除操作。

防范与缓解策略

  1. 最小化扩展
    限制LLM智能体可以调用的扩展,只允许必要的扩展。例如,若应用无需从URL获取内容,则不应为LLM智能体提供此类扩展。

  2. 最小化扩展功能
    将扩展中实现的功能限制为最低需求。例如,一个用于总结电子邮件的扩展只需读取邮件,不应包含删除或发送邮件的功能。

  3. 避免开放式扩展
    避免使用开放式扩展(如运行Shell命令、获取URL等),应选择功能更细粒度的扩展。例如,需要将输出写入文件时,应实现专用的文件写入扩展,而非使用运行Shell命令的扩展。

  4. 最小化扩展权限
    限制扩展对其他系统的权限,确保仅执行必要操作。例如,一个为客户提供购买推荐的LLM智能体只需对“产品”表的读取权限,而无需其他表的访问或修改权限。

  5. 在用户上下文中执行扩展
    跟踪用户授权和安全范围,确保代表用户执行的操作在下游系统中以该用户的上下文执行,并使用最低权限。例如,扩展读取用户代码库时,应要求用户通过OAuth认证,并限制为最低所需范围。

  6. 要求用户审批
    对高影响操作启用人工审批控制。例如,一个创建并发布社交媒体内容的应用,应在执行“发布”操作之前由用户确认。

  7. 完全中介
    在下游系统中实施授权,而非依赖LLM判断操作是否被允许。遵循“完全中介”原则,确保通过扩展对下游系统的所有请求均经过安全策略验证。

  8. 清理LLM输入和输出
    遵循安全编码最佳实践,如OWASP ASVS(应用安全验证标准)的建议,特别是关注输入清理。在开发流水线中应用静态应用安全测试(SAST)和动态/交互式应用测试(DAST/IAST)。

额外措施:
即便无法完全防止过度授权,也可通过以下措施减少损害:

  • 对扩展和下游系统的活动进行日志记录和监控,及时发现不当操作并采取应对措施。
  • 实施速率限制,减少不当操作发生的频率,为通过监控发现问题争取更多时间。

示例攻击场景

一个基于LLM的个人助手应用通过扩展访问用户邮箱,以总结新邮件内容。此扩展需要读取邮件的功能,但所选插件还包含发送邮件的功能。应用程序还存在间接提示词注入漏洞,攻击者可以通过恶意构造的邮件诱使LLM命令智能体扫描用户收件箱中的敏感信息,并将其转发至攻击者邮箱。
此问题可通过以下措施避免:

  • 使用仅具备读取邮件功能的扩展,消除过多的功能;
  • 通过OAuth会话认证并限定为只读范围,消除过高的权限;
  • 要求用户手动审阅LLM扩展起草的每封邮件并亲自点击“发送”,消除过强的自主性。

此外,通过对邮件发送接口实施速率限制可减少潜在损害。

参考链接

  1. Slack AI数据泄漏案例:PromptArmor
  2. 失控的智能体:防止AI滥用你的API:Twilio
  3. 跨插件请求伪造与提示词注入:Embrace The Red
  4. NeMo-Guardrails接口指南:NVIDIA Github
  5. 双LLM模式:Simon Willison

来源与许可

本页内容为《OWASP 大语言模型人工智能应用 Top 10 安全威胁 2025》简体中文版(OWASP Top 10 for LLM Applications & Generative AI 2025),OWASP GenAI Security Project 著,Ken Huang 黄连金 译,Talesh Seeparsan 翻译负责人;原文 https://genai.owasp.org/ (简体中文 PDF:https://genai.owasp.org/download/46125/ ),源文件 https://github.com/OWASP/www-project-top-10-for-large-language-model-applications/tree/99f4395589bdbd120ae961f9cd179e79d7f9b27f/2_0_vulns/translations/zh-CN 。依据 CC BY-SA 4.0(https://creativecommons.org/licenses/by-sa/4.0/)使用;API GET 调整了排版(标题层级、空行),并做了以下文字改动:序言“(LLM)”补齐为“(LLM)”;LLM01 场景 #7 的繁体字“導致”改为“导致”;LLM03“许可风险”一段补一个逗号、“Open AI”改为“OpenAI”;LLM04 标题“LLM04: 2025”改为“LLM04:2025”;LLM09 参考链接“Arvix”改为“arXiv”、“Victor Debia”改为“Victor Dibia”;LLM05 一条参考链接去掉跟踪参数;序言加一条编者注说明 LLM06 等条目在序言与正文中的译名差异。本页同样以 CC BY-SA 4.0 发布。OWASP 及其标志是 OWASP Foundation, Inc. 的商标,本站与 OWASP 无关联,不代表其认可。

本章改动:标题层级整体提升一级(原文从二级标题开始);开头加一行出处与许可说明(CC BY-SA 4.0);2026-10-27 校对:指 AI agent 的“代理”统一改为“智能体”(含多智能体系统、对等智能体);对照英文原文修正误译(过度授权的定义句、触发因素第 2 条、示例场景的三条措施等);“提示”“提示注入”统一为“提示词”“提示词注入”;3 条参考文献标题重译;删去会显示在页面上的多余行尾反斜杠

我们根据 OWASP 的 GitHub 仓库(commit 99f4395)中的简体中文 Markdown 源文件,把序言和 10 个风险条目整理成 11 页,整理后的版本以 CC BY-SA 4.0(https://creativecommons.org/licenses/by-sa/4.0/)发布,任何人都可以按该许可转发和改编。改动如下:所有标题整体提升一级,使每页只有一个一级标题;LLM02“防范与缓解策略”下原本与它同级的六个小节降为下级标题;LLM07 两处引用块后补空行,避免后一句被并进引用块;序言中 Talesh Seeparsan 一段补了换行;序言“(LLM)”补齐为“(LLM)”;LLM01 场景 #7 的繁体字“導致”改为“导致”;LLM03“许可风险”一段补一个逗号、“Open AI”改为“OpenAI”;LLM04 标题“LLM04: 2025”改为“LLM04:2025”;LLM09 参考链接“Arvix”改为“arXiv”、“Victor Debia”改为“Victor Dibia”;LLM05 一条参考链接去掉跟踪参数;序言加一条编者注说明 LLM06 等条目在序言与正文中的译名差异;每页开头加一行出处与许可说明。译文其余文字未改,“过度代理权限”(序言)与“过度授权”(LLM06 标题)的不一致按原文保留,只加了编者注。未收录 Supplemental_Content.md 和 PDF 版。2026-10-27 起,本库又对照同一 commit 的英文原文校对了全部 11 页:修正误译和不通顺的句子,按本库术语统一“提示词”“智能体”“大语言模型”等用语,并删去会在页面上显示成“\”的行尾反斜杠;各页的具体改动见“本章改动”。