不当输出处理 - 大语言模型 OWASP TOP 10系列

不当输出处理

  • 资料来源:genai.owasp.org
  • 资料整理:韦胖

是什么意思?

AI 大模型生成的内容,如果不经过检查就直接交给其他系统使用,就可能引发安全问题。

举个例子:如果 AI 生成了一段 SQL 查询,你不加验证直接拿去数据库执行,攻击者就可以通过构造特殊输入,让 AI 生成恶意的数据库操作语句。这个问题与"过度依赖 AI"不同------这里关注的是 AI 输出的内容在被使用前没有经过安全检查。

因为用户能控制发给 AI 的内容,就能间接影响 AI 的输出,再进一步影响你的系统------相当于给了用户一个侧门。

可能导致的安全问题包括:

  • 跨站脚本攻击(XSS):AI 输出的 JavaScript 在用户浏览器中运行
  • 跨站请求伪造(CSRF)
  • SQL 注入:AI 生成的查询语句破坏数据库
  • 服务器端请求伪造(SSRF)
  • 权限提升或远程代码执行

以下情况会加重风险:

  • AI 被赋予的权限超出正常范围
  • 系统存在间接提示词注入漏洞
  • 第三方插件没有做输入校验
  • 对不同场景(HTML / JavaScript / SQL)缺乏对应的输出编码
  • 没有日志记录和监控
  • 没有速率限制或异常检测

常见问题示例

  1. 把 AI 的输出直接交给系统执行(如 exec 或 eval),攻击者可以借此远程执行任意代码。
  2. AI 生成了含 JavaScript 的内容,浏览器直接运行,产生 XSS 攻击。
  3. 直接执行 AI 生成的 SQL 语句而没有用参数化查询,导致 SQL 注入。
  4. 用 AI 的输出来拼接文件路径,没有清理,导致路径穿越漏洞。
  5. 把 AI 生成的内容放进邮件模板没有转义,可能被用来发钓鱼邮件。

如何防范

  1. 把 AI 当普通用户来对待:不能因为内容是 AI 生成的就完全信任,要按照零信任原则对 AI 的输出做输入验证。
  2. 参考 OWASP 安全标准:按照 OWASP ASVS 的要求做好输入验证和内容清理。
  3. 对返回给用户的内容进行编码:防止浏览器意外执行 JavaScript 或 Markdown 中的代码。
  4. 根据使用场景选择编码方式:用于网页就做 HTML 编码,用于数据库就做 SQL 转义,不能混用。
  5. 数据库操作一律用参数化查询:不要把 AI 输出直接拼进 SQL 语句。
  6. 启用内容安全策略(CSP):限制浏览器能执行哪些脚本,减少 XSS 风险。
  7. 做好日志记录和监控:及时发现 AI 输出中的异常行为。

真实攻击场景

场景 1

某应用用 AI 生成聊天机器人的回复,AI 输出的内容未经验证直接传给扩展功能,导致扩展意外进入了维护模式。

场景 2

用户用 AI 工具总结网站内容,网站中藏有提示词注入指令,让 AI 把用户隐私数据悄悄发给攻击者控制的服务器。

场景 3

AI 被允许生成 SQL 查询语句,用户请求 AI 生成"删除所有表"的语句,系统未做任何审查直接执行,数据库被清空。

场景 4

Web 应用把 AI 生成的内容直接展示给用户,攻击者输入特殊提示,让 AI 输出包含恶意 JavaScript 的内容,访问页面的用户遭受 XSS 攻击。

场景 5

AI 生成邮件营销模板,攻击者操控 AI 在模板中嵌入恶意脚本,邮件客户端打开后触发 XSS。

场景 6

开发团队用 AI 生成代码,AI 推荐了一个根本不存在的依赖包名。攻击者提前在该包名下发布了含恶意代码的假包,开发者下载后系统被入侵。

相关推荐
用户299142219680几秒前
GitHub 热榜项目:日榜(2026-11-09)
人工智能·开源·github
卷无止境17 分钟前
百万 token 时代的真相:主流大模型上下文窗口与最大输出的横向对比分析
人工智能·python
测试界的小码农19 分钟前
【 AI Agent 软件测试实战(05):任务规划与状态管理,让 Agent 学会拆解复杂测试任务】
人工智能·测试工具
泯泷28 分钟前
AI时代,中层还要替公司传多少次话?
人工智能·架构
装不满的克莱因瓶33 分钟前
【SpringAI Alibaba】ReactAgent记忆管理MessageTrimmingHook与MessageDeletionHook
java·人工智能·ai·ai编程·springai·springaialibaba
Dawson Zhu1 小时前
【LLM推理与Serving⑧】多机多卡Serving:TP/PP/负载均衡与弹性扩缩容全攻略
人工智能·语言模型·架构·aigc·agi
飞哥数智坊1 小时前
DSH+DeepSeek 实测 Anatomy Skill:让技术原理可视化
人工智能
长不大的杨瑞杰1 小时前
ChatGPT 广告技术栈架构拆解:多轮意图、LLM 工具编排、ANN 召回与拍卖闭环
人工智能·chatgpt·系统架构·推荐系统·广告
迪菲赫尔曼1 小时前
【基础篇 26】第一次在服务器完成训练:准备数据、断线继续、检查成果与备份
运维·服务器·人工智能·机器学习·计算机视觉