[翻译] AI Agent 的 Zero Trust 框...

type
status
date
slug
summary
tags
category
icon
password
网址
notion image
写在大家不会看的地方:AGI Bar,即将在上海开业
原文链接:https://claude.com/blog/zero-trust-for-ai-agents
Zero Trust 是一套安全架构,核心前提很简单:不信任任何东西,必须验证一切
不管请求来自公司内网还是外部,一律验证身份和权限。这套思路 1994 年就有了,NIST 在 2020 年发了标准(SP 800-207),NSA 在 2026 年跟进了实施指南
Anthropic 这份白皮书讲的是:当 AI agent 开始自主执行操作、调用工具、跨系统协作时,怎么把 Zero Trust 原则落地到 agent 部署上。几个看点:
→AI 加速了攻防两端,漏洞到利用的时间窗口从几个月压缩到几小时
→提出了「不可能还是麻烦」的设计检验标准,专治摩擦型安全措施
→六大安全能力域,每个都给了 Foundation / Enterprise / Advanced 三级路线图
→八步部署工作流,从需求识别到度量指标,可以直接拿来用
→防御运营要跟上自主攻击的速度,SOAR 要进化成 Agentic SOAR
为什么 AI Agent 需要 Zero Trust
基于边界的网络安全防御已经跟不上现代威胁的节奏。前沿 AI 模型正在把漏洞到利用之间的时间窗口从几个月压缩到几个小时,边际成本按美元计。模型现在就能找到传统工具和人工审计连续几年都没发现的严重漏洞
对部署 agent 的组织来说,这种加速产生了双重影响。第一,agent 运行的基础设施和你其他资产一样,暴露在 AI 加速的攻击面前。第二,agent 本身引入了自主性,能解读目标、选择工具、执行多步操作。传统的访问控制挡不住 agent 滥用合法权限,监控需要考虑那些靠持久性而非漏洞利用来得手的攻击
最适合应对这场变化的组织,不一定是 AI 最先进的那些。而是基本功足够扎实,以至于 AI 辅助扫描一上来就找不到几个 bug 的那些,以及从第一天就按「假设已被攻破」来设计 agent 部署架构的那些
三条原则
永远不信任,始终验证。每个访问请求都必须经过认证和授权,无论来源。来自企业内网的请求和来自外部 IP 的请求,接受同等级别的审查
假设已被攻破。在设计系统时就预期攻破会发生。与其把精力集中在防止入侵上,不如限制攻击者能造成的损害。按身份分段,实施细粒度访问控制,确保攻破一个系统不会获得对其他系统的访问
最小权限。只授予完成特定任务所需的最低访问权限。数据库管理员不需要访问邮件服务器。通过限制每个身份能访问的范围,组织可以控制单次攻破的爆炸半径(blast radius)
设计测试:不可能,还是只是麻烦
评估任何控制措施时,问一个问题:这是让攻击变得不可能,还是只是让攻击变得更麻烦?
那些价值来自摩擦而非硬性屏障的缓解措施,包括额外的跳板跳转、速率限制、非标端口、基于短信的 MFA,在面对能大规模碾过麻烦步骤的对手时会大幅失效。Agent 化的攻击者有无限耐心,每次尝试的成本接近于零
能通过这个测试的控制措施有一个共同模式:硬件绑定的凭证、会过期的 token、密码学身份、以及根本不存在的网络路径(而不是只是不方便的路径)。拿不准的时候,优先选择移除能力的控制,而不是限流能力的控制
Part I:自主系统的安全考量
Agent 式 AI 引入了现有安全模型设计时没考虑到的能力。传统软件执行预定义的逻辑,agent 系统不一样,它们以不同程度的自主性执行多步操作
Agent 系统有什么不同
无人值守执行Agent 不需要人在每一步批准就能执行操作。一个做研究的 agent 可能搜索网页、综合信息、产出报告,全程没有人工审核。被操控的 agent 能以机器速度造成伤害
工具访问Agent 可以与 API、数据库、文件系统和外部服务交互。这包括 MCP(Model Context Protocol)。一个被攻破的 MCP 栈可能导致数据窃取、恶意代码执行和破坏
决策能力Agent 需要解读指令并选择如何完成目标。一条对人类来说看起来无害的指令,可能被 agent 解读为能实现完全不同结果的方式
上下文持久化Agent 可以在会话间维持记忆。记住之前的交互让 AI 助手更能干,但也产生了新的数据保护需求
多 agent 协作Agent 可以与其他 agent 通信。这种信任关系让攻击者可以攻破一个 agent 然后横向移动,到达初始目标无法直接访问的系统
两个新概念
爆炸半径(blast radius):衡量出问题时的潜在损害范围。只读访问单个数据库的 agent,爆炸半径很小。有云基础设施管理员权限的 agent,爆炸半径巨大。安全投入应该匹配这个暴露程度
最小代理权(least agency):是 OWASP 造的新术语,把最小权限原则延伸到了 agent 应用。最小权限约束的是用户和系统能访问什么,最小代理权走得更远,限制每个 agent 工具能做什么、多频繁、在哪里。比如:数据库工具只拿到只读查询权限,邮件摘要工具没有发送/删除权限
合规要求
医疗、金融、政府等受监管行业面临的特定要求,agent 部署也必须满足。美国、英国和澳大利亚政府已经发布了 Zero Trust 指南,美国要求所有联邦机构在 2027 年前采用 Zero Trust
Part II:Agent 系统面临的当前威胁
OWASP 识别的当前威胁包括提示注入、工具和资源劫持、身份与访问权限滥用、记忆和上下文投毒、以及供应链风险
提示注入与指令操控
直接注入:攻击者构造输入来覆盖系统指令。手段包括显式指令覆盖、Base64 等编码方案绕过过滤器、以及对人类毫无意义但能影响模型输出的对抗性后缀。研究显示算法化方法可以达到 100% 攻击成功率,生成的提示可以跨模型家族迁移
间接注入:攻击者把恶意指令嵌入 agent 会处理的外部数据源,比如网页或邮件。Microsoft Research 确认,LLM 无法可靠地区分信息性上下文和可执行指令。用户永远看不到恶意载荷,agent 把它当成合法请求执行了
工具和资源滥用
拥有工具访问权的 agent 可以被操控为恶意使用这些工具,即使在授权权限范围内。传统的访问控制挡不住这种攻击
工具中毒:攻击者入侵 MCP 工具描述符、schema 或元数据。第一个有记录的野外恶意 MCP 服务器冒充了合法邮件服务,暗中复制了所有发出的邮件
工具链攻击:攻击者骗 agent 把合法工具以有害顺序组合,比如把内部 CRM 工具和外部邮件工具串联来窃取客户数据。因为每条命令都通过可信二进制文件在有效凭证下执行,主机端监控看不到恶意软件
资源耗尽:循环放大让 agent 反复调用高成本 API,造成拒绝服务或账单飙升
身份与权限滥用
无范围权限继承:高权限的管理 agent 委派任务时没做最小权限约束,把完整的访问上下文传给了本应权限有限的工作 agent
被攻破的低权限 agent 向高权限 agent 转发看起来合法的指令,后者直接执行而没有验证原始用户的意图。当 agent 常规性地协调和委派时,这个「困惑代理人」问题会被放大
基于记忆的权限留存:Agent 缓存凭证或密钥用于上下文复用但没有做好记忆分段。攻击者可以提示 agent 用之前安全会话中缓存的密钥执行操作,跨会话边界提升权限
供应链和依赖风险
和静态的软件供应链不同,agent 生态系统经常在运行时组合能力,动态加载外部工具和 agent 角色
模型供应链风险包括被投毒的权重和污染的微调数据引入的后门。Anthropic 研究表明,只需 250 个恶意文档就能在 6 亿到 130 亿参数的 LLM 中植入后门,且后门在安全训练(包括监督微调和 RLHF)后仍然存在
工具和框架供应链风险影响 MCP 服务器、API 集成和 agent 框架。PyTorch 依赖混淆攻击演示了恶意包如何在安装过程中窃取 SSH 密钥。安全研究人员在主要平台上发现了约 100 个恶意 AI 模型
大多数软件供应链主要是开源的,大多数开源项目没有 SLA。用 OpenSSF Scorecard 评估依赖健康度。让前沿模型看看你的 lockfile 问哪些依赖重叠,通常一小时就能发现值得做的整合
记忆和上下文投毒
植入到助手记忆中的恶意指令可以危害当前和所有未来的会话。Agent 在初始注入之后很久仍在为攻击者的目标服务
RAG 投毒:通过被投毒的数据源向向量数据库注入恶意数据。Agent 检索到被污染的上下文后,产出错误答案或执行针对性载荷
共享上下文投毒:利用多租户环境中复用或共享的上下文。长期记忆漂移更微妙:摘要或同伴 agent 的反馈逐步偏移存储的知识,因为没有单个改变看起来是恶意的,很难检测
逐个追踪威胁让你始终处于被动。下一节展示 Zero Trust 原则如何提供一个更持久的基础
Part III:将 Zero Trust 应用到 Agent 服务
本文档的剩余部分是实施指南。安全架构师和工程师应该逐步过一遍分级表格和工作流章节,安全负责人可以把前面的内容当简报文档用
原则按三个能力等级呈现:
→Foundation中小型团队的起步点。AI 加速攻击已经抬高了 Foundation 的地板:短命 token、密码学身份、基于身份的隔离和自动化初步分诊现在是入门要求
→Enterprise大多数有规模部署的组织应该瞄准的目标
→Advanced高度监管行业、国家安全应用、或攻破带来严重后果的场景
每个等级建立在前一个之上。预期 Advanced 会随领域演进变成 Enterprise 标准,Enterprise 变成 Foundation
Agent 身份与认证
身份和认证构成所有其他安全能力的基础。没有可验证的身份,你无法执行访问控制、维护审计追踪、或将动作归因到具体的 agent
Agent 身份与认证三级框架(Foundation / Enterprise / Advanced)
唯一标识符单独来看只是贴标签。Foundation 级别现在要求这些标识符有密码学根基。静态 API 密钥和共享服务账户密码是 AI 辅助攻击者最先找到的东西,即使在 Foundation 级别也不是合法入口
如果你现在在用带轮换策略的 API 密钥,把它当作已知缺口来对待。轮换一个可以从 lockfile 里 grep 出来的凭证,对 AI 辅助攻击者来说提升的成本微乎其微
访问控制和权限管理
即使完美认证的 agent,在被授予过多权限时也会造成损害。授权层执行最小代理权
访问控制与权限管理三级框架
最低限度,agent 只应该拥有与其角色相关的权限。邮件起草 agent 需要邮件权限,不需要访问财务部门的文件共享
沙箱执行限制了被攻破的 agent 能触达的范围。对处理网页内容、文档或任何不可信输入的 agent 来说,沙箱应该被视为必需而非愿景
Pro-tip
Claude Code 支持默认拒绝权限、沙箱执行带 OS 级隔离、写访问限制在项目目录内、托管设置让管理员强制执行组织范围策略
可观测性和审计
访问控制防止未授权的动作。可观测性揭示实际发生了什么。在检测方面做其他投入之前,先度量两件事:驻留时间(异常发生到人类知晓的时长)和覆盖率(实际被调查的告警比例)
可观测性与审计三级框架
Pro-tip
Claude Code 支持 OpenTelemetry 指标追踪、云环境审计日志、复杂命令的自然语言描述、ConfigChange hooks 审计设置变更
行为监控与响应
可观测性捕获 agent 做了什么。行为监控判断这些动作是正常的还是可疑的
行为监控与响应三级框架
检测异常只有在你响应得足够快以控制损害时才有意义。自动化事件周围的事务性工作,不要自动化决策。模型应该做笔记、捕获证据、起草事后报告。人类应该做遏制决策、披露决策和客户沟通决策
Pro-tip
Claude Code 的命令注入检测会标记可疑命令,即使匹配白名单模式。失败关闭匹配将未识别命令默认为需要手动批准
输入验证和输出控制
监控和响应在威胁出现之后捕获它们。预防在威胁开始之前就阻止它们
输入验证与输出控制三级框架
输入清洗不能从传统技术直接搬到 agent 上。SQL 注入有明确定义的模式和受限的输入字段,但 agent 的输入是自由形式的
Advanced 级别增加了聚光灯技术(spotlighting),利用已知 schema 帮助 LLM 区分系统指令和用户输入。宪法分类器(constitutional classifiers),Anthropic 的方法在测试中阻止了 95% 的越狱尝试
Pro-tip
Claude Code 支持输入清洗防止命令注入、命令黑名单默认阻止 curl/wget、隔离上下文窗口防止提示注入、网络请求审批对所有出站连接设门
完整性和恢复
当控制措施到位但仍发生攻破时,你需要已验证的配置和快速恢复
完整性、恢复与治理三级框架
Loading...

没有找到文章