GEO研究 › 知识基础 › 术语表 › 提示注入(Prompt Injection)
术语表 · 术语卡

提示注入(Prompt Injection) Prompt Injection

学术

在网页/文档中嵌入对 LLM 的隐藏指令,劫持阅读该内容的 AI 的行为——真实世界已出现网页注入劫持 AI 推荐的案例。

提示注入(Prompt Injection)指在网页、文档、邮件等内容中嵌入针对大语言模型的隐藏指令,劫持阅读这些内容的 AI 的行为。直接注入发生在用户与模型的对话框里;与 GEO 真正相关的是间接注入——攻击者把指令藏进 AI 会检索并阅读的公开内容中,模型读到的不再是普通资料,而是一段它可能执行的话。真实世界已出现网页注入劫持 AI 推荐的案例,学术侧也已在真实对话引擎上完成黑盒验证。

为什么网页文字能“指挥”AI

生成式引擎的工作流给了这类攻击生存空间:引擎先检索外部内容,把结果放进上下文,再据此生成答案(见RAG 术语卡)。在模型视角里,检索回来的网页文本与用户提问同处一个上下文,“指令”与“资料”的边界并不牢靠。一段对人类访客不可见或不起眼的文字——前景色与背景同色、极小字号、隐藏区块——对只处理文本的爬虫与模型来说却清晰可读。

直接注入与间接注入的危害路径不同。直接注入的受害者是攻击者自己对话的模型实例,影响止于单次会话;间接注入的受害者则是所有检索到该内容的下游用户——一个被注入的页面,可能影响大量与之无关的提问。这也是它被安全社区持续关注的原因:污染一次,扩散由引擎的检索链路代劳。

这解释了提示注入与Cloaking(内容门禁欺骗)的关系:技术上同源,都利用“人机内容不一致”;定性上同罪——Google 垃圾政策已把操纵生成式 AI 回答纳入违规条目,各 AI 平台也都有域名级处置先例。换句话说,它不是灰色地带的“高级优化”,而是换了包装的作弊手法。

优化与注入的分界线因此非常清楚:GEO 的全部合规动作——即答段、结构化、加出处、加引语——都在给模型提供证据,让人与机器看到同一份内容;注入则在给模型下命令,且几乎总是以对人隐藏为代价。一句话检验:这段文字敢不敢原样展示给用户与引擎审核方?敢,它是内容;不敢,它是注入。

学术实证说明了什么

站内收录的 EMNLP 2024 论文《对话式搜索引擎的排名操纵》证明,越狱式注入可以迁移到真实对话引擎并黑盒生效:网页中的注入文本能让引擎在线上环境给出攻击者指定的目标回答,且攻击可跨查询泛化(见排名操纵文献卡)。同族的安全研究还包括针对 RAG 知识库的投毒——在语料中埋入少量与问题语义相关的恶意文本,即可高成功率操纵输出(见语料投毒术语卡与PoisonedRAG 文献卡)。

这些研究的价值在于把话术钉在事实层面:当某项“GEO 服务”承诺保证 AI 排名、保证被推荐时,其实现路径很可能就是注入或投毒,而非优化。本卡不复述攻击细节——知道攻击面存在,已足够完成识别与防御两件事。

注入之所以可能,深层原因是指令与数据共享同一套符号空间:模型读到的每个词都只是词,没有先验的办法区分“来自用户的命令”与“来自网页的文字”。安全侧的防御本质都在重建这道边界——来源隔离、标记、权限分级。理解这一点,站长就能明白为什么“藏一段指令”在技术上可行、在治理上必死:技术可行吸引攻击者,治理必死则让平台与用户都站到对立面。

对内容方还有一层冷静的提醒:这类研究证明了攻击存在,不证明攻击普遍。把提示注入当成“人人都在做、不做就吃亏”的行业常态,是另一方向的误读——绝大多数被引用的内容,靠的是普通的可验证性建设。识别红线与恐慌性跟风,是两种不同的专业素养。

如何发现并处置一次注入

检测思路上,把“人看到的”与“机器读到的”做差。定期用纯文本方式抓取自己的页面,与渲染后的可见内容对比,找出只存在于源码里的文字;检查评论区与富文本字段里是否混有对机器的祈使句式指令;关注搜索快照与爬虫缓存中的异常内容。多数注入在人的浏览器里不可见,但在文本层清晰可查——这正是它的设计目的,也是它的暴露方式。

处置链路按顺序走:先定位入口(哪个表单、哪个插件、哪次入侵留下的后门),再清除恶意内容并修补入口,然后引导引擎重新抓取受影响页面,必要时通过官方渠道申诉说明。留存证据与时间线——注入事件可能涉及第三方责任,处置记录本身就是法务材料。被注入不是过错,被发现后拖着不处理才是:引擎与用户对“被攻陷且不作为”的站点,容忍度都极低。

平台侧的防御也在演进:把检索内容当数据而非指令来处理、对上下文来源做隔离与标记、对输出做引用核验,都是常见的加固方向。对这些机制,站方的正确姿态是知晓而不依赖——平台防御降低的是攻击的规模效应,站点自身的注入面管理始终是自己的责任。

误用警示:它常被包装成什么

市面话术通常长这样:“给网页写 AI 可读的隐藏指令,让模型优先推荐你”“在页面里埋提示词,用户看不到、爬虫看得到”。拆开看,每一句都同时踩两条线:对人隐藏、对机器可读,构成内容门禁欺骗;向模型下达指令操纵输出,构成提示注入。两条线都不是“激进的白帽”,而是明确的红线,后果包括域名级除名与法律风险。本站的立场简单:此类手法不测、不评、不做,也提醒委托方警惕代做此类“优化”的服务商——识别话术本身就是防御的一部分。

还有一种更隐蔽的变体值得点名:不藏指令,而是把操纵性文本写成“对模型友好的口吻”——假装客观的推荐语、精心构造的第三方评价。它与提示注入的差别只在隐蔽程度,共同点是把内容的目标读者从人换成了模型。判定标准始终是同一条:内容对人诚实,才谈得上对机器诚实。

站长防御清单

对内容方而言,提示注入首先是安全议题:你的站点可能不是发起者,而是被利用的载体——攻击者把注入文本放进你的评论区、UGC、富文本字段,借你的域名与权重去影响引擎。防御动作相应集中在注入面:评论与 UGC 的审核与转义、富文本编辑器的标签白名单、CMS 插件与模板的更新纪律、对外部提交内容的默认不信任。定期用纯文本视图或无头浏览器检查页面的“机器可读层”,确认没有来历不明的隐藏内容,是成本低而收益高的自检。守住“人与机器看到同一份内容”这条底线,既是安全要求,也是 GEO 的合规前提(见GEO 术语卡)。

制度层面还有两道便宜的保险:给内容发布与模板修改设最小权限,注入类攻击最爱潜伏在高权限账号的日常操作里;对第三方脚本与统计代码保持清单化管理,页面每多一段外来的脚本,就多一个潜在的注入入口。安全预算有限的团队,优先把这两件事做掉。

别称 / 相关写法

提示注入Prompt Injection间接提示注入
常见误用:给网页写隐藏指令以提升 AI 推荐的做法就是提示注入,属 cloaking 变体红线,不是优化技术。

引用来源

  1. Ranking Manipulation for Conversational Search Engines(arXiv:2406.03589,EMNLP 2024)
最后更新 2026-10-01引用本卡请附:https://www.showhoo.net/library/glossary/prompt-injection/