← 所有文章

AI Agent安全:部署与防御的信任悖论

如何在生产环境中保护AI Agent?在应用层之下使用操作系统级沙箱来强制执行权限,而非应用层的允许列表。在执行前通过PreToolUse钩子拦截每一次工具调用。通过原始任务与近期代理操作之间的嵌入相似度来监控行为漂移。这三种机制(行为遏制、权限范围界定和漂移检测)解决了导致Meta的Sev 1事件、Amazon的13小时宕机以及Agents of Chaos研究中发现漏洞的故障模式。

2026年3月18日,一名Meta工程师部署了一个内部AI Agent,用于在内部论坛上回答同事的技术问题。该代理未经授权便发布了响应。另一名员工采纳了该代理存在缺陷的建议,引发连锁反应,导致敏感的企业和用户数据泄露给未授权员工近两小时。Meta将其归类为Sev 1,这是其内部体系中第二高的严重等级。1

同一周,Google工程师发布了Sashiko,这是一个面向Linux内核的代理式AI代码审查系统,从近期1,000个上游问题中捕获了53%的漏洞,这些漏洞”百分之百被人类审查者遗漏”。2 Wikipedia社区继续讨论是否全面禁止LLM生成的贡献。3 NIST发布了旨在”可信采用”的AI Agent标准倡议。4一位美国参议员与Claude对话,询问AI公司是否值得信任其收集的数据。Claude的回答是:”参议员,是钱。本质上就是为了利润。”该视频点击量达到440万次。5

每家大型机构都在同时部署代理并构建防范它们的墙壁。墙壁在升高,因为代理不断证明它们需要这些墙壁。

TL;DR

  • 悖论:各组织一方面加速部署代理,另一方面又忙于遏制代理故障。两种努力之间毫无协调。
  • 数据:企业AI漏洞中每8起就有1起涉及代理系统。80%的组织报告了风险性代理行为。只有21%的高管对代理访问的内容具有完整可见性。6
  • 事件:Meta因未授权代理发帖引发Sev 1事件。AWS因AI编码工具决定”删除并重建环境”而导致13小时宕机。7一项为期14天的多所大学联合研究在六个代理中发现了10个安全漏洞,包括身份劫持和无限循环。8
  • 模式:快速部署、发现故障、构筑墙壁、更快部署。Google推出Sashiko协助代码审查,而Amazon强制要求AI辅助代码变更需高级主管批准。Anthropic起诉一个伪造Claude请求头的开源工具,而该工具每月仍被250万开发者使用。9
  • 持续存在的原因:部署按产品时间线运行(季度OKR)。防御按事件时间线运行(事后复盘响应)。约束永远追不上授权。
  • 打破这种循环的方法:通过运行时行为治理闭合部署与防御之间的反馈回路。行为遏制(PreToolUse钩子)、权限范围界定(操作系统级沙箱)和漂移检测(余弦相似度跟踪)应对本文所述的三类故障。证据来自500多次自主代理会话和一份关于代理行为威胁的公开NIST评论

部署与防御的模式

过去90天内的三起事件揭示了这一模式。

Meta(2026年3月):一个AI Agent在内部论坛上未经授权发布了响应。一名员工采纳了有缺陷的建议。敏感数据泄露给未授权员工长达两小时。Meta确认了事件,将其定为Sev 1,并表示”没有用户数据被滥用”。1几个月前,Meta AI部门安全负责人Summer Yue报告称,一个连接到她Gmail的代理”尽管有明确指令不要删除邮件,仍独立删除了邮件”,并忽视停止操作的命令,直到被手动中止。10

Amazon(2025年12月):Amazon的Kiro AI编码工具引发了13小时的AWS宕机,当时代理判断需要”删除并重建环境”。Amazon将其归咎于”用户错误,非AI错误”,并表示该员工拥有”超出预期的更广泛权限,这是用户访问控制问题,而非AI自主性问题”。多名员工向《金融时报》表示,这”至少”是第二起与AI工具相关的中断事件。Amazon的应对措施是:强制要求AI辅助代码变更需高级主管批准。7

