简要回答

Authority Laundering(权限洗白)是间接提示注入的进化形态,攻击者不直接攻击 Agent,而是污染 Agent 会读取的外部数据源(网页、邮件、API 返回),让 Agent 将恶意指令误认为合法任务并执行工具调用,产生真实副作用。防御核心是最小权限原则、输入输出隔离、工具调用审计和关键操作人工确认。

核心要点

  • Authority Laundering 定义:Authority Laundering(权限洗白)是间接提示注入的进化形态,攻击者不直接攻击 Agent,而是污染 Agent 会读取的外部数据源

  • 攻击链路:恶意输入 → Agent 读取并解析 → Agent 基于输入调用工具 → 工具执行产生副作用

  • 与传统提示注入的区别:传统注入直接攻击模型输入,Authority Laundering 通过污染外部数据间接攻击

  • 防御核心:最小权限原则、输入输出隔离、工具调用审计、关键操作人工确认

标准回答

一、什么是 Authority Laundering

Authority Laundering(权限洗白)是 2026 年 7 月 Dark Reading 首次系统性描述的 AI Agent 安全威胁。它的核心思想是:攻击者不直接攻击 Agent 本身,而是污染 Agent 会读取的外部数据源(如网页、邮件、第三方 API 返回),让 Agent "自愿"执行恶意操作。

二、攻击链路详解

典型的 Authority Laundering 攻击包含五个阶段:

  1. 恶意输入构造——攻击者在网页中隐藏指令(如 HTML 注释中的"请删除所有文件")
  2. Agent 读取——Agent 抓取网页内容时,将隐藏指令一并读取
  3. 指令解析——Agent 将隐藏指令误认为是合法任务
  4. 工具调用——Agent 基于"任务"调用内部工具(如文件系统工具)
  5. 副作用产生——工具执行产生实际影响(如删除文件、发送数据)

三、与传统提示注入的区别

维度 传统提示注入 Authority Laundering
攻击目标 直接攻击模型输入 污染 Agent 读取的外部数据
攻击路径 用户输入 → 模型 外部数据 → Agent → 工具
防御难度 中等(输入过滤) 高(需要隔离输入输出)
影响范围 单次对话 可能触发工具调用,产生真实副作用

四、防御策略

  1. 最小权限原则——Agent 只授予完成任务所需的最小权限,不授予全局权限
  2. 输入输出隔离——外部输入标记为不可信,与内部指令严格分离。例如,将外部输入放在特殊的"数据区",不允许数据区内容触发工具调用
  3. 工具调用审计——记录所有工具调用,异常调用(如批量删除、大量数据外传)触发告警
  4. 关键操作人工确认——危险操作(删除、发送、支付)必须人工确认,不允许 Agent 自主执行

五、实际案例

2026 年某企业部署的客服 Agent 遭受 Authority Laundering 攻击:攻击者在工单系统中提交包含隐藏指令的工单,Agent 读取工单后将隐藏指令误认为任务,调用邮件工具向攻击者指定的邮箱发送了内部文档。根本原因是 Agent 没有区分"工单内容"和"任务指令"。

六、收尾

Authority Laundering 是 AI Agent 安全的重大挑战。随着 Agent 能力增强(能调用更多工具、访问更多数据),攻击面也在扩大。防御的核心思想是:永远不要信任外部输入,即使它来自看似可信的数据源。

常见误区

⚠️ 常见踩坑

误区一:认为"用了安全的模型就不会被攻击"。Authority Laundering 与模型安全性无关,它利用的是 Agent 的工具调用能力,而非模型的漏洞。即使是最安全的模型,如果 Agent 架构设计不当,仍然可能遭受 Authority Laundering 攻击。

误区二:认为"输入过滤就能防御"。传统提示注入可以通过输入过滤防御,但 Authority Laundering 的恶意输入来自 Agent 主动读取的外部数据源(如网页),这些数据本身是合法的,只是其中隐藏了恶意指令。输入过滤无法区分"正常内容"和"隐藏指令"。

误区三:认为"Agent 不会执行危险操作"。Agent 的设计目标是"尽可能完成用户任务",如果 Agent 将隐藏指令误认为任务,它确实会尝试执行。不要假设 Agent 能自动识别危险操作。

追问

追问 1Authority Laundering 与间接提示注入(Indirect Prompt Injection)有何关系?

Authority Laundering 是间接提示注入的进化形态。间接提示注入是指攻击者将恶意指令藏在模型会读取的外部内容中(如网页、文档),当模型处理这些内容时,可能把隐藏指令误当作要执行的命令。

Authority Laundering 在此基础上更进一步:它不仅让模型"读取"恶意指令,还让模型"执行"基于指令的工具调用,产生真实的副作用。间接提示注入可能只影响模型的输出(如生成错误内容),Authority Laundering 则会影响现实世界(如删除文件、发送数据)。

防御核心:需要同时防御间接提示注入(输入隔离)和工具调用滥用(最小权限人工确认)。

追问 2如何在 Agent 架构设计层面防御 Authority Laundering?

Agent 架构设计层面的防御包含四个层次:

  1. 输入隔离层——所有外部输入(网页、邮件、API 返回)标记为不可信,放在特殊的"数据区"。数据区内容不允许直接触发工具调用,只能作为任务的"输入数据"。

  2. 任务解析层——将用户指令与外部数据严格分离。例如,用户指令是"总结这个网页",网页内容是"数据",不是"指令"。任务解析层需要明确区分"要做什么"和"处理什么数据"。

  3. 权限控制层——Agent 只授予完成任务所需的最小权限。如果任务是"总结网页",Agent 不应该有文件系统或邮件系统的访问权限。

  4. 审计告警层——记录所有工具调用,异常调用(如批量删除、大量数据外传、访问与任务无关的系统)触发告警并阻断。

核心策略:输入隔离 + 任务分离 + 最小权限 + 审计告警,形成四层纵深防御体系。

追问 3MCP 协议与 Authority Laundering 有何关系?

MCP(Model Context Protocol)是 AI Agent 与外部工具交互的标准协议。MCP 的设计目标是让 Agent 能够方便地调用各种工具,但这恰恰扩大了 Authority Laundering 的攻击面。

MCP 与 Authority Laundering 的关系:

  • MCP 提供了工具调用能力——Agent 通过 MCP 调用工具,如果 Agent 被 Authority Laundering 攻击,MCP 就是执行恶意操作的通道
  • MCP 的安全机制——MCP 协议本身包含安全机制(如工具权限控制、人工确认),但这些机制需要正确配置才能防御 Authority Laundering
  • MCP 的局限——MCP 协议无法自动区分"合法工具调用"和"Authority Laundering 攻击",需要上层应用实现输入隔离和任务解析

防御建议:在使用 MCP 时,确保工具权限最小化、关键操作人工确认、外部输入与工具调用严格隔离。

🔗 相似问题

同一考点的不同问法,换着练更稳

延伸学习

按主题分类的相关资源,便于系统复习