Anthropic安全白皮书3|8步落地零信任:智能体身份、工具、内存、供应链,手把手防住AI攻击
前两篇我们讲了AI智能体的威胁、零信任原则、三级成熟度模型。现在,到了最实操的部分:8个具体步骤,从需求分析到日常度量,手把手教你落地零信任智能体安全。
这份实施工作流来自Anthropic白皮书第IV部分,安全架构师和工程师可以直接照着建项目。
如果你是创业者或OPC(一人公司),可以直接跳到最后看“三条最低可行行动清单”。
阶段1:识别需求
做什么:先别碰技术,坐下来和业务、合规、法务、安全各方明确:
有哪些监管要求(HIPAA、GDPR、FedRAMP、EU AI Act)?
智能体要完成什么业务目标?
有哪些硬性约束(比如数据不能出境、延迟必须<100ms)?
产出:一份需求清单,后续所有决策都回查这份清单。
阶段2:管理供应链风险
智能体的供应链比传统软件更复杂——不仅有代码依赖,还有模型、训练数据、MCP服务器。
具体动作:
生成AI-BOM:使用OWASP CycloneDX ML-BOM工具,记录模型来源、训练数据 lineage、微调参数。
自动评估依赖健康度:集成OpenSSF Scorecard到CI流水线,给每个依赖打分(分支保护、模糊测试、签名发布、维护者活跃度等)。依赖分数低或无人维护 → 风险。
审计依赖树冗余:让前沿模型分析你的lockfile,找出功能重叠的库(比如两个HTTP客户端),合并它们,减少攻击面。
对无人维护的小依赖:用模型重写你实际使用的那个子集,替代原库。白皮书说这比继续依赖它们更安全。
加密签名:每个阶段(构建、部署、运行时)都签名。运行时验证,防止部署后被篡改。
供应商评估:向你的AI供应商问两个问题:你们怎么应对AI加速漏洞利用?你们自己扫描自己的代码吗?
白皮书特注:MCP服务器尽量自己host在不可变平台上,验证代码后自己签名,更新也要走同样流程。
阶段3:定义智能体边界
做什么:对每个智能体,明确四件事:
允许的操作:白名单,拒绝所有未列出的操作。
禁止的操作:黑名单(即使权限允许,也要在策略层禁止)。
升级触发条件:什么情况下需要暂停,等人工批准(如高额交易、敏感数据导出、外部通信)。
作用域限制(Least Agency):限制每个工具能访问哪些系统、哪些数据、频率、范围。
同时估算“爆炸半径”:如果这个智能体被完全攻破,最坏能造成多大损失?用“不可能 vs 繁琐”测试:如果你的抑制措施只是限流或多跳,那么它一定会被AI攻击者绕过。必要时要拆分智能体。
关键原则:每个智能体独立身份 + 独立凭据。如果你把一个智能体拆成多个,但给它们相同的凭据,等于没拆。
阶段4:防御提示注入
具体技术:
输入隔离:将所有自然语言输入(用户文本、上传文档、抓取的网页)视为不可信。用明确的定界符(Spotlighting技术)分隔指令和内容。微软实验证明,Spotlighting将间接注入成功率从>50%降到<2%。
宪法分类器:在提示前后增加AI分类器,扫描操纵企图。Anthropic的实现拦下了95%的越狱尝试,且误拒率增加很小。
减少攻击面:限制谁/什么能与智能体交互。如果是内部工具,只允许来自可信IP或经过强认证的调用。
阶段5:安全工具访问
工具白名单:每个智能体只能调用明确列出的工具。拒绝未列出工具。
能力限制:一个工具即使在白名单内,也要限制其能力。例如邮件工具允许读但不允许发送;数据库工具只允许SELECT。
参数验证:在调用工具前,校验参数范围、类型、是否包含可疑内容。可以用PreToolUse钩子在客户端做,同时在服务端也做。
沙箱执行:工具运行在容器(gVisor)或微VM中,限制网络、文件系统、系统调用。特别要实施速率限制和熔断,防止资源耗尽攻击(但注意限速只是延迟,不是硬屏障)。
人工批准:高风险工具(删除数据、发送外部邮件、修改配置)需等待人工确认,且提供清晰的操作描述。
阶段6:保护智能体凭据
底线要求:禁止静态API Key,禁止共享服务账户密码。攻击者用AI扫描代码库,这些秘密会被几秒内发现。
短生命周期令牌:使用OAuth2或类似机制,令牌有效期几分钟,自动刷新。这是Foundation级别的最低标准。
硬件绑定凭据:对生产系统和敏感内部工具,凭据应绑定到HSM/TPM,即使主机被攻破也无法导出凭据材料。对人类用户,使用防钓鱼2FA(FIDO2/passkey),短信验证码连Foundation都不合格。
凭据隔离:每个智能体实例有自己独立的凭据。如果共享,一个被盗,所有使用该凭据的智能体全暴露。
即时访问(JIT):只在需要时授予权限,用后立即撤销。这很难实现,但一旦做到,攻击者连“偷缓存凭据”的机会都没有。
ABAC:结合属性(身份、资源敏感度、时间、地点、风险分)动态决策。当智能体行为偏离基线时,ABAC可以立即降权或拒绝。
阶段7:保护智能体内存
会话隔离:每个会话独立上下文,子智能体也拥有自己的隔离窗口,不继承父会话历史。
上下文完整性验证:每次检索内存时,校验哈希和源标签。检测到篡改,拒绝使用并告警。
保留策略:设置数据存活时间(TTL),自动过期。短保留期降低投毒风险。
版本化内存 + 回滚:存储内存快照,发现投毒后可回滚到已知良好状态。白皮书建议预先测试回滚流程。
阶段8:度量重要指标
先度量这两项:
驻留时间:异常发生到人类感知的时间。目标:关键系统<1小时。
覆盖率:被调查的告警比例。如果很多告警无人看,说明需要自动化初筛。
可解释性:能否追溯到每条决策的输入链?对受监管行业,这是强制要求。
行为漂移:定期对比智能体的工具使用模式、输出分布、决策分布。突然的漂移可能意味着缓慢投毒。
检测速度:从行为偏离到告警发出的时间。白皮书建议用模型做告警的自动初筛(下篇文章详述)。
写在最后:给创业者和OPC的三条最低可行行动清单
你没有企业级的安全团队,但以下三步可以立刻做:
1. 把静态API Key换成短生命周期令牌。
用OAuth2客户端凭证流,令牌有效期不超过15分钟。不同智能体用不同凭据。这一步能挡住最基础的凭据窃取。
2. 给智能体加沙箱。
如果你用Claude Code,它自带沙箱(文件系统隔离、网络隔离)。如果自研,用Docker + gVisor,限制容器只能访问必要资源。处理用户输入或网页内容的智能体,沙箱是强制项。
3. 实施最小权限 + 人工审批。
给智能体的数据库账号只用SELECT,邮件账号只读收件箱。任何写操作或外发操作,先通过webhook请求你批准。另外,每天看一眼日志:智能体调用了哪些工具?有没有异常频率?超过阈值自动发邮件告警。
白皮书最后一句话:“那些基础扎实的组织——AI扫描找不到几个bug、智能体从第一天就为失陷而设计——才是AI时代的安全赢家。”
你不必完美。但要从今天开始。
关键词标签
#智能体实施工作流 #AI供应链安全 #AI-BOM #OpenSSF #提示注入防御 #JIT权限 #内存隔离 #驻留时间 #创业安全清单
下期预告:智读致用|Anthropic安全白皮书4|用AI对抗AI:自动化安全运营的实战方法
相关阅读:
Anthropic安全白皮书2|三级成熟度模型:你的AI智能体该配哪级安全?
Anthropic安全白皮书1|零信任 for AI Agents:AI时代的智能体安全,不能再靠“防火墙”了
