razashariff/claw-scanner
GitHub: razashariff/claw-scanner
一款零依赖的开源安全扫描器,专为 MCP 服务器和 AI Agent 应用提供基于 OWASP 标准的自动化安全检测与合规评估。
Stars: 0 | Forks: 0
# Claw Scanner
[](https://github.com/razashariff/claw-scanner/actions/workflows/ci.yml)



针对 MCP 服务器、AI agent 和 Agentic 应用的安全扫描器。根据 OWASP 发布的标准进行测试,包括向 LLM/agent endpoint 发送的实时模型行为探测(prompt 注入、越狱、输出安全)。
## ⚠️ 仅限授权使用
Claw 会发送主动安全测试 payload(prompt 注入、SSRF 探测、越狱尝试、超大输入)。仅扫描您拥有或获得明确书面授权测试的系统。未经许可扫描第三方系统可能是违法的。作者对滥用行为不承担任何责任。
## 功能介绍
Claw Scanner 根据 OWASP 安全标准扫描 AI agent、LLM 和 MCP 服务器实现,并报告每项控制的通过/失败情况及修复建议。它会探测传输层面(MCP 服务器)和模型层面(LLM/agent endpoint)。
## 经过身份验证的目标
真实的 MCP 服务器和 agent endpoint 通常受到身份验证保护。Claw 绝不会通过命令行接收密钥(因为这会通过 shell 历史记录和 `ps` 泄露)。请通过以下两种方式之一提供:
```
# 环境变量(推荐)
CLAW_AUTH="Bearer
" claw scan https://your-mcp-server/mcp
# 或一个 scoped file (chmod 600):{"header":"Authorization","value":"Bearer ","host":"your-mcp-server"}
claw scan https://your-mcp-server/mcp --auth-file creds.json
```
该凭据会绑定到特定主机(仅发送到目标主机,绝不会在重定向时传递给其他主机),在所有控制台和报告输出中均会进行脱敏处理,仅在 transport header 中发送(绝不会出现在 prompt body 或工具参数中),并且会拒绝通过非环回 `http://` 传输。
## AISVS 映射(基于源码验证)
每个 `AISVS-x.y.z` 检查都映射到一个真实、已发布的 AISVS 需求 ID 及其描述。如果任何检查使用了规范中不存在的 ID,构建将会失败(`lib/_aisvs-valid-ids.js`,从 OWASP/AISVS 源码生成)。仅涵盖可在运行时测试的章节:
- **C02 Input Validation** -- 2.1.2, 2.1.3, 2.1.4, 2.1.6
- **C05 Access Control** -- 5.2.1(C05 的大部分内容属于设计阶段,无法进行黑盒测试)
- **C07 Model Behavior** -- 7.3.2
- **C10 MCP Security** -- 10.1.1, 10.1.2, 10.2.1, 10.2.2, 10.2.4, 10.2.5, 10.3.1, 10.3.3, 10.3.4, 10.4.3, 10.4.4, 10.4.5, 10.4.6, 10.4.7
- **C11 Adversarial Robustness** -- 11.1.1(拒绝防护栏),11.1.2(越狱探测),11.2.2(速率限制)
属于设计/数据/治理控制的 AISVS 章节(C01、C03、C04、C06、C08、C09、**C12**)**不可**进行黑盒测试,因此被刻意排除在范围之外。对于无法映射到特定 AISVS 要求但很有用的运行时/红队检查,它们被统一命名为 **`CLAW-RT-*`**,并会明确标记为“非 AISVS 控制”。
## 涵盖的其他标准
- OWASP MCP Top 10、Agentic Apps Top 10、Agentic Skills Top 10
- OWASP MCP Security Cheat Sheet、AI Agent Security Cheat Sheet
## 目标
- 一个 MCP 服务器 URL(自动发现 MCP endpoint;运行 C10 及 MCP 相关检查)
- 一个 LLM / agent endpoint —— Ollama (`/api/chat`) 或 OpenAI 兼容 (`/v1/chat/completions`) 的接口 —— 用于模型行为检查(C02/C07/C11)
仅限 Localhost / 自有目标。
## 安装
```
npm install -g @proofxhq/claw-scanner
```
## 使用说明
```
# 扫描目标 MCP server
claw scan https://target-mcp-server.com
# 仅运行 MCP Top 10 检查
claw scan https://target-mcp-server.com --module mcp
# 生成 HTML 报告
claw scan https://target-mcp-server.com --html
# 输出 JSON 结果
claw scan https://target-mcp-server.com --json
# 仅评估处于或低于某一 assurance level(累积)的 AISVS 检查。
# Levels 是 AISVS 特有的:L1 = baseline,L2 = standard,L3 = high-assurance。
# Non-AISVS 模块(MCP Top 10, Agentic, cheat sheets)无论 --level 如何都会运行。
claw scan https://target-mcp-server.com --level 1
claw scan https://target-mcp-server.com --level 2
claw scan https://target-mcp-server.com --level 3
# 列出所有检查
claw list
# 按 standard 统计检查数
claw count
```
## 模块
| 模块 | 标签 | 检查项 | 来源标准 |
|--------|-----|--------|----------------|
| MCP Top 10 | `mcp` | 43 | OWASP MCP Top 10 2025 |
| AISVS C10 | `aisvs` | 28 | OWASP AISVS 第 10 章 |
| Agentic Apps Top 10 | `agentic` | 30 | OWASP Top 10 for Agentic Applications |
| Agentic Skills Top 10 | `skills` | 22 | OWASP Agentic Skills Top 10 |
| MCP Security Cheat Sheet | `mcp-cs` | 29 | OWASP MCP Security Cheat Sheet |
| AI Agent Security Cheat Sheet | `agent-cs` | 42 | OWASP AI Agent Security Cheat Sheet |
## 输出
终端输出包含每次检查带有颜色区分的通过/失败结果、针对失败项的修复建议,以及一个评级(A-F)和按标准的详细分解。
HTML 报告将所有结果包含在一个独立的文件中。
提供 JSON 输出以便集成到 CI/CD。
## 针对 DVMCP 进行测试
[DVMCP](https://dvmcp.co.uk) 是一个包含 10 个活跃漏洞类别的具有刻意漏洞的 MCP 服务器。可将其用作测试的安全目标:
```
claw scan https://dvmcp.co.uk/mcp
```
## 架构
- **主动检查**:针对实时 MCP endpoint 的 HTTP 探测(身份验证、注入、SSRF、重放、工具投毒、速率限制)
- **被动检查**:针对配置问题、缺失 header、信息泄露、机密暴露的响应分析
零外部依赖。仅限 Node.js。
## 环境要求
- Node.js 18+
## 许可证
Apache License 2.0
## 作者
Raza Sharif / CyberSecAI Ltd
raza@cybersecai.co.uk标签:AI安全, Chat Copilot, CISA项目, DLL 劫持, GraphQL安全矩阵, LNA, MCP, MITM代理, 大语言模型, 安全扫描器, 安全测试, 提示词注入, 攻击性安全, 暗色界面, 自定义脚本