从 YARA 模式匹配到 LLM 语义分析,拆解 AI Registry + Cisco AI Defense 的三层扫描机制。
背景
MCP(Model Context Protocol)自 2024 年底发布以来,采用速度远超预期。企业环境中,几十甚至上百个 MCP Server 并行运行已经不稀奇。2025 年 4 月 A2A(Agent-to-Agent)协议发布后,Agent 之间又多了一条自主通信通道。再加上 Agent Skills 在企业基础设施中不断扩展,AI 组件的治理复杂度已经是量级上的变化。
我最近深入研究了亚马逊云科技和 Cisco 联合推出的安全扫描方案,这篇把技术架构和扫描机制拆解清楚。
问题定义
先把问题框架理清。企业在规模化部署 AI Agent 时,面临三个结构性安全缺口:
1. 可见性缺口
各团队独立接入 MCP Server 和 A2A Agent,跨云和本地基础设施分散部署。安全团队缺乏集中视角,无法回答基本问题:当前有多少 AI 组件在运行?它们访问了哪些资源?
2. 审核速度缺口
传统安全审核流程是周级的,AI Agent 部署节奏是天级甚至小时级的。这个速度差产生两种后果:绕过审核(安全风险)或阻塞部署(效率损失)。
3. 合规审计缺口
SOX、GDPR 等合规框架要求完整审计追踪。但自主运行的 AI Agent 的工具使用记录和数据访问记录,很多时候根本没有收集。
架构设计
方案由两个核心组件构成:
AI Registry(控制面)
亚马逊云科技支持的开源项目,GitHub 仓库:agentic-community/mcp-gateway-registry。
核心职责:
- 统一注册所有 MCP Server、A2A Agent 和 Agent Skills
- 提供发现机制(REST API 兼容 Anthropic 官方 MCP Registry 规范)
- 存储扫描结果(数据库 + UI + API 三种访问方式)
- 管理组件状态(enabled / disabled / security-pending)
- 支持联邦——可以和其他 MCP 环境互通
Cisco AI Defense(扫描层)
提供三个独立扫描器和一套集成框架:
AI Registry(注册 + 控制)│├── Cisco MCP Scanner├── Cisco A2A Scanner└── Cisco Skills Scanner│扫描触发方式:├── 注册时自动触发├── Cron Job 定期全量扫描└── 按需扫描单个组件
三层扫描机制详解
这是整个方案的技术核心。三层扫描不是简单的串联,而是各自覆盖不同威胁类型:
第一层:YARA 分析器
原理: 基于 YARA 规则引擎做静态模式匹配。
检测范围:
- SQL 注入模式(如
SELECT * FROM users WHERE id = ${input}) - 命令注入(如
os.system(user_input)) - 硬编码凭证(如
api_key = "sk-xxxxx")
特点: 速度快、确定性高、误报率低。适合作为第一道筛网过滤已知威胁模式。
局限: 只能匹配已知模式,对变体和新型攻击无能为力。
第二层:LLM 分析器
原理: 调用 Amazon Bedrock 上的模型,对工具描述、Agent 行为声明和能力定义做语义级分析。
检测范围:
- Prompt 注入(写在 tool description 里的隐蔽 payload)
- 数据泄露端点(正常描述的接口实际外传数据)
- SSRF 模式
- 行为意图与描述不一致的情况
技术细节: 这层不是简单地让 LLM "看一眼",而是用结构化的分析 prompt,让模型逐项检查工具定义的每个字段。语义理解能力让它可以发现规则匹配遗漏的变体。
局限: 有调用延迟和成本(Bedrock 按量计费)。模型本身也可能有误判。
第三层:Cisco AI Defense 专有扫描器
三个扫描器各有分工:
MCP Scanner:
- 深度分析 tool description 和 schema 定义
- 结合 Cisco 威胁情报库做代码级分析
A2A Scanner:
分析 Agent Card 元数据,具体检测项:
- 身份伪装(Agent A 声称是 Agent B)
- 元数据字段中的 Prompt 注入
- 硬编码凭证
- 数据泄露端点(外传数据的 URL 模式)
- SSRF 模式
- A2A 协议规范合规性违规
结果按严重程度四级分类:LOW → MEDIUM → HIGH → CRITICAL。
Skills Scanner:
- 检测 Agent Skills 中的 Prompt 注入
- 数据泄露检测
- 恶意代码模式识别
自动阻断与审核机制
扫描发现问题后的处理流程:
检测到漏洞↓
组件状态 → disabled
标签 → security-pending↓
生成详细安全报告
(含漏洞类型、严重程度、具体位置)↓
通知管理员↓
管理员审核 → 放行 / 永久禁用
默认策略是阻断。这对于企业环境是正确的选择——误报可以通过审核恢复,但漏报可能造成不可逆损失。
下游集成
安全扫描不是孤立系统,需要和企业已有安全运维体系打通:
- ServiceNow:自动创建工单,触发标准响应流程
- Slack:高严重度发现实时推送通知
- SIEM 系统(Splunk / Datadog):安全事件数据转发,与其他事件关联分析
- 合规仪表盘:生成摘要报告,满足审计要求
所有集成通过 Registry API 实现。
部署路径
方案一:开源自建
- 部署 AI Registry(
agentic-community/mcp-gateway-registry) - 配置 Cisco AI Defense 扫描器(MCP/A2A/Skills 三个扫描器均开源)
- 设置 Cron Job 做定期全量扫描
- 通过 API 对接 ServiceNow/Slack/SIEM
配置文档:https://github.com/agentic-community/mcp-gateway-registry/blob/main/docs/security-scanner.md
方案二:AWS Agent Registry 托管服务
使用亚马逊云科技的 AWS Agent Registry,提供全托管的集中资产目录,支持审批工作流和语义发现。
在 CI/CD 流水线中集成 Cisco AI Defense 扫描,资产发布到 Registry 之前先过安全检查。
示例代码:https://github.com/awslabs/agentcore-samples/tree/main/01-tutorials/10-Agent-Registry/01-advanced/admin-approval-workflow
我的分析
这套方案的设计哲学很清晰:把安全扫描从人工流程变成自动化基础设施。
技术亮点:
- 三层扫描互补性好——规则匹配抓已知威胁,语义分析抓变体和新型攻击,威胁情报抓高级威胁
- 默认阻断策略符合企业安全要求
- API 优先设计,和现有体系集成成本低
- 开源为主,可审计、可定制
需要关注的点:
- AI Registry 本身的高可用——它是所有 AI 组件的注册入口,挂了影响全局
- LLM 分析的成本控制——大规模组件扫描时 Bedrock 调用费用需要评估
- 规则库和模型的更新频率——威胁形态在变化,扫描能力也需要跟着迭代
- Cron Job 的扫描间隔设置——太频繁浪费资源,太稀疏有窗口期
总的来说,如果你的企业正在规模化部署 MCP Server 和 A2A Agent,这套方案值得认真评估。安全治理不能靠人力堆,得靠自动化基础设施。
参考
- AI Registry 源码:https://github.com/agentic-community/mcp-gateway-registry
- 安全扫描配置指南:https://github.com/agentic-community/mcp-gateway-registry/blob/main/docs/security-scanner.md
- Cisco MCP Scanner:https://github.com/cisco-ai-defense/mcp-scanner
- Cisco A2A Scanner:https://github.com/cisco-ai-defense/a2a-scanner
- Cisco Skills Scanner:https://github.com/cisco-ai-defense/skill-scanner
- AWS Agent Registry 集成示例:https://github.com/awslabs/agentcore-samples/tree/main/01-tutorials/10-Agent-Registry/01-advanced/admin-approval-workflow
- 原始博文:https://aws.amazon.com/blogs/machine-learning/securing-ai-agents-how-aws-and-cisco-ai-defense-scale-mcp-and-a2a-deployments/
