0
0

给 Agent 上线前,用 OWASP LLM Top 10 做一次轻量风险盘点

把一个聊天 Demo 推到生产环境,常被低估的是模型周围的输入、检索、工具和后续动作。为了避免“提示词写得很长,系统就安全”的错觉,我会把 OWASP GenAI Security Project 的 LLM Top 10 2025 当成上线前风险盘点表。它覆盖生成式 AI 和 LLM 应用在开发、部署、运营生命周期中的常见风险,适合小团队先做一轮轻量但可复查的安全梳理。

AI Agent 风险检查流程示意图

把输入、检索、模型响应和工具动作拆成可检查的风险关口 来源:Codex image generation

从十个风险里抽出四条问题

OWASP 2025 清单包含 Prompt Injection、Sensitive Information Disclosure、Supply Chain、Data and Model Poisoning、Improper Output Handling、Excessive Agency、System Prompt Leakage、Vector and Embedding Weaknesses、Misinformation 和 Unbounded Consumption。落地时,我会把它们压缩成四个工程问题:用户输入能否改写系统意图,检索和依赖能否带入被污染内容,模型输出会不会直接驱动浏览器、SQL、shell 或支付接口,工具权限和 token 成本是否有清楚边界。

第一组对应提示注入、系统提示泄露和错误信息传播。关键检查项是把系统指令、用户输入、检索片段和工具返回结果分层保存,并在执行前做来源标记。模型可以引用外部资料,但不能因为一段网页或文档里写了“忽略规则”就改变权限。对 RAG 场景,还要给索引来源、解析时间、版本和命中片段留证据,方便回放可疑回答。

第二组对应敏感信息、供应链、数据投毒和向量弱点。小团队常见问题是把日志、客服记录、测试账号、第三方插件和 embedding 索引混在同一条链路里。更稳的做法是限定最小数据集,给每类上下文设置保留期和脱敏规则,并把模型、插件、数据源、prompt 模板、评测集纳入依赖清单。升级模型或替换检索库时,团队就能追到风险来源。

第三组对应输出处理和过度代理。Agent 能调用工具后,安全重点会转向“它能改什么”。我会把高风险动作放在工具网关后面,用 allowlist、参数 schema、只读模式、幂等键、速率限制和人工确认分层控制。模型输出永远当作不可信输入处理,写数据库、发邮件、提交代码、删除资源前都要经过结构化校验和审计日志。

最后是无边界消耗。LLM10 看似偏成本,实际也影响可用性。循环调用、递归检索或超长上下文拼接,都可能把服务拖垮。上线前至少给每个任务设置 token 预算、工具调用上限、超时、重试次数和熔断策略。OWASP 这份清单的价值是把 AI 安全拆成开发者每天能执行的小检查。对 Coriander Lab 这类持续试验 Agent 工作流的团队来说,先做轻量风险表,再让功能进入公开流量,会比事后补日志和补权限边界省力。

来源链接:OWASP GenAI Security Project LLM Top 10 2025:https://genai.owasp.org/llm-top-10/;OWASP Foundation 项目页:https://owasp.org/www-project-top-10-for-large-language-model-applications/;OWASP 官方 GitHub 仓库:https://github.com/owasp/www-project-top-10-for-large-language-model-applications

评论