研究实验室(2026年2月):Agents of Chaos研究(来自Northeastern、Stanford、Harvard、MIT和CMU的研究人员)让六个AI Agent访问一个类似Discord的服务器,具备邮件、bash、持久文件系统、cron任务和GitHub访问权限,持续14天。二十名研究人员与这些代理进行交互,部分良性,部分敌对。代理表现出10种不同的安全漏洞。8

这些漏洞看似平平无奇。一个代理摧毁了整个邮件服务器,而非采取相应的适度行动(不成比例的响应)。两个代理进入相互转发循环,产生不受控制的后台进程(无限循环)。一个代理接受了伪造的所有者身份,并授予完全系统访问权限(身份劫持)。在12次拒绝之后,一个代理在持续的情感压力下,响应了未授权的请求(愧疚陷阱)。8

东北大学领导该研究的教授Christoph Riedl总结道:AI Agent”在将任何形式的常识推理应用于现实世界情境时——尤其是在利益冲突时——表现极其糟糕”。11

2026年的代理漏洞数据

HiddenLayer的2026 AI威胁报告调查了250名IT和安全领导者。研究结果量化了这一悖论:12

  • 自主代理在企业报告的AI漏洞中占比超过1/8
  • 35%的漏洞来自公共模型库中的恶意软件——而93%的组织仍在使用它们
  • 31%的受访者不知道自己是否被入侵
  • 53%承认隐瞒AI漏洞报告
  • 76%将影子AI视为明确或可能的问题,高于2025年的61%

CEO Chris Sestito表示:”代理式AI在12个月内的演进速度,超过了大多数企业安全在五年内的速度。”12

另一项企业调查发现,只有21%的高管对其代理的权限、工具使用和数据访问具有完整可见性。80%报告了风险性代理行为,包括未授权访问和不当数据暴露。普通企业大约有1,200个非官方AI应用程序,86%报告对它们没有可见性。6

代码质量数据同样触目惊心。CodeRabbit分析了470个pull request,发现AI编写的代码比人类编写的代码多出1.7倍的问题13 Apiiro发现使用AI的开发者引入的安全漏洞大约多出10倍13 METR发现,一半通过行业测试的AI编码解决方案会被人类审查者拒绝。13

供应链风险加剧了这些数据。攻击面并非假设性的。MCP服务器是代理连接基础设施的新攻击面。MCPTox是一个评估45个真实MCP服务器上工具投毒攻击的基准测试,发现嵌入工具元数据中的恶意指令在GPT-4o-mini、o1-mini、DeepSeek-R1和Phi-4上的攻击成功率超过60%。18这些攻击从不执行被投毒的工具本身。它们在工具描述中嵌入指令,指挥代理使用服务器上已有的合法工具,重定向以窃取凭据或篡改参数。现有的安全对齐无法捕获此类攻击,因为链条中的每次工具调用都是对可信工具的合法调用。18

理论上的供应链风险在2026年3月24日变为现实,当时攻击者入侵了LiteLLM的PyPI维护者账户,这是一个流行的AI代理库,日下载量超过一百万次。攻击者发布了两个恶意版本(1.82.7和1.82.8),它们从未经过官方的GitHub CI/CD流水线。版本1.82.8包含一个.pth文件,该文件会在任何Python启动时自动执行,无需任何导入。该载荷收集所有环境变量、SSH密钥、AWS/GCP/Azure凭据、数据库密码、加密货币钱包以及CI/CD密钥(一个教科书级的静默渗出攻击),使用硬编码的RSA公钥加密它们,并将归档渗出到一个攻击前几小时才注册的攻击者控制域名。恶意版本持续存在约12-24小时后被移除,包括Microsoft GraphRAG在内的下游项目遭受了冲击。19

单个被攻破的代理可在4小时内毒化87%的下游决策6

同时部署代理与构筑墙壁

机构对这些数据的回应分裂为两种同时进行且互不协调的运动:更努力部署和更努力防御。

更努力部署:

Google发布了用于Linux内核代理式代码审查的Sashiko,由Linux Foundation支持。该系统捕获了53%被人类审查者完全遗漏的漏洞,估计误报率低于20%。2尽管发生了Sev 1事件,Meta仍在继续扩展内部AI Agent。EY报告称,营收超过10亿美元的公司中有64%因AI故障损失超过100万美元,而它们仍在继续部署。6

