直接答案:把外部内容当数据,把动作放到模型之外裁决
间接提示注入不是用户直接要求模型越权,而是攻击者把指令藏进邮件、网页、PDF、代码、日历、搜索结果、向量库片段或工具响应,等待 Agent 在正常任务中读取。防护不能只靠让模型识别一句可疑文字;系统需要把不可信内容标注为数据,限制它能影响的字段,用独立策略判断每个工具动作,并在外发、删除、购买、授权等高风险副作用前重新核对用户原始任务、目标、参数、数据去向和批准范围。任何单层过滤都可能失败,安全目标应是即使模型被说服,攻击也拿不到足够权限或静默外发通道。部署团队还应先写清可以接受的失败:摘要出现错误与把客户资料发给陌生域名不是同一级风险。前者可以通过引用和人工复核缓解,后者必须在网络、凭据和工具层硬阻断。验收也要分别证明正常任务完成、越权动作失败、秘密没有进入请求、任务结束后没有残留;缺少任何一项,都不能用一句“检测到注入”代替完整结论。
为什么保留 125009,而不是再建一篇安全新闻
站内已为“间接提示注入怎样攻击 AI Agent”建立主 URL,但旧稿只有约千字概览,且进入未来四十八小时窗口时预发布指纹失效。继续新建新闻页会分散同一查询意图,因此本轮按远端哈希备份,转为草稿并清除 Cron,再在原 URL 深度重写。新增价值不是改日期,而是来源—信任—规划—工具—外发完整威胁模型、四类载体测试集、跨跳传播检查、三十项负向验收、事故处置合同和可离线校验的 JSON 任务资产。
先画攻击链:攻击者不必直接碰到用户
攻击者只要能控制 Agent 将来会读取的一段内容,就可能进入决策上下文。载体可以是公开网页中的正文或隐藏文本、收到的邮件与附件、共享文档评论、代码仓库 issue、依赖说明、日历邀请、客服工单、检索索引或 MCP 工具返回。Agent 通常是在完成“总结、研究、分类、修复、回复”等合法任务时接触这些内容。随后恶意文本伪装成更高优先级规则、系统通知、数据格式说明或下一步操作,诱导模型偏离用户目标。真正造成损害的是后续可用工具、私有数据、网络和持久记忆。

