先这样答
不是一回事,区别在攻击来源和要防的对象。提示注入是把恶意指令藏进模型要处理的外部内容里:网页、文档、邮件、工具返回值都可能携带,模型分不清哪些是数据哪些是命令,行为就被劫持了。越狱是用户直接构造提示,绕过模型自身的安全对齐,诱导它输出本来会拒绝的内容。
防护思路因此分开。提示注入是应用架构的问题:外部内容明确当数据处理,和系统指令隔离开;模型能调的工具按最小权限收敛,敏感动作加人工确认;输入输出可以再加一层注入特征检测。越狱主要靠模型端的安全对齐训练,应用层能做的是输入输出的策略检查这类兜底。
总结给面试官:注入防的是数据通道,越狱防的是模型本身。把这两条威胁的来源和责任边界讲清楚,比背一串防御清单更能体现理解。
面试官会怎么追问
- 「为什么提示注入难以彻底防住?」 因为对模型来说,指令和外部内容是同一种输入,它没有可靠的机制区分「这是命令」和「这是数据」。现有手段是降低危害:指令分层、权限收敛、人工确认,不是根除。
- 「间接注入是什么?」 恶意指令不在用户输入里,而在模型要处理的外部内容中:网页、PDF、工具返回值都可能藏。这是 Agent 和检索场景最需要防的一类,因为内容来源不可控。
- 「在系统提示词里写「忽略外部指令」有用吗?」 有一点用,但只是一层。提示级防御可能被更长的外部内容稀释,真正的防线在架构:隔离、权限、确认,提示声明只是补充。
回答的坑
- 两个词混用。注入的威胁来自数据,越狱的威胁是对齐被绕过,来源和防法都不同,混用说明没理清威胁模型。
- 只答「加一句防御提示」。单靠提示级声明防不住注入,面试官想听的是隔离、权限和确认这些架构层手段。
同系列的题
—— 本题完 ——