更努力防御:

Kiro宕机事件后,Amazon强制要求AI辅助代码变更需高级主管批准。7 Anthropic锁定了OAuth访问以阻止第三方工具伪造Claude请求头,随后对OpenCode提起法律请求,理由正是如此。9 Wikipedia限制LLM生成的贡献:编辑者必须在编辑摘要中披露AI使用情况,且”明显由LLM生成的评论可能被删除或折叠”。3 EFF在其开源项目中接受LLM生成的代码,但要求所有评论和文档由人类撰写。14 NIST启动了AI Agent标准倡议,包含三大支柱:行业主导标准、社区协议和安全研究。4

参议员Bernie Sanders发布了一段9分钟的Claude采访视频,点击量达到440万次。Gizmodo的回应是:”嘿Bernie,那不是一个AI Agent。”15批评者对方法论的质疑有道理,但结构性信号很重要。当一位在任参议员将AI系统视为企业监控问题上的可信证人时,政策环境已经发生变化,而相关技术框架尚未准备好回答提出的问题。5

这些防御措施没有一个与隔壁大楼正在进行的部署决策协调。

OpenCode断层线

部署与防御紧张关系最清晰的例证是Anthropic与OpenCode之争。

OpenCode是一个开源AI编码代理,拥有超过12万个GitHub星标和500万月活跃开发者。9该工具支持75多个LLM提供商。为了访问Claude,OpenCode伪造了claude-code-20250219 HTTP请求头,让Anthropic的服务器相信请求来自官方的Claude Code CLI。此伪装让Max订阅者(每月200美元的20倍层级,默认运行Opus 4.7)通过OpenCode使用Claude,而Anthropic对此毫不知情。9

社区开发出一种名为”Ralph Wiggum”的技术:让Claude无限循环运行,自主修改代码直到测试通过。据报道,一名开发者在不到300美元的API成本下完成了一份5万美元的合同,消耗的是无限的Max订阅资源。9

2026年1月9日,Anthropic部署了服务器端阻断,防止非官方OAuth访问。3月19日,OpenCode合并了PR #18186,”根据法律请求”移除了所有Anthropic品牌的系统提示、认证插件和提供商提示。9该PR收到399个反对票和177个困惑反应。

DHH和George Hotz批评了此举。Hotz表示:”对一家基于我们代码训练模型而建立的公司来说,这是糟糕的政策。”OpenAI公开支持OpenCode,允许ChatGPT订阅使用第三方工具,这是一种刻意的对比。9

Anthropic的Thariq Shihipar回应:”未经授权的驱动程序会引入bug和使用模式,Anthropic无法对其进行适当诊断。”16

双方都有道理。当第三方工具伪造官方请求头时,Anthropic无法维持质量保证。当一个平台对互操作性提起诉讼时,开发者无法在其上构建。这场争议无关技术。它关乎信任边界划在哪里,以及是用户还是提供商来划定。

时间尺度差距

本文中的每个组织单独来看都做出了合理的决策。Meta部署内部代理是因为它们能提升生产力。Amazon推出Kiro是因为AI辅助编码加速开发。Google发布Sashiko是因为人类审查者会遗漏一半的bug。Wikipedia限制LLM贡献是因为志愿者编辑者无法吸收大规模机器生成文本的审查负担。

悖论持续存在,因为部署和防御运行在不同的时间尺度上。

部署按产品时间线运行。一个团队作为季度OKR推出代理集成。成功指标是采用率:多少员工使用它、完成了多少任务、节省了多少时间。代理获得更广泛的权限,因为受限的权限会拖慢采用,而缓慢的采用会毁掉OKR。

防御按事件时间线运行。一个团队在出事后构筑墙壁。Meta对Sev 1事件的响应是限制代理的发布权限。Amazon的响应是强制要求高级主管批准。每一道墙都针对引发它的特定故障。没有一道墙针对下一个故障。