区分直接注入、间接注入与普通恶意数据
直接注入来自当前对话中的用户输入,防守者通常知道谁提供了它;间接注入来自第三方内容,用户可能完全看不到。普通恶意数据会利用传统解析器缺陷,例如脚本、宏、路径穿越或 SQL 注入;提示注入则利用模型把自然语言同时当作内容和可能的指令。两者可能组合:网页先用隐藏文字改变 Agent 计划,再让它下载恶意文件或调用带危险参数的工具。因此输入清理、沙箱和传统应用安全仍然需要,但不能把它们当成提示注入已经解决。
用来源—汇点模型定位真正风险
先列出所有不可信来源,再列出会产生损害的汇点。来源包括网页、邮件、文件、RAG、搜索、远端工具、多 Agent 消息和长期记忆;汇点包括外发请求、写数据库、发送邮件、提交代码、运行命令、购买、删除、改权限和写入记忆。只有来源没有危险汇点时,攻击影响通常限于错误摘要;只有汇点没有不可信来源时,仍有误操作风险,但攻击面较窄。高危路径是同一工作流同时读取攻击者可控内容、接触秘密或私有数据,并能改变状态或向外通信。治理应优先切断这些组合。
用户原始任务必须成为不可变参照
Agent 在长流程中容易把后来读到的内容当成新的任务。系统应保存用户批准的任务对象、允许动作、允许资源、时间窗、输出位置和禁止项,并为它生成不可变任务标识。每次工具调用都要能解释它如何服务原任务;仅仅因为页面写着“为继续完成任务必须上传日志”并不构成授权。任务变化需要回到用户或受控业务规则重新批准,而不是由模型自行修改目标。日志同时保留原始任务摘要与每一步理由,便于发现逐渐偏离而不是只看最终回答。
把不可信内容装进结构化数据通道
网页正文、邮件和文件内容不要拼进开发者指令或系统策略。解析层应输出来源、作者、获取时间、媒体类型、可信级别、允许字段与文本正文,模型读取时明确这些字段只是证据。后续节点只接收完成任务必要的结构化值,例如日期、金额、标题或候选 URL,而不是把整段自由文本原样传给高权限执行器。结构化输出减少隐藏指令穿过多个节点的机会,但它不是证明;攻击者仍可在允许字段里写误导数据,因此服务端继续检查类型、长度、域名、对象和业务约束。
邮件场景:摘要权限不等于回复和转发权限
邮件 Agent 为用户整理未读邮件时,应以只读身份获取限定时间和文件夹中的消息,正文与附件均标记为不可信。摘要节点没有发送、转发、删除或下载外链资源的能力。若用户随后要求回复,执行节点重新显示收件人、主题、正文、附件和外发数据摘要,并要求独立确认。测试必须覆盖伪造管理员通知、要求转发机密、在签名或引用链隐藏指令、通过远程图片 URL 带出数据,以及一封邮件诱导 Agent 打开另一封邮件的多跳攻击。
网页场景:可见域名不等于最终目的地可信
浏览 Agent 可能遇到白底白字、ARIA 标签、元数据、评论、弹窗、图片 OCR、重定向目标或页面脚本生成的注入。只允许知名域名不能解决开放重定向、用户生成内容和第三方资源。导航层应在每次跳转后核对最终域名、协议和下载类型,阻止把私有数据拼到 URL、搜索词、表单或图片请求中。登录状态也应按任务启用:纯研究尽量使用无登录会话;只有需要读取用户资源的步骤才进入受限账户,并在离开任务时清理会话与下载。
文件场景:内容、宏、元数据和链接分别处置
上传 PDF、Office、图片、压缩包或代码仓库前先做类型识别、大小限制、恶意软件扫描和隔离解析。文本提取结果仍是不可信数据,不能因文件来自组织网盘就变成指令。关闭宏和自动执行,阻止解析器访问外网,限制嵌套压缩深度,并记录 OCR、附件、批注、不可见图层、元数据与链接。对于代码,README、issue、注释、测试输出和构建日志都可能携带提示注入;执行器只运行经过任务白名单、代码审查与沙箱允许的命令。
RAG 与搜索:索引不是信任转换器
网页或文档被抓进向量库后,其来源风险不会消失。摄取管线记录原页、作者、时间、许可证、哈希与租户,拒绝未知脚本和越界文件;检索结果附带来源标签,并在回答与工具动作之间设置独立门禁。不要让检索片段直接决定 SQL、收件人、支付对象或网络目标。更新与删除也要传播到索引,避免已经撤销的权限和旧恶意内容长期驻留。对高风险查询,可以先让低权限模型抽取事实,再由策略层根据原任务选择是否进入下一步。
MCP 与远端工具结果必须按供应链输入处理
一个名为 search 或 list 的工具也可能返回带指令的自由文本,诱导 Agent 在下一次调用中提交私有数据。接入 MCP 服务器前核对运营方、代码、权限、传输、日志和更新渠道;为每个工具固定输入模式、允许域名、最大返回大小和敏感字段规则。读工具与写工具使用不同凭据,远端描述文字不能动态扩大权限。服务器版本、工具清单或描述变化应触发重新审核,因为攻击面不仅在运行响应,也在工具元数据和多步骤组合。
多 Agent 系统要限制消息传播和身份继承
规划器、研究员、执行器、审查器之间的消息不应默认互信。每条消息记录来源 Agent、父任务、能力、数据敏感级、允许消费者和到期时间;子 Agent 只能得到完成子任务所需的片段与工具。禁止把上游长上下文、秘密和所有工具一起复制。下游若返回新的指令或要求扩大权限,应交给策略层而不是自动执行。测试还要覆盖注入在多个消息中拆分、通过共享记忆持续存在、让一个 Agent 说服另一个 Agent,以及伪造“已获人工批准”的回执。
长期记忆是会跨任务放大风险的写入汇点
攻击者可能让 Agent 把恶意规则写进个人偏好、团队知识或代码文件,使后续无关注任务继续受影响。记忆写入应是独立工具,只允许结构化、低风险、可追溯字段;记录来源、创建者、任务、到期和删除路径。任何涉及权限、收件人、域名、命令、安全例外或系统策略的内容都不能由普通对话自动持久化。读取记忆时仍显示来源和时间,不把旧内容提升为开发者指令。红队测试要在新会话验证攻击是否残留并能否被彻底删除。
模型级识别有价值,但不能成为唯一边界
专门训练、提示层级、注入分类器和第二模型审查可以降低成功率,却不能给出确定性保证。攻击者会使用社会工程、拆分载荷、编码、翻译、角色扮演、长上下文和多模态内容绕过固定模式。安全设计应假定某些攻击最终会让模型相信错误信息,因此秘密不进入不必要上下文,权限按任务收窄,写操作有参数级策略,外发有数据流检查,高影响动作有人确认。模型更新后还需重跑真实攻击集,不能沿用上一版本分数。
权限按工具、动作、对象和数据流收窄
“可访问邮箱”过于宽泛,应拆成列出指定文件夹、读取指定消息、生成本地草稿、展示待确认回复和发送一次已批准邮件。数据库、网盘、支付和部署也按只读、草稿、写入、删除与管理权限分离。参数规则在服务端校验账户、租户、对象、数量、金额、收件人、域名和路径。对可能外发的数据执行源—汇点检查:它从哪里来、是否包含用户或企业秘密、是否确实需要发往当前目标、用户是否看到将发送的内容。

