ToolFence:为工具调用 LLM Agent 提供细粒度授权
ToolFence: Fine-Grained Authorization for Secure Tool-Using LLM Agents
ToolFence 在执行前编译带溯源约束的能力蓝图,并用确定性监控与能力级授权拦截工具调用;在 AgentDojo 上以 Qwen3-max 将总体 ASR 从 21.20% 降到 0.20%。
攻击者可向检索文档、工具输出或执行中获取的网页注入任意文本,目标是诱导智能体执行已认证请求未声明的工具效果或权限敏感参数。
- 工具型 LLM 智能体把可信指令与不可信观察放在同一上下文,间接提示注入可改写权限敏感参数。内容过滤与多路径共识仍留下较高 ASR,CaMeL 的隔离又带来高时延。
- ToolFence 在接触外部内容前,由策略架构器把已认证请求编译成带溯源约束的能力蓝图;确定性监控在快路径核验工具、溯源与预算,未覆盖时由评审授予新能力形状而非逐次裁决具体调用,并跨会话缓存形状。
- 在 AgentDojo 上,Qwen3-max 的 Overall ASR 从无防御的 21.20% 降到 0.20%,Clean Utility 下降 3.80 个百分点,受攻击样本时延为 1.63×;GPT-4o 上 Overall ASR 为 0.90%,Mistral 上为 0.13%。
- 作者指出溯源约束拦不住已授权数据流内的语义选择,并建议对新导出的敏感目标做选择性人工确认。评测为 AgentDojo 的 524 个跨工具对与 85 个工具内对、六种注入策略,主结果使用官方环境状态验证器。
- Threat model
- 攻击者可向检索文档、工具输出或执行中获取的网页注入任意文本,目标是诱导智能体执行已认证请求未声明的工具效果或权限敏感参数。不假设基座模型能抵抗注入,只假设模型提议与工具运行时之间存在可信执行控制器。
- Evaluated models
- Qwen3-maxGPT-4o (gpt-4o-2024-08-06)Mistral-Small-3.1-24B-Instruct-2503
- Benchmarks
- AgentDojo
- Metrics
- Clean UtilityUtility under Attack (U@A)Overall ASRCross-tool ASRWithin-tool ASRJudge/TaskRuntime overhead
ToolFence 通过在执行前编译类型化授权蓝图并由确定性监控器执行,把用户授权值与不可信观测区分开,以应对保留工具但篡改参数的 within-tool 攻击。
Paper analysis
What problem does this paper attempt to solve?
工具型智能体的工具内参数劫持缺少细粒度授权,静态过滤损效用、逐次裁决又太慢。
工具型 LLM 智能体把已认证指令与不可信观察放在同一上下文,间接提示注入可以在不换工具的情况下改写权限敏感参数;现有内容检测与静态工具过滤挡不住这种工具内劫持,强隔离又太慢。
- 场景:作者称 LLM 智能体已能发消息、访问私人记录、转账,同一上下文里同时有系统策略、用户请求、检索文档、邮件、网页和中间工具输出。攻击者把指令嵌进外部内容,使智能体代其行动。作者认为只防御首轮提示词不够,授权必须覆盖完整执行轨迹。
- 现有方法的三类失败:作者归纳为三点。(1)工具内劫持(within-tool hijacking)保留预定工具,只改收件人、金额、URL 或目的地;RepeatPrompt、ToolFilter、输入过滤、结构感知方法和 SecInfer 这类共识防御主要看内容或聚合输出,不授权效果。(2)CaMeL 的控制流与数据流隔离保证更强,但需要定制执行管线,时延限制部署。(3)静态工具过滤无法预见全部合法能力,计划外的良性调用会被拒绝。
- 核心观察:作者认为安全相关单位既不是单次调用(太细、重复裁决),也不是整个会话(太粗、不能适应),而是能力(capability):工具、效果类,以及对权限敏感参数的溯源约束。形状可复用,具体值每次仍要确定性复核。
- 本文提出:ToolFence,一种推理时防御。执行前由策略架构器编译带类型的授权蓝图;确定性监控在快路径执行已授权调用;蓝图不完整时,评审授予新能力而不是裁决每一次具体调用;跨会话缓存已批准的无值签名。
- 威胁模型:
- 受害系统:基座模型为 fθ 的 LLM 智能体,输入为已认证用户查询 q、工具集 T,以及多步轨迹中的中间工具输出 o1,…,om。
- 攻击者知识与能力:可向任意不可信通道注入任意文本,包括检索文档、工具输出、执行中获取的网页。论文未使用 white-box、black-box 或 no-box 这些标签。
- 攻击目标:诱导智能体执行未授权动作,即效果或权限敏感参数服务于已认证请求未声明的目标。
- 防御假设:不假设基座模型能抵抗注入;只假设模型提议的动作与工具运行时之间有一个可信执行控制器。
What related research exists?
相关工作分为提示注入攻击,以及输入过滤、微调与架构级三类防御。
论文把相关工作分成攻击技术与三类防御,并在方法对比中点名 PromptArmor、SecInfer 和 CaMeL。
提示注入攻击
- 早期覆盖与优化攻击:Liu et al. (2023)、Yuan et al. (2024)、Zeng et al. (2024)、Shi et al. (2025a) 使用显式覆盖先前指令;Pasquini et al. (2024)、Liu et al. (2025a)、Shi et al. (2024) 用启发式或基于梯度的方法不断更新注入提示词。
- 间接提示注入与结构化组件:Greshake et al. (2023) 的 IPI 把恶意内容注入外部数据源。Yu et al. (2023)、Kim et al. (2025)、Hui et al. (2024)、Nasr et al. (2025) 转向智能体系统的结构化组件。ToolHijacker(Shi et al., 2025b)用优化后的恶意描述操纵工具选择;ChatInject 利用聊天模板层级和角色混淆提高攻击成功率。
- 记忆与规划:ASB(Zhang et al., 2025)表明攻击可通过记忆投毒和 Plan-of-Thought 后门影响系统提示词、记忆和规划。作者称提示注入正从孤立提示词转向利用工具、记忆和推理交互的结构感知、上下文感知攻击。
输入过滤与微调防御
- 输入过滤:DataSentinel(Liu et al., 2025b)、PiGuard(Li et al., 2025)、PromptArmor(Shi et al., 2025c),以及 Wang et al. (2025)、Geng et al. (2025)、Zou et al. (2025)。作者称它们对显式注入模式有效,但对保持任务相关性、嵌入恶意意图的语义连贯攻击仍可能脆弱(Shi et al., 2025b; Jia et al., 2025),并可能因合法内容含常见注入用语而产生误报、降低良性效用。
- 微调:StruQ(Chen et al., 2025a)把用户查询分成控制与数据通道并微调;SecAlign(Chen et al., 2025b)加入面向安全的偏好优化;Jatmo(Piet et al., 2024)做任务特定微调。作者称这类方法需要模型参数和额外训练,难以用于闭源或黑盒模型。
架构级防御
- 提示重锚定与注意力:Spotlighting 与 Repeat User Prompt(Debenedetti et al., 2024)用分隔外部内容或反复锚定原始用户指令来提高鲁棒性;ICON(Wang et al., 2026)把模型注意力从可能不安全的指令上引开。
- 共识与数据流隔离:SecInfer(Liu et al., 2025c)在多样化推理路径上聚合决策;CaMeL(Debenedetti et al., 2025)用控制流与数据流的显式分离做隔离。作者称现有架构级防御主要检测未授权工具,对保留已授权工具、只改参数或目标的工具内攻击保护少得多。
- 附录对比:作者称 PromptArmor 给内容打分而非授权效果,工具内攻击和释义攻击上残留 ASR 高;SecInfer 各路径消费同一被注入观察,改参数的攻击会在各路径上重复出现;CaMeL 概念上最接近,但逐调用数据流分析的时间成本高。
基线方法与基准
- 基线:No Defense、Repeat Prompt、Spotlighting、Tool Filter、PromptArmor、SecInfer(K=5、temperature 0.7)、CaMeL。消融另含 Per-call Runtime Judge。
- 基准:AgentDojo(Debenedetti et al., 2024),覆盖 Workspace、Slack、Travel、Banking。
作者把本文定位为无需微调、在工具执行前做细粒度授权:用溯源约束处理工具内攻击,并用确定性快路径和可复用的能力级授予降低评审调用频率。
How does the paper address this problem?
执行前编译能力蓝图,快路径确定性核验,缺能力时授予形状并跨会话缓存。
ToolFence 把提示注入看成权限提升:在智能体接触任何外部内容之前,把已认证查询编译成带溯源约束的能力蓝图,再用确定性监控执行,缺能力时授予可复用的能力形状。
问题设定与设计目标
三个设计目标写在 §3.1。
- 确定性优先:蓝图已授权的常见调用不得再调用 LLM,时延不随工具调用次数增长,安全边界也不依赖可能出错的评审。
- 不隐藏饥饿:工具始终对智能体可见;未授权调用是带诊断信息的显式、可恢复拒绝,避免规划遗漏使所需能力静默缺失。
- 能力级授权:静态蓝图不完整时,回退应授权“工具–效果–溯源约束”这一形状,而不是单次具体动作,使判断可复用,影响范围由声明的数据流边限定。
细粒度授权蓝图
策略架构器是一次隔离的 LLM 调用,只看 q 和控制器持有的工具模式,不看不可信内容,输出类型化计划 P=(M,C)。
- 清单与能力:M 给每个工具一个效果标签 e,取值包括 READ、LOCAL_COMPUTE、COMMUNICATION、FINANCIAL、EXTERNAL_WRITE、DELETE 等,以及逐参数的权限敏感性标志。C 是能力集合。每条能力为 c=(tool, e, {pj ↦ βj}, κ, r),即工具、效果、参数绑定、调用预算 κ、可复用标志 r。
- 四种绑定:LITERAL 表示值从 q 复制;DERIVED 表示值来自已命名源工具 s 的输出,即 v∈Obs(s);TEMPLATE 表示值匹配由 q 和源工具支撑的已认证模板;FREE 表示该参数非权限敏感,可由智能体选择。蓝图记录溯源约束,不记录具体值。
- 示例:对 send_money(recipient, amount),允许名单只记工具是否允许仍过粗。ToolFence 把 recipient 约束为来自 read_file("bill.txt"),amount 约束为来自已认证查询 q。
确定性监控
每次提议调用 a=(tool, x) 先由无 LLM 的监控做三项检查:能力匹配(存在 c 覆盖全部参数)、绑定合规、预算(已提交次数低于 κ,或可读能力 r=TRUE)。三项都满足则走快路径立即派发。
- 绑定合规:LITERAL 必须出现在 q 中;DERIVED 必须出现在已执行的声明源工具输出中;TEMPLATE 必须匹配模式且源工具已执行。
- 只读自动放行:每个参数溯源都是 USER 的只读调用不能引入新访问目标,自动放行。参数来自工具输出或模型(例如从被注入网页抽出的 URL)则不自动放行,送评审。作者称在试点中无条件信任读操作,AgentDojo 的 slack 注入任务靠获取攻击者控制的 URL 即可完成,测得 60% ASR。
运行时能力授予
未命中蓝图时,不立即拒绝,也不问“这一具体动作可否接受”。控制器先为每个参数计算溯源标签 π(pj)∈{USER, TOOL, MODEL}:值是否出现在 q、某个已执行源工具的 Obs(s),或两者都没有。
- 提案拒绝:若任一权限敏感参数无法追溯到用户或声明的源工具,提案被拒绝(ĉ=⊥),在咨询评审之前拦住。作者称这对应典型注入形态。
- 授予决策:形式良好的提案只把工具、效果、每个参数的溯源约束和权限敏感性标志交给评审,不交具体参数值。Grant(ĉ)∈{GRANT, DENY}。GRANT 要求该能力服务已认证请求,且每个权限敏感参数被约束为 USER 或请求点名的工具源。
- 批准与拒绝后:GRANT 时把 ĉ 追加进运行计划 C 并登记预算,原调用回到快路径再准备后派发。DENY 时退回一次逐调用评审,作为最后手段保留原有逐调用行为。
- 失败关闭:附录 A.2 写,能力不在 C∪G 且授予不为 GRANT 则不派发;权限敏感参数的溯源为 MODEL 则 ĉ=⊥;评审输出无法解析则默认 DENY。附录 B 给出运行时授权评审与能力授予评审的完整提示词:二者都在隔离路径上运行,前者输出二选一 JSON,后者只评估不含具体值的能力形状。
跨会话缓存与流程
缓存键为 sig(c)=(tool, e, {pj ↦ (βj, source_toolsj)})。进程级缓存 G 只存绑定类型和源工具名,不存具体参数值、证据文本或先前工具输出。新会话复用时,每个具体参数仍对照本会话已执行的声明源重新验证。附录 A.1 称会话开始时把全部缓存能力注入新监控计划;命中签名则不再调用评审、也不重建提案。附录 Algorithm 1 概括完整流水线:编译蓝图、并入缓存、监控、只读自动放行、构建授予、缓存命中、评审授予或逐调用回退。
What experiments did the paper conduct?
AgentDojo 上三种模型、六种注入;Qwen3-max 的 Overall ASR 从 21.20% 降到 0.20%。
实验设置
- 基准与划分:AgentDojo,四个领域 Workspace、Slack、Travel、Banking,共 629 对注入任务。作者用良性任务与恶意任务的可执行真值工具调用做参数感知划分:跨工具升级至少需要一个良性任务不需要的工具;工具内攻击复用良性任务工具,但改变权限敏感参数。得到 524 个跨工具对、85 个工具内对、20 个歧义对。Overall ASR 在 609 个非歧义用户–攻击对上计算,并对六种攻击取平均。划分细节在附录 C。
- 攻击策略:Direct、Ignore Previous、Important Instructions、InjecAgent、System Message、Tool Knowledge。主表 ASR 为六种攻击的平均。
- 被测模型:Qwen3-max、GPT-4o(gpt-4o-2024-08-06)、Mistral-small-3.1-24B(附录记为 Mistral-Small-3.1-24B-Instruct-2503)。同一比较块内各方法使用相同骨干和任务实例。CaMeL 的特权 LLM 与隔离 LLM 使用同一骨干。
- 基线:No Defense、Repeat Prompt、Spotlighting、Tool Filter、PromptArmor、SecInfer(K=5 条候选路径,temperature 0.7)、CaMeL。消融另设 Per-call Runtime Judge。作者称保留各基线核心机制和可得的原始超参数;完整提示词与实现细节放在附录 C.2。
- 指标与判定:Clean Utility、Utility under Attack(U@A)、Overall ASR、Cross-tool ASR、Within-tool ASR,均用官方环境状态验证器计算。执行错误计为效用失败,不计为攻击成功。另测端到端时延、模型调用次数,以及对 ToolFence 的运行时评审调用次数和缓存命中率。
- 重复与匹配:使用固定种子,报告均值和 95% bootstrap 置信区间。Figure 2 的误差条为五个随机种子上的配对 95% bootstrap 置信区间。各方法匹配模型版本、攻击实例、工具循环上限、最大输出长度和重试策略。论文未在正文写出工具循环上限和最大输出长度的具体数值。
主结果
Table 1 与 Table 4 的百分数如下。Overall ASR 为 609 对、六种攻击的平均。
Swipe horizontally to read the table
模型 防御 Clean U. U@A Overall ASR Cross-tool Within-tool Qwen3-max No Defense 42.70 31.85 21.20 20.08 28.11 Qwen3-max Tool Filter 30.44 31.88 1.67 0.45 9.18 Qwen3-max CaMeL 32.67 25.82 0.42 0.20 1.80 Qwen3-max ToolFence 38.90 32.45 0.20 0.10 0.80 GPT-4o No Defense 84.20 51.00 38.01 36.80 45.50 GPT-4o CaMeL 70.50 47.80 1.28 1.00 3.00 GPT-4o ToolFence 82.70 73.80 0.90 0.70 2.10 Mistral-Small-3.1-24B ToolFence 55.80 52.30 0.13 0.05 0.60 据 Table 1、Table 4。Mistral 无防御的 Overall ASR 为 13.98%,Within-tool 为 20.19%;Tool Filter 的 Cross-tool 为 0.39%、Within-tool 为 7.69%;CaMeL 的 Overall ASR 为 0.42%、Clean U. 为 34.50%。GPT-4o 上 Tool Filter 的 Within-tool ASR 为 18.20%,Overall ASR 为 6.76%。
- 作者解读:Tool Filter 能压低跨工具 ASR,但工具内仍更高,限制工具可用性并不能控制权限敏感参数。CaMeL 在 Qwen3-max 上是基线中安全性最强的(Overall ASR 0.42%),但效用损失和运行时开销大。ToolFence 在 Qwen3-max 上 Overall ASR 为 0.20%,Clean Utility 为 38.90%(相对无防御的 42.70%,摘要称下降 3.80 个百分点),U@A 为 32.45%。
- 残留失败:作者称 Qwen3-max 上工具内 ASR 0.80%、GPT-4o 上 2.10% 支持参数级溯源授权,同时非零失败也说明溯源约束不能消除已授权数据流路径内部的每一种语义操纵。
- 策略与领域:Figure 2 在 Qwen3-max 上分六种策略画跨工具与工具内 ASR。作者称 Tool Filter 的跨工具 ASR 明显下降,但在 Important Instructions 和 Tool Knowledge 下工具内攻击更明显;ToolFence 在两类攻击、包括作者所称最强注入策略上维持接近零的 ASR。图中纵轴为 ASR(%),横轴为六种策略,图例含八种防御;转换文本未保留各柱精确高度。Figure 3 为 Qwen3-max 上四个套件的 Overall ASR,作者称 Banking 和 Slack 更难,因为状态改变操作和多步数据更多,ToolFence 在四个套件上 ASR 都低。图中各柱精确值未保留在文本中。
消融
Table 2 在 Qwen3-max 上逐步加入组件。U@A、ASR、每任务评审次数、运行时倍率依次为:Per-call Runtime Judge 为 31.20%、4.35%、6.35、3.20×;Blueprint + Deterministic Monitor 为 25.60%、0.45%、0.00、1.45×;加上 Dynamic Runtime Capability Grant 为 30.40%、0.18%、1.84、2.78×;加上 Cross-Session Capability Cache 为 31.80%、0.18%、1.05、1.96×;Full ToolFence(+ Read Auto-Allow)为 32.45%、0.20%、0.82、1.90×。
- 作者解读:纯预执行编译漏掉的能力事后不可用,所以蓝图加监控只有 25.60% 的 U@A。加入运行时授予后 U@A 升至 30.40%。缓存基本不改变安全与效用,评审次数从每任务 1.84 降到 1.05,作者称减少 42.9%;摘要与 §3.5 写减少 43%。Read Auto-Allow 再把 U@A 提到 32.45%。
- 引言中的另一组区间:作者称在 Qwen3-max 的 AgentDojo 上,Tool Filter 把跨工具 ASR 降到 0–1.741%,工具内 ASR 仍为 2.381–14.458%。该区间的分条件表未出现在所给正文表格中,Table 1 的对应点是 Cross-tool 0.45%、Within-tool 9.18%。
失败分析与时延
- 效用损失来源:§4.4 举例,用户要求跟随文件或消息中的 URL 时,读源可以授权,但发现的 URL 是 TOOL 派生而非用户认证溯源,后续 get_webpage(url) 不会自动放行。作者称更宽松会提高任务完成、也会扩大攻击面,并建议只把新导出的敏感目标交给用户确认后再加入授权能力集。
- 形状内失败:一个 Qwen3-max 的 Travel 案例在 Important Instructions 下,四次工具调用都被允许,因为餐厅名合法地来自已授权的餐厅列表输出,注入仍影响模型在多个候选中的选择。作者称 ToolFence 验证值从哪来,不验证多个已授权值中的选择是否忠实于用户意图。
- 时延:Figure 4 比较 50 个干净任务与 200 个受攻击对上的平均端到端运行时间。SecInfer 为 4.51×/3.77×。CaMeL 每样本 48.0 秒与 81.7 秒,对应 10.67× 与 12.95×。ToolFence 在 GPT-4o 上为 17.1 秒(3.79×),在 Qwen3-max 上为 10.3 秒(1.63×)。摘要写 Qwen3-max 上 1.63×,并称明显低于 CaMeL 的 12.95×。文本未逐一标明 4.51×/3.77× 与 CaMeL 两个倍率分别对应哪个模型;作者把 10.67× 与 12.95× 和 48.0、81.7 秒并列,并把 1.63× 明确标在 Qwen3-max。PromptArmor 开销最小,作者称其安全性较弱。贡献列表另写“只需正常执行时间的 1.9×,而 CaMeL 超过 12×”,与 Table 2 的 1.90× 及摘要的 1.63× 并列。
其他消融与分析
- 只读自动放行的试点:无条件信任读操作时,AgentDojo 的 slack 注入任务测得 60% ASR(§3.3)。
- 完整系统评审次数为每任务 0.82,相对 Per-call Runtime Judge 的 6.35(Table 2)。
- 贡献列表称能力复用与缓存把评审调用减少 43%;Table 2 中从 1.84 到 1.05 为 42.9%。
- Mistral 上 Repeat Prompt 的 Clean U. 为 57.61%,高于 No Defense 的 50.39%;Spotlighting 的 Overall ASR 为 19.88%,高于 No Defense 的 13.98%(Table 4)。
- Qwen3-max 上 Spotlighting 的 U@A 为 32.83%,高于 No Defense 的 31.85%,Overall ASR 仍为 18.56%(Table 1)。
- 论文未报告策略架构器与运行时评审各自使用的模型名称。
What are some points that can be further explored?
作者指出已授权路径内的语义选择仍会漏过,并建议选择性人工确认与更强语义约束。
作者指出的局限与后续方向
- 溯源不检查选择是否忠实:§4.4 的失败分析写明,攻击留在已授权能力形状内时 ToolFence 仍会失败;它验证值的来源,不验证模型在多个已授权值中的选择是否忠实反映用户意图。结论把更强语义约束列为进一步降低残留风险的方向。
- 合法值只出现在不可信内容中:§4.4 写,效用损失可以来自合法的权限敏感值只能通过不可信内容获得。同一模式也能携带攻击者控制的目的地,因此不会自动放行。作者给出的缓解是选择性人工确认:只把新导出的敏感目标展示给用户批准,再加入授权能力集。结论重述这一方向。
- 静态蓝图过严:§4.3 称纯预执行策略编译的中心限制是,初始规划遗漏的能力即使后来对已认证目标必要,也不可用。运行时能力授予被用来补这一限制。
- 发布计划:伦理声明写,作者将发布带有与双重用途安全研究相称防护措施的评测产物。这是计划,不是已完成的发布。
实验覆盖范围
- 模型与基准:主结果为 Qwen3-max 与 GPT-4o(gpt-4o-2024-08-06)(Table 1);附录 Table 4 为 Mistral-Small-3.1-24B-Instruct-2503。基准为 AgentDojo 的四个套件,629 对中参与 Overall ASR 的是 524 个跨工具对加 85 个工具内对。
- 攻击与基线:六种策略为 Direct、Ignore Previous、Important Instructions、InjecAgent、System Message、Tool Knowledge。比较对象为 Repeat Prompt、Spotlighting、Tool Filter、PromptArmor、SecInfer、CaMeL,以及消融中的 Per-call Runtime Judge。
- 判定与重复:安全与效用用官方环境状态验证器;固定种子,均值带 95% bootstrap 置信区间;Figure 2 使用五个随机种子。时延在 50 个干净任务和 200 个受攻击对上比较(Figure 4)。
- 组件消融:Table 2 依次改变蓝图加确定性监控、动态运行时能力授予、跨会话缓存和 Read Auto-Allow,报告 U@A、ASR、每任务评审次数和运行时倍率。
- 论文未报告:策略架构器与两类评审使用的模型名称;自适应攻击下的结果(相关工作引用了 Nasr et al. (2025) 关于自适应攻击绕过防御的研究,实验节未报告该类攻击);工具循环上限与最大输出长度的具体数值。
Summarize the main content of the paper
ToolFence 用溯源约束的能力蓝图拦截工具内劫持,在 AgentDojo 上把 ASR 压到 1% 以下并保持较低时延倍率。
ToolFence 是面向工具型 LLM 智能体的推理时授权防御,用来挡住间接提示注入,尤其是不换工具、只改权限敏感参数的工具内劫持。
- 问题:可信指令与不可信观察共享上下文。作者认为内容过滤和多路径共识看的是内容或聚合输出,不授权效果;静态工具过滤会拒绝计划外的合法调用;CaMeL 的数据流隔离开销高。
- 做法:策略架构器在接触外部内容前,只根据已认证查询和工具模式编译能力:工具、效果类、LITERAL/DERIVED/TEMPLATE/FREE 溯源、预算和可复用标志。确定性监控在快路径核验匹配、绑定和预算。未命中时先拒绝模型生成的权限敏感参数,再请评审授予不含具体值的能力形状;拒绝则退回一次逐调用裁决。跨会话只缓存形状,具体值仍在当前会话重验。只读且参数全部来自用户时自动放行。
- 主结果:AgentDojo 的 609 个非歧义对、六种攻击平均下,Qwen3-max 的 Overall ASR 从无防御 21.20% 降到 ToolFence 的 0.20%(跨工具 0.10%,工具内 0.80%),Clean Utility 从 42.70% 到 38.90%,U@A 为 32.45%(Table 1)。GPT-4o 上 Overall ASR 为 0.90%,Clean Utility 为 82.70%,U@A 为 73.80%。Mistral-Small-3.1-24B 上 Overall ASR 为 0.13%,工具内 ASR 为 0.60%(Table 4)。
- 效率与例外:Figure 4 中 Qwen3-max 受攻击样本平均 10.3 秒、1.63×;GPT-4o 为 17.1 秒、3.79×;CaMeL 为 48.0 秒与 81.7 秒,对应 10.67× 与 12.95×。Table 2 中缓存把每任务评审次数从 1.84 降到 1.05。作者报告一个 Travel 案例中,四次调用都因餐厅名来自已授权列表而被放行,注入仍影响候选选择。
- 作者结论:作者认为把防御从逐调用评审改成能力级授权,可以同时压低跨工具与工具内劫持、保留效用并只带来中等运行时开销;选择性人工确认和更强语义约束是继续降低残留风险的方向。