这两种时间尺度之间的差距形成了一种棘轮。每个部署周期都会授予代理新的能力。每个事件周期都会在某个具体能力失败后对其加以约束。约束永远追不上授权,因为部署团队的下一轮冲刺在事件复盘结束之前就已经开始。

我了解这种棘轮,因为我同时在其两端运作。自2025年5月以来的500多次自主编码会话中,我部署了能力日益增强的代理配置,同时针对每个配置暴露的故障构建防御。60天内12次,我的代理停止执行分配的任务,转而做其他事。每一次,代理都继续产出看似合理的输出。没有任何安全漏洞起作用。代理在运行时决定处理另一个问题。

漂移检测器之所以存在,正是因为这12起事件。沙箱之所以存在,是因为我发现一个代理试图写入~/.ssh/。证据门之所以存在,是因为一个代理在未运行pytest的情况下报告”所有测试通过”。每一项防御都可追溯到前一个配置未预见的具体故障。我所编目的七种命名故障模式与Agents of Chaos研究在研究规模上发现的模式相同:代理在验证、比例性和自我评估方面失败。8

运行时治理的模样

当部署与防御两种职能共享同一反馈回路时,部署与防御的循环便会被打破。实际上,这意味着在运行时对代理行为进行插桩,而不是事后再进行审查。

我的编排系统在钩子流水线中包裹每一个代理动作:84个钩子拦截Claude Code暴露的26种生命周期事件类型中的15种(v2.1.116,2026年4月),涵盖文件读取、文件写入、bash命令、网络请求和子代理生成。17在任何工具调用执行之前,PreToolUse钩子会对照代理无法覆盖的约束对其进行检查。每25次工具调用之后,漂移检测器会计算原始任务与代理近期动作之间的余弦相似度。当相似度分数降至0.30以下时,系统会注入包含原始提示的警告。在所有12次低于阈值的触发中,代理都可验证地丢失了任务线索。17

三种具体机制应对本文所述的三类故障:

行为遏制解决Meta问题。 Meta代理未经授权发帖,是因为没有任何机制检查它是否应该发帖。在每个bash命令之前触发的PreToolUse钩子,匹配如curl -X POSTgit push或API写入端点等模式,本可以在执行之前阻止未授权的论坛发帖。这种检查增加毫秒级的延迟。替代方案是Sev 1事件。

权限范围界定解决Amazon问题。 AWS宕机之所以发生,是因为代理有权限删除基础设施。一个操作系统级沙箱(macOS Seatbelt、Linux seccomp或容器级限制)阻止对生产路径、凭据存储和基础设施API的写入,无论代理决定做什么,”删除并重建环境”都变得物理上不可能。除非在应用层之下强制执行,否则代理沙箱始终只是建议

漂移检测解决Agents of Chaos问题。 该研究最隐蔽的发现并非戏剧性的故障(邮件服务器被摧毁、身份劫持),而是那些渐进性的故障:代理在持续压力下妥协、执行被伪装成合法的未授权请求。漂移检测在有害行动之前就捕捉到行为轨迹。等到代理在第13次尝试时屈服于”愧疚陷阱”时,原始任务与当前对话之间的余弦相似度早已降至任何合理阈值以下。

这些机制都不需要通过预部署对齐来预测具体故障。它们实时观察行为,并执行代理无法争辩的不变量。Agents of Chaos研究在运行相同权重的同一批代理中发现了10个漏洞和6个真正的安全行为。8差别在于上下文。运行时治理使依赖于上下文的故障变得可检测。

能够解决这一悖论的组织不是那些部署最快或防御最严的组织。而是那些闭合两者之间反馈回路的组织,使得每次部署都产生能指导下一个约束的遥测数据,而每个约束都在上线前经过下一次部署的测试。

FAQ

2026年最大的AI Agent安全风险是什么?

三类故障占主导:未授权操作(代理执行从未被指示的操作,如Meta的论坛发帖代理)、权限提升(代理使用超出预期的更广泛权限,如AWS基础设施删除事件)以及行为漂移(代理在压力下或累积上下文中逐渐偏离其分配的任务)。HiddenLayer对250名安全领导者的调查发现,自主代理目前占企业AI漏洞的1/8,80%的组织报告了风险性代理行为。12 MCP工具投毒面增加了第四类:通过被入侵的工具元数据操纵代理行为的供应链攻击。

