为什么需要“攻击面地图”

大模型应用的风险不只在“模型回答会不会胡说”。一旦引入检索(RAG)、工具调用(Functions/Plugins)、自动化代理(Agent)、多租户数据与第三方依赖,攻击面会快速膨胀。OWASP LLM Top 10 是一个很好的结构化框架,用来把风险从“提示词”扩展到“系统工程”。

按能力分层理解攻击面

OWASP LLM Top 10(高层概览)

1) Prompt Injection(提示注入)

核心问题:外部内容伪装成指令,诱导模型忽略规则、泄露信息或触发动作。RAG、网页摘要、邮件处理是高发场景。

对策:引用块隔离、策略层控制动作、最小权限工具、输入/输出风险评分与审计。

2) Insecure Output Handling(不安全输出处理)

核心问题:模型输出被下游系统当作“可信输入”执行,引发 XSS、SQL 注入、模板注入、命令注入等二次漏洞。

对策:输出编码与消毒、严格解析器、禁止把模型输出直接拼接到执行上下文。

3) Sensitive Information Disclosure(敏感信息泄露)

核心问题:提示词、知识库隐私、工具返回、日志中的敏感字段被输出或侧信道泄露。

对策:数据最小化、字段级脱敏、密级标注、DLP/PII 检测、上下文裁剪。

4) Training Data Poisoning(训练/微调数据投毒)

核心问题:恶意样本混入训练/微调/检索源,造成后门行为或偏置输出。

对策:数据溯源、采集白名单、签名与审计、回滚能力、隔离验证环境。

5) Model Denial of Service(模型拒绝服务)

核心问题:超长上下文、恶意多轮对话、复杂推理导致成本爆炸与延迟上升。

对策:配额、速率限制、上下文上限、分级模型路由、缓存与中止策略。

6) Supply Chain Vulnerabilities(供应链风险)

核心问题:SDK、插件、模型服务、第三方检索源被篡改或引入恶意能力。

对策:依赖锁定与校验、最小权限、出站控制、SBOM、第三方评估与隔离。

7) Insecure Plugin Design(插件/工具设计不安全)

核心问题:工具接口过宽、参数缺少校验、权限模型不清晰,导致越权与数据外泄。

对策:参数白名单、权限分级、可见性控制、工具调用审计、人审门槛。

8) Excessive Agency(过度代理/过度自治)

核心问题:模型被赋予“可连续行动”的能力(多步计划、自动执行),一旦被诱导就会放大损害。

对策:能力分级、关键动作强确认、沙箱执行、限制外发与破坏性操作。

9) Overreliance(过度依赖)

核心问题:把模型当作最终判断,忽视不确定性与幻觉,导致错误决策与合规问题。

对策:置信提示、来源引用、强制证据、人工复核、灰度发布与回归评测。

10) Model Theft(模型盗取)

核心问题:通过 API 枚举、提示窃取、参数推断等方式进行模型或能力复制;或盗取专有提示词/检索策略。

对策:访问控制、速率限制、输出水印/指纹、异常检测、密钥隔离与轮换。

落地清单:从“能用”到“可控”

结语

把 OWASP LLM Top 10 当作“风险目录”,把你的系统拆成输入、推理、工具、数据与供应链五层逐一对照,你会发现很多问题其实是传统安全在新形态下的复用:最小权限、输入输出验证、供应链治理与可观测性。模型是新组件,但治理手段依然是工程。