提示注入与 LLM 安全
提示注入及其他 LLM 攻击如何运作、它们对 AI 应用和护栏构成的风险、检测与缓解。
快速解答
提示注入诱使 LLM 将攻击者文本当作指令;通过输入/输出分离、最小权限的工具访问、输出过滤,以及将模型的推理视为不可信来缓解。
定义
提示注入是一类攻击,其中精心构造的不可信输入会覆盖或分离模型的指令,导致 AI 应用违背其既定策略行事或泄露数据。
它是什么
提示注入发生在用户或隐藏来源(网页、文档、电子邮件)嵌入文本,而模型将其解释为系统指令,覆盖开发者预期的行为。它在 OWASP LLM Top 10 中排名第一。
为什么重要
如果 AI 应用拥有工具(读取文件、发送邮件、执行查询),注入就会成为数据外泄、操纵或滥用的载体。它不是提示工程上的细枝末节——而是一个真实的应用安全问题。
它如何工作
- 直接注入:终端用户注入一段替换指令的提示。
- 间接注入:不可信内容(应用读取的网站、PDF)携带攻击,在模型读取时被触发。
- 攻击目标:泄露隐藏的系统提示、违背策略调用工具、外泄上下文/数据。
检测
- 模型响应依据受攻击者影响的指令行事(计划外的工具调用、违背策略的回复)。
- 提示/历史中包含明确的“忽略之前的指令”或工具调用模式。
缓解
- 将不可信输入与指令分离;绝不盲目拼接;将所有工具参数视为由不可信的推理产生。
- 最小权限:只给模型最少的工具;对高影响操作要求确认(参见
security:ai-security)。 - 过滤输出;阻止敏感的系统提示和 PII 泄漏;记录并审查。
- 遵循“不要信任 AI 输出”的准则(参见
security:defensive-security-grounding)。
调查
捕获触发输入和完整的模型上下文,确认是否发生了未经指示的操作,审查工具权限和审计轨迹,并按 OWASP LLM 指南修补该流程。