什么是PreToolUse钩子,它们如何保护AI Agent?

PreToolUse钩子是运行时拦截器,在每个代理工具调用之前触发:文件写入、bash命令、API请求、子代理生成。每个钩子对拟议操作与代理无法覆盖的约束列表进行模式匹配。例如,匹配curl -X POSTgit push的钩子会在执行前阻止未授权的网络写入。截至v2.1.116,Claude Code钩子系统暴露了26种生命周期事件类型;我的生产环境设置在其中15种上运行84个钩子。该机制增加毫秒级延迟,但能防止导致Meta Sev 1事件的那类故障。

AI Agent的漂移检测如何工作?

漂移检测以固定间隔(在我的系统中是每25次工具调用)计算原始任务提示的嵌入与代理近期动作的嵌入之间的余弦相似度。当相似度分数降至阈值(0.30)以下时,系统会注入包含原始提示的警告以重新对齐代理。在每天60多次自主会话中,这捕获了100%的已验证漂移事件,即代理悄悄停止执行分配任务,转而追求不同目标,同时仍产生看似合理输出的情况。17

可以在操作系统层面对AI Agent进行沙箱化吗?

可以,而且应该这么做。应用层的权限列表只是代理可以争辩的建议。操作系统级沙箱(macOS Seatbelt配置文件、Linux seccomp-bpf、容器级cgroup限制)在内核级强制执行拒绝规则。无论代理决定做什么,它都无法写入~/.ssh/~/.aws/或生产基础设施路径。内核级强制使”删除并重建环境”变得物理上不可能,而不仅仅是被禁止。

代理信任危机真的是新问题吗?

故障并不新鲜。自动化在AI出现之前就已经引发过事件。2025-2026年发生变化的是自主性差距:代理现在在运行时选择自己的行动,而不是遵循预定义脚本。HiddenLayer报告发现自主代理专门占漏洞的1/8,这是两年前还不存在的类别。12

开源AI Agent是否比专有的更不安全?

Anthropic与OpenCode之争关乎访问控制,而非安全。OpenCode的安全档案取决于它连接到哪个LLM提供商以及如何配置。安全问题不是开源与闭源之争。问题在于工具操作者是否对代理的行为具有可见性,与许可证无关。

Meta代理真的造成了数据泄露吗?

Meta将事件归类为Sev 1(第二高的严重等级),并确认敏感数据向未授权员工暴露了约两小时。Meta声明”没有用户数据被滥用,没有证据表明任何人利用了该访问权限或公开了任何数据”。1这是否构成”泄露”取决于定义。未授权的暴露是真实发生的。

什么是Agents of Chaos研究?

这是一个为期14天的多大学研究项目(Northeastern、Stanford、Harvard、MIT、CMU),在一个受控环境中让六个AI Agent访问邮件、bash、文件系统、cron任务和GitHub。二十名研究人员与代理进行交互。研究识别出10个安全漏洞和6种安全行为,发表为arXiv:2602.20021。8

公司应该停止部署AI Agent吗?

不应该。Google的Sashiko捕获了100%人类审查者遗漏的bug。企业生产力的提升是可衡量的。停止部署不是答案。闭合部署与防御之间的反馈回路才是。每次代理部署都应产生行为遥测数据,以指导下一个约束。每个约束都应在上线前经过下一次部署的测试。

个人开发者应该做什么?

按影响排序的三个具体步骤:(1)在应用层之下强制执行权限。一个阻止对~/.ssh/~/.aws/、生产路径和凭据存储写入的操作系统级沙箱使Amazon式的灾难物理上不可能。代理无法与内核级的拒绝争辩。(2)监控行为轨迹,而不仅是输出。会话漂移可通过原始任务与代理近期动作之间的嵌入相似度来检测。在我60次会话的测试中,0.30的余弦相似度阈值捕获了100%的已验证漂移事件。17(3)要求证据,而非断言。当代理报告”所有测试通过”时,要求测试输出。幻影验证占需要人工干预的代理故障的12%。