人工确认要展示事实,而不是只给一个允许按钮
确认界面应显示具体动作、最终目标、关键参数、将发送或覆盖的数据、来源、不可逆影响和可用回滚。不要只问“是否继续”,也不要把攻击者控制的说明当作确认理由。批量动作提供数量与抽样明细,重定向后再次显示最终域名,命令执行显示工作目录和参数。确认只对当前任务哈希和短时间有效;模型、工具或参数改变后自动失效。低风险动作可以预批准,但必须由业务规则明确列出并有配额、监控与随时撤销能力。
网络控制要覆盖 URL、DNS、重定向和隐蔽外发
Agent 的网络白名单不仅比较初始字符串,还要解析协议、主机、端口、DNS 结果、重定向链和下载类型。阻止 localhost、云元数据、私有网段、非预期端口和协议走私。对搜索、图片、预览、错误上报和 webhook 同样检查,因为秘密可能被编码进路径、查询、域名或请求体。允许外网研究的执行器不要同时持有生产秘密;需要下载的文件先进入隔离区,扫描和人工确认后再进入高信任环境。网络日志记录目标与字节规模,但不把秘密原文复制进日志。
秘密管理:不给模型看到就少一个可被偷走的目标
API 密钥、Cookie、会话令牌和私钥存放在凭据代理或秘密系统,由受控工具在调用时注入。模型上下文只看到凭据引用或能力句柄,不能读取明文。令牌绑定单一环境、受众、动作和短时间,任务结束即撤销;测试与生产完全分离。即使攻击者诱导模型打印环境变量,模型也应没有相应读取工具。日志、截图、崩溃回执、下载目录和缓存也要扫描秘密,事故时按最坏情况轮换,而不是等待确认外发成功。
对副作用实施幂等、预算和回滚
提示注入常通过重试制造重复发送、重复订单或重复删除。写工具要求幂等键和期望版本,执行前读回当前状态并保存差异;每个任务设置调用次数、金额、数据量、并发和时间预算。超过预算进入人工处理,不让模型自行拆分规避。可逆动作先生成草稿或隔离副本,不可逆动作需要更强确认。回滚不是一句“支持撤销”,而是实际验证代码、配置、数据、消息队列、外部邮件或支付是否能恢复,并记录无法自动恢复的部分。
日志必须能回答谁读了什么、为何调用、数据去了哪里
审计记录用户任务、Agent 与模型版本、读取来源、内容哈希、信任标签、工具名称、参数摘要、策略决定、确认回执、网络目标、结果和错误。日志本身不能包含完整秘密或过量个人数据,也不能由被审计的 Agent 修改。为同一任务使用关联 ID,把内容摄取、计划、批准、执行和回滚串起来。告警关注来源与汇点异常组合,例如读取新域名后立即外发大量数据、无对应用户任务的写入、频繁被拒绝后改用其他工具或把同一数据编码进多个 URL。
建立四类可复现攻击集,而不是只测一句 Ignore
测试集至少包含邮件、网页、文件和工具输出四类载体,并覆盖显式指令、社会工程、伪造系统通知、编码文本、隐藏文字、拆分载荷、多跳链接、跨 Agent 转发、长期记忆和数据外发。每个用例固定合法用户任务、攻击者可控内容、目标副作用、可用工具、秘密样本、预期拒绝点和清理步骤。测试结果同时记录合法任务是否完成,避免通过关闭所有功能获得虚假安全。攻击文本只在隔离夹具中使用,不发到真实用户或第三方系统。

