你搭好了一个 AI Agent,上线前想测测它安不安全。问题来了:用哪个工具?
garak?PyRIT?还是新冒出来的 AI-Infra-Guard?
这三个名字你可能都见过,但它们到底分别测什么、怎么用、该不该用——尤其是,如果你要测的不是一个纯 LLM 对话机器人,而是一个带工具、带 MCP、能执行代码的真实 AI Agent——区别就大了。
这篇文章一次性拆清楚。
一句话定位
先把三个工具的核心身份说清楚,方便你快速对号入座:
- garak — LLM 漏洞扫描器。像 nmap 之于网络,它扫的是模型本身的安全漏洞。
- PyRIT — AI Red Teaming 对话工厂。自动化生成攻击对话,帮你找到生成式 AI 系统的安全边界。
- AI-Infra-Guard — AI 全栈攻击面扫描平台。从基础设施到 MCP 服务器到 Agent Skills 到模型,它全部覆盖。
garak:LLM 的「漏扫」
| 数据点 | 值 |
|---|---|
| 作者/维护者 | NVIDIA(原 Leon DZ) |
| GitHub Stars | 9,200 ⭐ |
| Commits | 4,611 |
| 许可证 | Apache 2.0 |
| 维护状态 | ✅ 活跃(11 小时前提交) |
garak 的全称是 Generative AI Red-teaming & Assessment Kit。它是整个 AI 安全评测生态里最老牌的工具之一——从 Leon DZ 的个人项目起步,2025 年被 NVIDIA 收购,现在是 NVIDIA AI Red Team 的核心工具。
核心设计理念:garak 的模型和 nmap 非常像——它用「probe(探针)」生成各种攻击输入,用「detector(检测器)」判断模型响应是否暴露了漏洞。你有 100+ 个 probe 可用,覆盖:
- Prompt Injection — 各种编码变体的注入尝试
- Jailbreak — 经典越狱提示
- Data Leakage — 模型是否会泄露训练数据或系统 prompt
- Hallucination — 模型是否胡说八道
- Toxicity — 生成有害内容的倾向
- Encoding Attacks — 通过不同编码绕过安全过滤
- Continuation — 模型对危险开头的延续倾向
- Malware Generation — 是否生成恶意代码
使用体验:
pip install garak
garak --model_type openai --model_name gpt-4
一行命令,跑全部 probe。输出是一份按 probe 分类的 pass/fail 报告。CI 友好——直接集成到 pipeline 里做回归测试。
覆盖的局限:
- ✅ 模型层安全(prompt injection, jailbreak, hallucination)
- ❌ Agent 行为层(multi-turn tool calling 安全检查)
- ❌ MCP 服务器安全
- ❌ Agent Skills / 插件供应链
- ❌ AI 基础设施(vLLM / Ollama 等服务的已知 CVE)
garak 的定位非常清晰:它是测模型的,不是测 Agent 的。
PyRIT:AI Red Teaming 的「对话工厂」
| 数据点 | 值 |
|---|---|
| 作者/维护者 | Microsoft AI Red Team |
| GitHub Stars | 4,400 ⭐ |
| Commits | 1,931 |
| 许可证 | MIT |
| 维护状态 | ✅ 活跃(3 小时前提交) |
PyRIT(Python Risk Identification Tool)是微软 AI Red Team 在 2024 年开源的自动化红队框架。它和 garak 最大的区别是:它不测模型的漏洞,它测交互系统的安全边界。
核心设计理念:PyRIT 把 AI Red Teaming 看作一个多轮对话过程。它不是发一个 prompt 看是否越狱,而是模拟一个攻击者与 AI 系统逐一对话,逐步探索安全边界。
它的核心组件:
- Attack Strategy:内置多种多轮攻击策略——Crescendo(逐步升级)、TAP(Tree of Attacks with Pruning)、Skeleton Key(万能钥匙)
- Target:支持 OpenAI、Azure、Anthropic、HuggingFace、自定义 HTTP 端点
- Scoring:内置 scoring engine 对模型响应评级(harmful / safe / unknown)
- Converter:prompt 转换器(编码、脱敏、翻译等变体生成)
- Frontend UI:2026 年新增的 Web UI,支持人工主导的 Red Teaming
和能力范围:
- ✅ LLM 对话安全(多轮攻击、越狱、偏见)
- ✅ 多模态(文本、图像、音频、视频——2026 新增)
- ✅ CI 集成(作为 Python 库导入)
- ❌ Agent 行为层(tool calling 安全检查)
- ❌ MCP 服务器安全
- ❌ Agent Skills / 插件供应链
- ❌ AI 基础设施漏洞扫描
⚠️ 注意:媒体上流传的「微软 2026 年 3 月归档了 PyRIT」指的是 Azure/PyRIT 组织下的一个 fork/变体,并非主仓库 microsoft/pyrit。主仓库最新提交是 3 小时前,版本已到 v1.1.0,新增了多模态支持和 Web UI。微软一直用它在内部做 Copilot 和 Bing Chat 的 Red Teaming。
AI-Infra-Guard:AI 全栈攻击面扫描
| 数据点 | 值 |
|---|---|
| 作者/维护者 | 腾讯朱雀实验室(Tencent Zhuque Lab) |
| GitHub Stars | 6,200 ⭐ |
| Commits | 1,868 |
| 许可证 | Apache 2.0 |
| 维护状态 | ✅ 活跃(2 小时前提交) |
| 学术论文 | arXiv:2606.31227「Securing the AI Agent: A Unified Framework for Multi-Layer Agent Red Teaming」 |
AI-Infra-Guard 是这个生态里最晚出现但覆盖面最广的工具。它来自腾讯朱雀实验室,2026 年 6 月发布,9 月已经冲到 6,200 星。
核心设计理念:AI-Infra-Guard 不是从「测模型」出发,而是从「Agent 攻击面是分层(stratified)」这一观察出发。它提出一个叫 Layer-Paradigm Matching 的概念——攻击面分四层,每层用不同的检测范式:
| 层 | 攻击面 | 检测范式 | 具体能力 |
|---|---|---|---|
| L1 | 基础设施 | 确定性规则匹配 | 扫描 75+ AI 组件(vLLM、Ollama、ComfyUI 等),1,400+ 漏洞规则(CVE) |
| L2 | 协议/工具 | LLM 驱动语义审核 | MCP Server 审计、Agent Skills 供应链扫描(14 类风险) |
| L3 | Agent 行为 | 多轮黑盒 Red Teaming | Agent 行为安全测试(工具调用、权限绕过、任务劫持) |
| L4 | 模型 | Jailbreak 评测 | 26+ 攻击算子、16 个数据集 |
具体能力模块:
- ClawScan — 基础设施安全扫描(Go 实现,指纹识别 75+ AI 服务)
- Agent Scan — Agent 行为红队测试(多轮对话驱动)
- MCP Server 扫描 — MCP 协议级别安全审计
- Agent Skills 扫描 — 检查插件/技能包的供应链安全(14 类风险模式)
- Jailbreak Evaluation — 26+ 攻击算子,16 数据集
部署体验:
git clone https://github.com/Tencent/AI-Infra-Guard
cd AI-Infra-Guard/cmd/aig ; go build
./aig scan agent --target http://my-agent:8080
Go 单二进制分发,无运行时依赖。子命令风格(scan infra / scan agent / scan mcp / eval jailbreak),每种扫描独立。
覆盖的全面性:
- ✅ 基础设施层(vLLM、Ollama、ComfyUI、Ray 等)
- ✅ MCP 服务器(协议合规性 + 安全审计)
- ✅ Agent Skills(供应链风险检测)
- ✅ Agent 行为(多轮黑盒 Red Teaming)
- ✅ LLM Jailbreak(标准攻击算子)
- ❌ 多模态覆盖(论文聚焦 Agent 安全,非多模态评测)
对比结论:谁适合什么场景
三个工具不是「选一个」的关系——它们覆盖的攻击面几乎不重叠,互补性极强。
场景 1:你在调一个纯文本对话模型,想测 prompt injection 和 jailbreak → 用 garak。一行命令跑 100+ probe,报告清晰,CI 友好。这是 garak 最擅长的领域,其他两个工具在这件事上效率不如它。
场景 2:你们的 AI 产品要上线了,安全团队要做系统级 Red Teaming(多轮攻击、人工分析、协作流程) → 用 PyRIT。有多轮攻击策略(Crescendo、TAP)、有 frontend UI、有 scoring engine。如果你的合规流程需要「记录每次 Red Teaming 会话并生成审计报告」,PyRIT 的框架更完整。
场景 3:你搭了个 AI Agent,带了 MCP 工具、Agent Skills、跑在 vLLM 上,想全面扫一遍 → 用 AI-Infra-Guard。它是唯一一个覆盖基础设施 + MCP + Skills + Agent 行为 + 模型的工具。garak 和 PyRIT 测不到 MCP 服务器有没有漏洞、Agent Skills 有没有供应链风险。
场景 4:你运行着一套生产级 Agent 系统,想纳入持续安全验证(Continuous Security Validation) → 推荐混合方案:
- AI-Infra-Guard 做基础设施 + MCP + Skills 的定期扫描(每周)
- garak 做模型的 regression testing(每次模型更新时跑)
- PyRIT 做定期的深度 Red Teaming session(每月)
写在最后
AI Agent 安全评测工具正在快速分化。garak 守住了「模型漏洞扫描」这个最基础的位置,PyRIT 把 AI Red Teaming 从单轮 prompt 升级为多轮对话工厂,AI-Infra-Guard 则直接改变了游戏规则——它第一次把 Agent 的基础设施、MCP、Skills、行为全部纳入了可扫描的范畴。
我个人的判断是:如果你只测模型,garak 够了;如果你做合规级的 Red Teaming,PyRIT 往前走了半步;但如果你要做真正的 Agent 安全评测,AI-Infra-Guard 的「四层扫描」才是未来方向。
这不是一个取代另一个的关系。三者的互补性远大于重叠度。一个成熟的安全团队,应该三个都装。
📌 延伸阅读:
- 《NIST AI Agent Red Teaming 指南中文解读:81% 的任务劫持成功率意味着什么?》 — Red Teaming 方法论基础
- 《ClawGuard 源码级解析:eBPF Agent TLS 明文捕获》 — 运行时 Agent 可观测性方案
- 《Agentjacking — 多 Agent 系统的级联攻击》 — Agent 间攻击面分析
- 《Lasso Security MCP Gateway 技术拆解》 — MCP 网关层面防御方案