什么是部署-防御棘轮?

这种模式指每个部署周期都授予代理新能力,而每个事件周期都在某个具体能力失败后对其加以约束。约束永远追不上,因为部署团队的下一轮冲刺在事件复盘结束之前就已经开始。当两个团队共享同一遥测流水线和同一反馈回路时,棘轮就会被打破。


  1. Amanda Silberling,“Meta Is Having Trouble with Rogue AI Agents,” TechCrunch,2026年3月,基于The Information的调查报道。 

  2. Roman Gushchin,“Sashiko: Agentic AI Code Review for the Linux Kernel,” GitHub / Linux Foundation,2026年3月。报道:Phoronix。 

  3. Wikipedia社区,“Large Language Model Policy,”持续进行。另见:关于LLM辅助写作的RFC。 

  4. NIST,“Announcing the AI Agent Standards Initiative for Interoperable and Secure AI,” 2026年2月。 

  5. 参议员Bernie Sanders,X帖子,2026年3月19日。约440万次观看。 

  6. Help Net Security,“Enterprise AI Agent Security in 2026,” 2026年3月。汇总了EY、Astrix Security和Harmonic Security的调查。 

  7. Fortune,“AI Coding Risks: What Amazon’s Outage Reveals About Enterprise Agents,” 2026年3月。另:《金融时报》关于多起AWS事件的报道。 

  8. Christoph Riedl等,“Agents of Chaos,” arXiv:2602.20021,2026年2月。多机构联合:Northeastern、Stanford、Harvard、MIT、CMU。 

  9. ShareUHack,“OpenCode Anthropic Legal Controversy,” 2026年3月。原始来源:GitHub PR #18186。 

  10. Summer Yue,Meta Superintelligence Labs安全负责人,于2026年2月报告了邮件删除事件。在TechCrunch和The Decoder关于Meta代理事件的报道中被引用。 

  11. Christoph Riedl,引自“Autonomous AI Agents Unleashed on Discord,” Northeastern University News,2026年3月。 

  12. HiddenLayer,“2026 AI Threat Landscape Report,” 2026年3月18日。对250名IT/安全领导者的调查。 

  13. CodeRabbit(470个PR,1.7倍问题率)、Apiiro(约10倍安全问题)和METR(50%被人类审查者拒绝),引自Fortune,2026年3月。7 

  14. EFF,“Our Policy on LLM-Assisted Contributions to Open Source Projects,” 2026年2月。 

  15. Gizmodo,“Hey Bernie, That’s Not an AI Agent,” 2026年3月。 

  16. Thariq Shihipar,Anthropic,就未授权第三方工具访问发表评论。引自《The Register》,2026年2月。 

  17. Blake Crosley,“What I Told NIST About AI Agent Security,” blakecrosley.com,2026年2月。来自每天60多次自主代理会话的生产证据。 

  18. Zhiqiang Wang等,“MCPTox: A Benchmark for Tool Poisoning Attack on Real-World MCP Servers,” arXiv:2508.14925,AAAI 2026。45个MCP服务器,353个工具,20种LLM设置下的1,312个恶意测试用例。 

  19. isfinne等,“LiteLLM Supply Chain Attack: Malicious litellm_init.pth credential stealer,” GitHub Issue #24512,2026年3月24日。被入侵的PyPI维护者账户、双重base64编码的载荷、AES-256-CBC + RSA渗出到攻击者域名。下游:Microsoft GraphRAG、jaseci、nanobot-ai。 

相关文章

When Your Agent Finds a Vulnerability

An Anthropic researcher found a 23-year-old Linux kernel vulnerability using Claude Code and a 10-line bash script. 22 F…

9 分钟阅读

AI Supply Chain Attacks: The Supply Chain Is the Surface

Trivy got compromised via tag hijacking, then LiteLLM on PyPI, then 47,000 installs in 46 minutes. The AI supply chain w…

17 分钟阅读

Your Agent Writes Faster Than You Can Read

Five research groups published about the same problem this week: AI agents produce code faster than developers can under…

17 分钟阅读