多模态注入不能只检查提取后的纯文本
攻击内容可能藏在图片、二维码、音频、视频字幕、扫描 PDF、图表标签或界面截图中。OCR、视觉模型和语音转写会把它们重新变成模型可读的文字,因此仅在 HTML 输入处过滤并不够。多模态管线应记录原始文件哈希、解析器与模型版本、提取结果、可见区域和置信度,把每种派生文本继续标为不可信。测试要覆盖低对比度文字、旋转与缩放、分帧内容、二维码跳转和图像引导点击,同时确认辅助功能所需的真实标签不会被粗暴删除。任何由图像触发的导航、上传或工具动作仍回到任务与参数门禁。
自传播和多跳攻击需要限制写入下一跳
一种更危险的模式不是一次性让 Agent 做错事,而是诱导它把恶意内容写进邮件、聊天、代码、工单、共享文档或记忆,等待另一个 Agent 再读取。防线要把所有面向他人或未来会话的写入视为传播汇点:发送前展示正文与目标,禁止不透明编码,扫描是否包含来源内容中无任务必要性的指令,并把写入与原任务哈希绑定。测试不仅观察当前 Agent 是否外发,还要让隔离的第二个 Agent 读取产物,验证攻击不会跨会话、跨成员或跨系统继续扩散。清理必须删除所有副本、索引和缓存。
适应性攻击要求循环测试,而不是固定样例考试
攻击者会根据拒绝信息改变措辞、把载荷拆成多步、利用确认疲劳、转换语言或诱导 Agent 调用替代工具。若防守评测只重复公开的几十条固定字符串,模型可能学会样式而没有学会任务边界。评测应将攻击目标、载体、上下文、可用工具与秘密位置分开组合,保留从未用于调试的隐藏集,并让人工与自动红队在明确授权的隔离环境寻找新路径。记录每次尝试而不是只保存最佳结果,比较不同版本的攻击成功、合法任务完成与影响上限,避免升级模型后只看平均分掩盖新出现的高危路径。
设置明确的停机与降级判据
系统必须预先定义何时停止自治,而不是事故发生后临时决定。触发条件可包括检测到注入、来源信任突变、目标域名变化、秘密可能进入上下文、连续策略拒绝、异常数据量、确认参数不一致、工具目录变更、日志中断或无法验证回滚。停机后冻结队列和凭据,保留只读证据,通知责任人;若业务必须继续,只能降级到预先批准的低风险模式,例如生成本地草稿而不发送。恢复需要新版本、定向回归、秘密轮换和责任人签字,不能由同一受污染会话自动解除。
评分要同时看攻击成功、任务成功和影响上限
攻击成功率回答恶意目标是否完成;任务成功率回答防护是否让正常工作仍然可用;影响上限回答最坏情况下可访问的数据、可调用的工具和可恢复性。还要记录检测率、误报、确认次数、人工理解率、撤销时间和残留。单次未攻破没有统计意义,同一场景应跨模型版本、提示变体和不同上下文重复。公开基准能比较趋势,但企业上线结论必须来自自己的工具、数据、权限和业务副作用。任何百分比都要附样本、条件和日期。
发布前用红队、紫队和运行时演练闭环
红队负责尝试绕过任务边界,蓝队检查策略、隔离、监控和响应,紫队把成功攻击转为长期回归用例。每次模型、系统提示、工具描述、MCP 服务器、权限、解析器、浏览器、RAG 数据源或确认界面变化后运行定向测试。至少定期做一次端到端演练:植入隔离注入,观察是否进入上下文、是否被识别、工具是否拒绝、告警是否到达、秘密是否保持不可见、环境是否清理。修复后保留旧失败回执,新建通过回执,不能覆盖历史。
事故处置先阻断外发,再保存证据和轮换秘密
发现异常工具调用、未知外发或任务偏离时,先暂停相关 Agent、令牌、队列和网络出口;保存任务、消息、来源内容、工具参数、策略版本、日志与文件哈希。不要继续让同一 Agent“自行调查”,因为污染上下文可能扩大动作。按可能暴露范围轮换凭据、撤销会话、隔离记忆和索引、撤回消息或回滚数据,并通知受影响所有者。随后定位攻击入口、首次越权动作、检测缺口和影响上限,把真实链条转成回归测试,并明确哪些外部副作用无法完全收回。
普通用户也能降低风险:缩小任务、登录和确认范围
让 Agent 完成具体任务,例如“只总结这三封邮件,不发送、不打开外链”,比“处理今天所有事项”更安全。研究公开资料时退出不必要账户;不要把密码、恢复码或完整客户数据放进对话;看到外发、购买、删除、授权和登录确认时检查最终目标与内容。如果页面或文件声称必须上传秘密、关闭安全功能或忽略用户指令,停止任务并改用人工查看。用户侧做法不能替代产品安全,但能显著缩小一次成功诱导造成的影响。
采购或上线评审要问可验证问题
供应商应说明不可信内容如何标记,模型能看到哪些秘密,工具权限如何拆分,网络如何限制,确认如何绑定参数,是否支持无登录模式、审计、撤销、数据保留与导出,以及模型或连接器升级后怎样回归。不要接受“使用最先进模型”“有内容过滤”作为完整答案。要求在隔离环境演示一个邮件或网页注入场景,查看阻断点与回执;若产品只能给营销截图而不能说明权限与响应边界,应把高风险自主动作保持关闭。
本文结论的适用边界
本文提供威胁建模、系统门禁和验收方法,不代表对任何模型、浏览器 Agent、MCP 服务器或企业部署完成渗透测试。OpenAI、NIST、Google、Microsoft 与 OWASP 的材料用于证明行业定义、评测与分层控制方向;本站原创图和合同是编辑归纳。模型鲁棒性、产品界面、工具权限、地区、价格与安全功能会变化,部署日必须重新打开官方资料并在自己的环境复验。Bing Webmaster、Search Console、排名、流量、点击、CTR、用户和转化均未取数。
来源与汇点风险矩阵
这张表用于确定测试优先级,不表示任何产品已经通过安全认证。只读摘要也可能造成错误决定,但能外发秘密或改变状态的工作流应先拆权与演练。
| 来源 | 常见伪装 | 危险汇点 | 首要门禁 | 通过证据 |
|---|---|---|---|---|
| 邮件与日历 | 管理员通知、签名、引用链 | 回复、转发、附件外发 | 只读摘要与发送身份分离 | 恶意正文无法产生发送 |
| 网页与搜索 | 隐藏文字、弹窗、重定向 | 导航、表单、下载、URL 外发 | 最终域名和数据流检查 | 私密样本未离开允许域 |
| 文件与代码 | 批注、OCR、README、日志 | 命令、写仓库、上传文件 | 隔离解析、命令白名单和差异审批 | 越权命令被服务端拒绝 |
| RAG 与记忆 | 旧规则、污染片段、伪造批准 | 长期偏好、跨会话动作 | 溯源、到期、受控记忆写入 | 新会话无攻击残留 |
| MCP 与多 Agent | 工具描述、自由文本响应、转发消息 | 下一工具调用、跨域外发 | 模式校验、能力衰减和参数策略 | 恶意工具响应不能扩大权限 |
三十项上线验收清单
每项填写环境、版本、输入夹具、预期、实际、证据位置、责任人和复查触发条件。配置截图只能证明某个选项曾经可见,必须用允许与拒绝请求验证运行时行为。
1. 来源清单
列出邮件、网页、文件、RAG、工具、多 Agent 与记忆来源,标记谁可写入、是否跨租户以及内容如何进入模型。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
2. 任务冻结
保存用户批准的任务、对象、动作、目标、期限和禁止项;后续内容不能无确认地改变任务。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
3. 数据通道
不可信文本只进入用户或数据字段,不拼入系统、开发者或策略指令;结构化抽取有类型和长度限制。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
4. 秘密隔离
模型没有读取秘密明文、浏览器 Cookie、宿主环境变量和无关文件的工具;调用时由凭据代理注入。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
5. 只读优先
总结、搜索和分类使用只读身份;回复、提交、删除、付款和权限修改属于不同工具与凭据。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
6. 最小对象
工具参数限制租户、账户、文件夹、仓库、分支、表、字段和收件人,不能靠自然语言自律。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
7. 网络最终目标
检查 DNS、IP、端口、协议与全部重定向;私网、元数据、未知下载和非预期外发默认拒绝。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
8. URL 外发
测试秘密是否能经查询参数、路径、域名、图片、预览、搜索或错误上报静默带出。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
9. 邮件转发
恶意邮件不能让摘要 Agent 转发、回复、删除、下载外链或访问其他邮件;所有发送显示最终明细。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
10. 网页隐藏文本
白底字、ARIA、元数据、评论、弹窗、OCR 和脚本生成文字都作为不可信数据,不提升为指令。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
11. 文件隔离
PDF、Office、图片、压缩包和代码在无网隔离解析,关闭宏与自动执行,限制嵌套和文件体积。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
12. RAG 溯源
每个检索片段保留原页、作者、日期、租户、许可证与哈希;删除和权限变化能传播到索引。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
13. MCP 审核
核对服务器运营方、代码、传输、工具清单、描述、更新和日志;读写凭据与权限完全分离。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
14. 工具响应
远端工具返回的自然语言不能决定下一次高权限调用;只允许经过模式校验的必要字段继续流转。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
15. 跨 Agent 消息
消息带来源、父任务、能力、敏感级和到期;子 Agent 不继承完整上下文、秘密与全部工具。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
16. 长期记忆
普通内容不能写入安全规则、收件人、域名、命令或权限例外;记忆可追溯、到期并可完整删除。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
17. 参数确认
确认界面展示动作、最终目标、数据、差异和不可逆影响,并绑定参数哈希、身份与短时间窗。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
18. 批量抽样
批量发送、修改或删除显示总量、规则、代表样本和排除项;数量变化会使旧批准失效。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
19. 幂等与版本
写操作有幂等键、期望版本和有上限重试;超时不会重复创建订单、发送或删除。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
20. 任务预算
限制调用次数、并发、金额、数据量、外发字节和持续时间;模型不能用拆分动作绕过。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
21. 错误默认
身份、策略、确认、日志或网络控制失败时,高风险动作默认拒绝;只读降级范围事先明确。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
22. 攻击集覆盖
邮件、网页、文件和工具四类载体均含显式、社会工程、编码、拆分、多跳和持久化样本。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
23. 合法任务成功
每个攻击用例同时检查用户合法任务能否完成,避免以关闭全部功能制造虚假安全。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
24. 影响上限
即使模型被说服,也只能接触明确数据和动作;记录最坏可见秘密、外发目标与恢复难度。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
25. 检测告警
异常来源—汇点组合、连续拒绝、域名突变、数据量异常和无原任务写入能触发及时告警。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
26. 日志完整
任务、来源哈希、工具参数摘要、策略、确认、网络目标与结果可串联,Agent 无法删除自己的记录。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
27. 撤销时延
暂停 Agent、令牌、会话、队列、网络和记忆后,用负向请求验证动作确实失败并记录耗时。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
28. 回滚副作用
代码、配置、数据、邮件、支付和外部系统分别说明回滚能力;无法撤回部分进入人工预案。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
29. 变更触发
模型、提示、解析器、工具、MCP、权限、数据源、网络或确认界面变化都会触发相应回归。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
30. 责任与到期
业务、安全和运行负责人分别签字,结论绑定环境与版本,并设复查日期和失效条件。测试后保存原始任务、攻击载体哈希、工具与策略版本、实际结果和清理状态;若失败,停止扩大权限并保留失败回执,修复后以新回执重跑。
官方证据图:NIST 的 Agent hijacking 评测框架

