当 AI 遇上 Web:第三方 AI 聊天机器人插件中的提示注入风险
When AI Meets the Web: Prompt Injection Risks in Third-Party AI Chatbot Plugins
作者测量 17 个第三方 AI 聊天插件(覆盖 1 万+网站),发现 8 个插件允许伪造对话历史注入特权角色,使任务劫持成功率从 0–25% 升至 25–100%。
攻击者为非特权用户,可与嵌入第三方插件的公开网站聊天机器人交互、发网络请求、浏览网站、在允许时发布评论等内容;可对插件做指纹识别;目标是把消息或数据注入 assistant、system 等更高权限角色;不考虑 SQL 注入等传统 Web 漏洞能力。
- 第三方 AI 聊天插件被 1 万多个公开网站用来接入商用 LLM,但其针对提示注入攻击的安全状况此前缺乏研究;作者关注插件实现是否会破坏 LLM 内置的指令层级等防御。
- 作者在 Common Crawl 上测量 17 个插件的部署与配置,在本地复现插件功能,并通过受控实验评估注入角色、系统提示词设计、底层 LLM 等因素对直接与间接提示注入成功率的影响。
- 8 个插件不校验消息历史完整性,可伪造 system/assistant 角色注入;真实系统提示词提取成功率从 1% 升至 56%;任务劫持在角色边界破坏时达 25–100%;加固系统提示词对工具劫持几乎无效。
- 作者称未探索利用传统 Web 漏洞的攻击策略,所提两个原型防御未评估对强自适应攻击的鲁棒性;受控实验仅覆盖 11 个商用 LLM、3 类系统提示词和固定注入载荷,每配置仅重复 10 次。
- 被测模型
- GPT-4o-miniGPT-4oGPT-4.1-miniGPT-4.1o4-miniClaude Haiku 3.5Claude Sonnet 3.5Claude Sonnet 4Gemini 2.0 FlashGemini 2.5 FlashGemini 2.5 Pro
- 基准
- Common Crawl(2024 年 8 月快照,10,417 个聊天机器人网站)本地模拟环境(基于 nalgene.com 抓取的 35 个产品页构建 RAG 知识库)
- 指标
- 攻击成功次数(每配置重复 10 次)系统提示词提取成功率功能部署率
加州大学圣塔芭芭拉分校团队对部署在 10,000 多个公开网站上的 17 款第三方 AI 聊天机器人插件开展了大规模安全研究,发现两类提示注入风险。8 款插件(约 8,000 个网站在用)不校验网络请求中对话历史的完整性,攻击者可伪造包括 system 角色在内的消息,使诱导模型产生非预期行为(如生成代码)的能力提升 3–8 倍。15 款插件抓取网站内容时不区分网站自有内容与用户评论等第三方内容,对 100 个电商网站的抽样显示约 13% 的聊天机器人已能读到用户评论,恶意内容被抓取后可持久触发间接注入。在 OpenAI、Anthropic 和 Gemini 的 11 个模型上,角色边界被破坏时任务劫持成功率达 25–100%,角色隔离正常时仅 0–25%;强化的系统提示词能阻挡任务劫持,但对工具劫持防护有限。
推荐理由研究实测上万个网站在用的聊天机器人插件,量化了伪造对话历史对注入攻击成功率的放大,部署方可以据此自查。
深度解读
这篇论文试图解决什么问题?
第三方 AI 聊天插件生态缺乏安全研究,作者测量其提示注入风险并量化插件与配置因素的影响。
核心问题:广泛部署在公开网站上的第三方 AI 聊天插件是否存在提示注入风险,插件实现与配置如何影响攻击成功率。
- 场景与重要性:网站构建者通过 WordPress 插件或商用插件低成本接入 GPT 等商用 LLM 做客服聊天机器人;作者称该生态 2025 年增长近 50%,覆盖 1 万多个网站,但安全状况此前缺乏了解。
- 现有研究不足:作者称以往提示注入研究聚焦编程智能体、个人 copilot 等前沿应用,且多在受控环境中进行;对 Web 插件的安全研究则集中于 XSS、SQL 注入等传统漏洞。
- 核心观察:LLM 级防御(如指令层级)依赖角色边界假设,而插件在消息历史传输和外部内容插入上的实现可能破坏这一假设。
- 论文贡献:对 17 个插件、10,417 个网站做大规模测量;识别直接与间接注入两类漏洞;测量真实系统提示词与工具配置;做受控实验量化各因素影响;提出两个原型防御并进行负责任披露。
- 威胁模型:
- 攻击者目标:向 assistant、system 等高权限角色注入消息或数据,以泄露系统提示词或颠覆开发者指令。
- 知识:可指纹识别目标网站使用的聊天插件(如分析流量模式)。
- 能力:作为非特权用户与聊天机器人交互、发送网络请求、浏览网站、在允许时发布评论或产品评价。
- 受害系统与边界:通过第三方插件嵌入公开网站的聊天机器人;不考虑 SQL 注入等传统 Web 漏洞能力。
有哪些相关研究?
相关工作分四组:提示注入攻击与防御、LLM 定制技术、Web 插件生态安全、系统提示词研究。
提示注入攻击与防御
- Greshake 等(2023)、Liu 等(2024)、Wu 等(2024)——分别演示间接提示注入危害真实 LLM 应用、形式化并基准化提示注入攻防、考察真实 LLM 系统的安全问题;作者指出这些工作多在受控环境研究提示注入,本文则考察公开网站上的真实聊天机器人。
- StruQ(Chen 等,2024)、Jatmo(Piet 等,2024)、DataSentinel(Liu 等,2025)——分别为结构化查询防御、任务特定微调防御、博弈论检测;作者称这些是 LLM 级防御,本文关注插件层实现如何破坏其假设。
- Wallace 等(2024)的指令层级——训练 LLM 优先执行特权指令,已被商用模型采用;本文实验以其角色边界假设为评估基准。
LLM 定制技术
- RAG(Lewis 等,2020)及其鲁棒性改进(Xiang 等,2024)、Self-RAG(Asai 等,2024)——检索增强生成及其改进;LoRA(Hu 等,2022)——参数高效微调;这些是插件常用的定制手段。
- PoisonedRAG(Zou 等,2024)——向知识库注入恶意文档的 RAG 投毒攻击;作者称插件的抓取机制使这类理论攻击在实践中可行。
Web 插件生态安全
- Ruohonen(2019)、Koskinen 等(2012)——分析 WordPress 插件漏洞,XSS、SQLi、RCE、CSRF 最常见;Kasturi 等(2022)——大规模研究恶意插件;作者指出这些工作未覆盖 LLM 相关漏洞。
系统提示词与越狱
- Mu 等(2025)——研究系统提示词鲁棒性;Zhang 等(2024)、Zhang 等(EMNLP 2024)——提示词提取;Yong 等(2023)——低资源语言越狱 GPT-4。
基线与基准:本文非新方法对比型工作,无对比基线;评测基于作者自建的本地模拟环境和 Common Crawl 网站数据集。作者将本文定位为对 LLM 聊天插件生态的系统性安全研究,填补传统 Web 漏洞研究与前沿 LLM 应用研究之间的空白。
论文如何解决这个问题?
作者结合大规模生态测量、插件漏洞分析与基于真实观察的受控实验,量化插件级和应用级因素对提示注入的影响。
整体思路:先在 Common Crawl 上找到并测量使用 17 个目标插件的网站,再在本地部署插件分析通信协议与配置项以发现漏洞,最后把真实观察转化为受控实验参数,系统评估各因素对攻击成功率的影响。
生态测量方法
- 插件选取:从 WordPress 市场搜索"ChatGPT Chatbot"得 116 个结果,按安装量、LLM 聊天功能、可本地部署等标准筛出 7 个 WP 插件;另选 10 个平台无关的商用(generic)插件。
- 网站发现:扫描 Common Crawl 2024 年 8 月快照(38.3M 注册域名)中的插件 HTML 标记,得到 10,417 个去重网站;用 2023 年 1 月至 2025 年 4 月的快照做纵向趋势分析。
- 功能验证:2024 年 9 月抽查 200 个网站,按在线、含标记、可见、功能正常四个问题逐级验证;并对 P1、P2、P4 做自动化功能分析。
漏洞分析
- 本地部署:在本地 WordPress 实例部署每个插件并配置 OpenAI LLM,检查网络流量与配置项。
- 直接注入:检查 HTTP POST 请求是否包含完整消息历史且不做完整性校验,从而可伪造 assistant 或 system 角色消息。
- 间接注入:测试 15 个插件的抓取器是否会提取页面中的第三方内容;对 RAG/DC 模式,通过 OpenAI API 日志(WP 插件)或调试模式探针(generic 插件,5 次查询多数投票)确定外部内容插入时的角色。
真实配置测量
- 系统提示词收集:利用直接注入漏洞向 300 个 P1 网站注入伪造消息提取系统提示词;人工按指令特征判定是否泄露(至少三句符合特征);伦理措施包括 User-Agent 联系信息、opt-out 机制、不做持久修改。
- 工具使用观察:被动分析 P1 的 iframe HTML 与 HTTP 流量泄露的工具元数据,不主动触发工具。
受控实验设计
- 模拟环境:复制插件核心功能(抓取、RAG、自定义系统提示词、多厂商 LLM、工具集成);知识库为从 nalgene.com 抓取的 35 个产品页,按 OpenAI file search 参数切分(600-token 块、300-token 重叠),用 text-embedding-3-large 嵌入。
- 攻击任务:直接注入测三项——系统提示词提取(SPE)、任务劫持(TaH,诱导编写 Python 代码)、工具劫持(ToH,诱导 Notification 工具向攻击者指定频道发送含恶意 URL 的通知);间接注入测上下文劫持(诱导 Search 工具搜索竞品并展示结果)。
- 实验维度:3 种系统提示词(insecure、hardened、hardened-specific,均取自真实模板)× 注入角色(system/assistant/user)× 11 个 LLM;间接注入另测 5 种内容插入模式(SA/S/A/U/T)× 是否用标签包裹内容。
- 参数:温度 0.5,每配置重复 10 次,报告成功次数;攻击载荷为角色覆盖类提示词,用 ChatGPT 从种子提示词生成 5 个变体并选取最有效者;Anthropic 与 Gemini 模型不支持多条 system 消息,故不含 system 角色注入。
原型防御
- UGC-Buster:按 HTML 节点路径分组网站内容,用 LLM 检测用户生成内容(评论、用户名、时间戳等信号),输出机器可读元数据供开发者从 RAG 中排除。
- 工具指令加固:用 LLM 自动为工具指令加入反劫持规则(通用规则加工具特定规则),保持功能不变。
论文做了哪些实验?
实验含生态测量、真实配置测量和受控攻击实验:伪造注入使提示词提取成功率从 1% 升至 56%,工具劫持在加固提示词下仍普遍成功。
实验设置
- 被测模型:11 个商用 LLM——OpenAI 的 GPT-4o-mini、GPT-4o、GPT-4.1-mini、GPT-4.1、o4-mini;Anthropic 的 Claude Haiku 3.5、Sonnet 3.5、Sonnet 4;Gemini 2.0 Flash、2.5 Flash、2.5 Pro(Table 3)。
- 数据集:Common Crawl 2024 年 8 月快照得到 10,417 个聊天机器人网站;受控实验知识库为 nalgene.com 的 35 个产品页。
- 指标与判定:每配置重复 10 次(温度 0.5),报告成功次数;SPE 判定为输出含真实系统提示词片段,TaH 判定为输出含相关 Python 代码,ToH 判定为以 #general 和指定 URL 为参数调用 Slack-Notify,上下文劫持判定为以 Hydro Flask 为 query 调用 tavily-web-search 并在回复中包含返回 URL。
- 真实世界测量:300 个 P1 网站提取系统提示词(人工标注泄露);100 个电商网站检查第三方内容暴露(每站最多 5 次查询);200 个网站功能抽查。
- 评审方式:真实提示词泄露由人工按特征判定;受控实验按输出内容规则判定,论文未说明使用 LLM 评审。
主结果
受控直接注入实验(Table 3,每格为 10 次中的成功次数,U 为 user 角色注入,S/A 为特权角色注入;Anthropic 与 Gemini 无 S 列):
表格较宽,可左右滑动
模型 SPE(insecure)S/A/U TaH(insecure)S/A/U ToH(hardened)S/A/U GPT-4o 10/2/0 9/6/0 10/7/0 GPT-4.1 10/10/0 10/0/0 0/10/0 o4-mini 0/0/0 10/0/0 10/0/0 Sonnet 4 –/0/0 –/0/0 –/10/0 Haiku 3.5 –/0/0 –/10/0 –/8/10 Gemini 2.5 Pro –/10/8 –/10/0 –/10/10 Gemini 2.0 Flash –/1/9 –/10/10 –/10/10 (仅列部分模型;省略 GPT-4o-mini、GPT-4.1-mini、Sonnet 3.5、Gemini 2.5 Flash,完整数据见 Table 3。)
- 作者解读(角色):作者称 user 角色注入在所有任务上均弱于 assistant 或 system 注入,体现指令层级等内置防御的作用;SPE 在 system/assistant 注入下成功率约 60%/30%。
- 作者解读(提示词):作者报告 insecure 提示词的 TaH 成功数约为 hardened 的两倍,hardened 约为 hardened-specific 的两倍;hardened-specific 使 user 注入的 TaH 完全无效(0%)。
- 作者解读(工具劫持):作者称提示词加固不能防止 ToH,某些情况下反而提高成功率;user 注入的 ToH 成功率因厂商而异为 20–100%,作者认为系统提示词鲁棒性与工具描述鲁棒性大体正交。
真实世界测量
- 系统提示词提取(300 个 P1 网站):无注入的简单请求成功率 1%;伪造 system 与 assistant 角色注入分别达 56% 与 55%;总计从 219 个聊天机器人提取到提示词(73%)。作者称最常见的失败原因是模型拒答。
- 提示词特征(附录 C):76% 为 P1 默认模板的轻微变体;97% 含拒绝越界查询的指令;约 5% 指示聊天机器人收集 PII。
- 间接注入暴露(100 个电商网站):41 个允许用户提交评论,36 个展示该内容,13 个(13%)的聊天机器人回复中包含用户评论细节,作者称这说明第三方内容已被摄入 LLM 上下文。
间接注入受控实验
- 插入模式(Table 4):作者报告 tool 角色插入(T 模式)在所有设置下对上下文劫持最鲁棒;非标准插入模式使攻击成功率最高提升 5 倍(取决于配置);SA 模式在 GPT-4.1、o4-mini、Sonnet-4 等大模型上成功率可达 100%,作者将其归因于这些模型更善于遵循 system 提示词中的附加指令。
- 加固与包裹:作者报告提示词加固使成功率降低 20–40%,但 hardened 提示词加 T 模式下仍有约 5–10% 成功;内容包裹提供中等保护且效果依模型而定,OpenAI 模型受益更多。
- 厂商差异:作者称 Gemini 模型总体最不鲁棒,Anthropic 模型韧性最高。
其他消融与分析
- 附录 B:基于文献 [6] 的 blunt 与 ignore+instruct 两类替代载荷的小规模实验,作者称结论与主实验一致,利用插件漏洞最高带来约 3 倍成功率提升;ignore+instruct 效果最差。
- 工具指令加固防御:重复 §7 实验,作者报告攻击成功率下降 40–75%。
- UGC-Buster:在 10 个真实电商网站(各 3 页)人工验证,仅 1 个误报,平均每页成本约 0.05 美元。
- 功能部署率:200 站抽查中 125 个功能正常(62.5%);自动化分析 P1/P2/P4 分别为 76%/53%/96%。
- 生态趋势:2025 年 4 月快照含 17,474 个聊天机器人网站;2025 年 4 月扫描发现 144 个 P1 聊天机器人启用了工具。
有什么可以进一步探索的点?
作者称未探索传统 Web 漏洞与 LLM 攻击的结合,所提防御对强自适应攻击的鲁棒性未知。
作者指出的局限与后续方向
- 攻击能力边界(§5 Threat Model):作者明确不考虑攻击者利用网站其他组件或 SQL 注入等传统 Web 漏洞的能力,将结合经典漏洞攻击 LLM 的策略留给未来研究。
- 防御的适应性鲁棒性(附录 D Meta-Review,Noteworthy Concerns):作者转录的评审意见指出,所提防御对强自适应攻击的安全性尚不清楚,未来工作应探索更强的自适应提示注入攻击并开发相应防御。
- 提示词提取方法的局限(§6.1):作者称提示词反转、越狱等提取技术会被 LLM 厂商快速修补,设计新方法超出本文范围,故改用直接注入漏洞收集提示词。
- 模型指纹识别的局限(§6.3):作者报告知识截止日期的指纹查询不可靠,未追求更高级的指纹技术,改为在实验中覆盖三大厂商的主流模型。
- 数据集覆盖(§3):作者称 Common Crawl 数据集可能低估聊天插件生态的完整规模,但认为其足以代表关键趋势。
- 真实暴露估计的下限(§5.3):作者称 13% 的暴露比例可能低估真实风险,因为每个聊天机器人仅交互 5 次查询,且部分聊天机器人拒答。
实验覆盖范围
- 被测模型为 OpenAI、Anthropic、Gemini 三家共 11 个商用 LLM(Table 3),未包含开源模型。
- 受控实验每配置重复 10 次、温度 0.5;攻击载荷为角色覆盖类提示词的 5 个变体中选出的最有效者,附录 B 另测两类载荷。
- 真实世界测量仅针对 P1 插件(300 站提示词提取、100 站电商暴露检查、144 个启用工具的聊天机器人),选择理由为其部署最广且有漏洞赏金计划。
- 间接注入实验仅测上下文劫持一种任务,使用 Search 工具与 Notification 工具;Calendly 与自定义工具因无法非侵入评估而被排除。
- 论文未报告受控实验中攻击成功的统计显著性检验,也未报告人工标注提示词泄露的一致性数据。
总结一下论文的主要内容
对 17 个第三方 AI 聊天插件的大规模测量与受控实验,作者称其普遍存在破坏 LLM 内置防御的实现方式。
一篇针对 Web 上第三方 AI 聊天插件的安全测量与攻击研究(IEEE S&P 2026)。作者要解决的问题是:这些被 1 万多个网站使用的插件在提示注入攻击面前的安全状况如何,插件实现与配置如何影响攻击成功率。
- 生态测量:从 Common Crawl 找到 10,417 个使用 17 个目标插件的网站(2024 年 8 月),2025 年 4 月增至 17,474 个;抽查 200 站的功能部署率为 62.5%。
- 两类漏洞:8 个插件(8,000 网站使用)不校验消息历史完整性,攻击者可伪造 assistant 或 system 角色消息直接注入;15 个插件的抓取器不区分网站自有内容与第三方内容,导致间接注入风险,100 个电商网站中 13% 已将第三方内容摄入聊天机器人上下文。
- 真实配置:利用直接注入从 300 个 P1 网站中的 219 个提取到系统提示词(伪造 system 注入成功率 56%,无注入仅 1%);76% 为默认模板变体;144 个 P1 聊天机器人已启用工具。
- 受控实验:11 个商用 LLM 上,角色边界被破坏时任务劫持成功率为 25–100%,而角色隔离时为 0–25%;加固系统提示词可防任务劫持但对工具劫持几乎无效(user 注入成功率 20–100%,因厂商而异);RAG 内容以 tool 角色插入最鲁棒,非标准插入模式最高使成功率提升 5 倍。
- 防御与披露:作者提出 UGC-Buster(隔离用户生成内容)与 LLM 工具指令加固(成功率降 40–75%)两个原型;已向插件开发者披露,部署最广的 P1 已修复直接注入并改用加固提示词,其余多家仍未修复。
- 作者结论:作者认为插件层的不安全实现破坏了指令层级等 LLM 级防御的假设,随着工具调用的普及风险在扩大,社区需要为工具指令制定加固设计并关注这一生态。