系统:运行中
← 返回所有攻击
DEFENSE LOW NEW

Agent Threat Rules:面向 AI 智能体的「Sigma」——以及它的召回率数字所坦白的真相

ATR 为智能体攻击提供开放的 YAML 检测规则,已在微软、思科和 Gen Digital 投入生产。其自身的基准测试说明了为何基于正则的检测只是一层,而非边界。

2026-06-03 // 5 min affects: langchain, crewai, autogen, mcp-servers, claude-code, github-copilot

这是什么?

Agent Threat Rules(ATR) 是一种开放、带版本、可被机器读取的检测规则格式,用于描述针对 AI 智能体的攻击——提示注入、工具投毒、技能(skill)入侵以及上下文外泄。Help Net Security 于 2026 年 6 月 3 日报道了它进入生产环境;该项目自称为「面向 AI 智能体的 Sigma」,正如 Sigma 之于 SIEM 检测、YARA 之于恶意软件特征。规则是 YAML 文档,声明一种攻击模式、要检查的输入字段(LLM 输入、工具调用参数或 SKILL.md 内容),以及证明规则会触发的测试用例。一个 TypeScript 参考引擎和一个名为 pyATR 的 Python 封装均以 MIT 许可证发布。

值得报道的不是口号,而是它的透明度。该项目逐一公布了各语料库的召回率数字,包括那些难看的数字。正是这种诚实,让防御者能够判断基于规则的检测在哪里有用、在哪里失效。

工作原理

一条规则通过正则模式和行为阈值,对智能体运行时的事件——用户提示、工具调用、MCP 交互、内存操作、技能安装——进行过滤,然后声明一个响应(拦截、告警、隔离、上报)。由于每条规则都附带真阳性和真阴性测试用例,整套规则本身可被测试、可被同行评审——这正是传统护栏黑名单通常缺乏的特性。

基准测试数字才是重点。根据 Help Net 对 ATR 锁定版本测量结果的报道:

语料库(锁定版本)             召回率    含义
-----------------------------  --------  ----------------------------------------
garak「真实环境」越狱          98.0%     已知、结构化的载荷:可检出
garak(全部探测族)            38.5%     攻击空间一旦扩大:大多数漏过
hackaprompt                    66.0%     混合的人工构造攻击:部分检出
AdvBench / HarmBench           1.3 / 2.5%  学术对抗集:近乎为零
JailbreakBench                 5.0%
PromptBench / PromptInject     0.0%      改写 / 语义化攻击:完全盲区

维护者 Adam Lin 直面这一问题:那些低分评估中的每一条规则都通过了自己的真阳性和真阴性测试,但聚合召回率却接近于零。这种分裂是结构性的。正则层只能检出它能表达的东西——固定、结构化的攻击字符串——而对它无法表达的东西视而不见:经过改写和语义重述的载荷。该项目将此记录为覆盖缺口,而非加以掩盖,并建议将 ATR 与凭证代理(credential brokering)、沙箱执行以及对高风险动作的人工复核搭配使用。

为何重要

两件事同时成立,二者对防御者都很重要。

首先,智能体检测终于有了共同语汇。ATR 覆盖 OWASP Agentic Top 10 的 10/10 类别,并声称覆盖 85 项 SAFE-MCP 技术中的 78 项(91.8%),单条规则引用了 Microsoft Semantic Kernel、Spring AI、LiteLLM 和 Claude Code 中的真实 CVE。该格式已投入生产:微软的 Agent Governance Toolkit 每周自动同步一个 ATR 规则包,思科 AI Defense 在其 skill-scanner 中运行一个,CIRCL 的 MISP 合并了一个威胁情报集群,Gen Digital(Norton、Avast 和 AVG 的母公司)也合并了一个规则包。一种厂商中立、机器可读、被多个《财富》500 强工具消费的格式,相比每个团队各自编写无文档的黑名单,是实实在在的进步。

其次,召回率表是一记警钟:不要把模式匹配器当作边界。已知越狱上 98%、改写攻击上 0%,这是各处正则检测的共同特征——对见过的攻击表现出色,对新颖攻击完全失明。能够重述措辞的攻击者——也就是大多数攻击者——可绕过规则。正确的思维模型是先天免疫:快速、廉价、对已知模式覆盖广,且明确不能替代那些更慢的语义防御和架构防御——后者才能捕获未知。

防御措施

ATR 是一个检测层。把它作为纵深防御的一个输入来部署,而不是当作那堵墙。

  1. 在重要事件上运行基于规则的检测。 将 ATR(或任何符合规范的引擎)接入,检查 LLM 的输入/输出、工具调用参数以及 SKILL.md/技能安装事件。它廉价、快速,能拦下大量结构化攻击——切实降低噪音。

  2. 假设正则层可被绕过,并在其后做好架构。 将检测与凭证代理、沙箱执行和窄作用域令牌结合,使规则漏过的注入仍落在受限的爆炸半径内。这正是维护者本人的建议。

  3. 让高影响动作以人工或策略批准为前提。 不可逆或敏感的步骤——发送数据、写入生产、执行代码——不应依赖某个模式是否触发。检测负责提示;由人或策略引擎确认。

  4. 为改写缺口增加一个语义层。 在正则得分为 0%(PromptBench、PromptInject)之处,基于 LLM 或基于嵌入的分类器是互补的控制。用规则覆盖 95% 的已知流量,用语义层覆盖新颖的长尾。

  5. 盯住基准,而非标题。 评估任何智能体安全产品时,应索要按语料库锁定版本的召回率精确率——正是 ATR 所公布的。仅凭一句「拦截提示注入」而无按语料库的拆分,是无法证伪的。

  6. 把误报反馈回去。 该格式的价值随社区调优而复利增长。为召回率而非精确率优化的规则会在你的负载上误触发;把这些反馈回去,正是让共享标准变好的途径。

现状

项目来源日期备注
ATR 进入生产(报道)Help Net Security2026-06-03400+ 条规则;「面向 AI 智能体的 Sigma」
首个公开版本(v0.1.0)GitHub2026-03-0929 条规则,RFC 草案,MIT 许可证
garak「真实环境」召回率ATR 锁定版本2026-06已知结构化越狱上 98.0%
garak(全部族)/ PromptBenchATR 锁定版本2026-0638.5% / 0.0%——改写缺口
OWASP Agentic Top 10 覆盖ATR2026-0610/10 类别;SAFE-MCP 78/85(91.8%)
生产采用方Help Net、项目站点2026-04 → 2026-06Microsoft AGT、Cisco AI Defense、MISP/CIRCL、Gen Digital

结论不是「ATR 没用」——对于它被设计来捕获的攻击,它确实能捕获,而一个开放、共享的规则格式早该出现。结论是:它自身诚实的基准测试替你划清了边界。基于规则的检测是智能体防御中快速、廉价的内层,而贯穿其中的、形如改写的那个洞,恰恰是你的沙箱、凭证作用域收窄和人工把关必须发挥作用的地方。

Sources