该证据图只证明 NIST 官方材料把 agent hijacking 定义为攻击者把恶意指令放进 Agent 会摄取的数据,并强调同时观察合法用户任务与恶意注入任务;它不能证明任一模型或产品对所有攻击免疫,也不能替代读者环境中的端到端验收。
当前一手来源与证据边界
- OpenAI Deep Research 开发文档:网页、文件与远端 MCP 带来的提示注入和数据外发风险。
- NIST:Strengthening AI Agent Hijacking Evaluations:合法用户任务、恶意注入任务与重复评测。
- Google Security Blog:估算提示注入风险:以外发敏感信息为核心的威胁模型与自动化红队。
- Microsoft Learn:Prompt Injection 攻击技术:直接与间接注入定义及分层缓解。
- OWASP AI Agent Security Cheat Sheet:最小权限、输入验证、工具控制、记忆和持续测试。
- Anthropic:Mitigating prompt injections in browser use:浏览 Agent 的分层防护、自动红队与无绝对免疫边界。
本文未收集真实企业邮箱、私有文件、生产密钥或客户数据,也未对具体厂商产品作安全认证。官方声明、兰塞 AI 编辑归纳与需要部署者复验的结果已分别标示。
继续完成相邻任务
- 用Agent 身份与授权指南拆分工作负载身份、委托和逐工具权限。
- 用智能体密钥保护指南隔离凭据、网络和命令执行。
- 用AI 编程智能体评测指南建立隐藏任务集、失败分类和回滚。
- 用企业 Agent 权限验收指南确定所有者、审批、撤销和有限自治边界。
核验日期与发现证据边界
本文于 2026 年 10 月 5 日复核公开一手资料。GitHub pushed_at、页面哈希、监控信号、IndexNow、sitemap、crawler 和 AI citation 只能证明发现、请求、站内成员关系或当时技术可达,不能证明模型事实、收录、排名、曝光、点击、CTR、真实访问、用户或转化。安全结论只覆盖回执写明的任务、模型、工具、权限、数据源、网络和版本。任何环境差异、策略变更或连接器升级,都应重新执行对应攻击夹具、合法任务和撤销清理测试。
