这篇文章在讲什么

近期很多团队在做大模型落地时,会遇到一种“看起来像正常文本”的提示注入:攻击者把指令包进古诗词、藏头诗、典故改写、对仗句等文学形式里,让模型把它当作“更高优先级的任务要求”,从而绕过既定规则或诱导泄露信息。本文聚焦原理与防守,不提供可直接用于绕过的可执行示例。

为什么古诗词这类载体会有效

1) 语义伪装与边界模糊

模型擅长从自然语言中提炼“意图”。当注入内容被写成诗句、故事或隐喻时,传统基于关键词的拦截容易漏掉,而模型仍可能从中恢复出指令意图。

2) 结构化编码(藏头/藏尾/断句)

诗词天然有“行/句/字”的结构,攻击者可以把指令拆分到多个位置,通过首字、末字、标点断句、同音替换等方式形成“可还原指令”。这类编码对规则引擎不友好,但对语言模型可能依然可读。

3) 角色与叙事诱导

诗词常带叙事与情境。攻击者利用“你正在解读诗意/你是评注者/你在还原暗号”等角色暗示,引导模型把注入当作需要执行的任务。

在企业场景的真实风险

防护要点:把模型当作不可信解释器

1) 明确“数据”和“指令”的边界

2) 工具调用与高风险动作强约束

3) 检测与告警:识别“诗意文本里的指令意图”

4) 红队测试:用“安全版样例”做持续回归

建议你构建一套不包含真实绕过技巧的回归集:以诗词风格描述“要求模型做不该做的事”的意图,验证系统能否稳定拒绝与解释原因。测试重点应落在:是否触发敏感信息、是否越权调用工具、是否把引用内容当成规则。

结论

古诗词“越狱”并不是玄学,它本质上是提示注入在自然语言伪装、结构化编码与叙事诱导上的变体。有效的防守也不是堆过滤词,而是把系统设计成“最小权限 + 强边界 + 可审计”的工程体系:模型负责语言理解,权限与动作由策略层决定。