loading…
Search for a command to run...
loading…
A Model Context Protocol server that exposes a hospital-oriented web application firewall engine for AI assistants. It enables request inspection against curate
A Model Context Protocol server that exposes a hospital-oriented web application firewall engine for AI assistants. It enables request inspection against curated security rules and provides tools for rule management and security testing.
English | 中文
医院 Web 应用防火墙 MCP 服务器,为 AI 助手提供 WAF 规则检测能力。支持 SQL 注入、XSS、命令注入、路径遍历检测,内置医院场景专项规则。
# 克隆仓库
git clone https://github.com/12211725-star/hospital-waf-mcp.git
cd hospital-waf-mcp
# 安装依赖
pip install -r requirements-mcp.txt
在 MCP 客户端配置文件中添加:
{
"mcpServers": {
"hospital-waf-mcp": {
"command": "python",
"args": ["-m", "waf_mcp"],
"env": {
"WAF_MCP_LOG_LEVEL": "INFO"
}
}
}
}
{
"mcpServers": {
"hospital-waf-mcp": {
"command": "docker",
"args": ["run", "--rm", "-i", "hospital-waf-mcp"],
"env": {
"WAF_MCP_LOG_LEVEL": "INFO"
}
}
}
}
export WAF_MCP_TRANSPORT=http
export WAF_MCP_HOST=0.0.0.0
export WAF_MCP_PORT=8000
python -m waf_mcp
MCP 端点:http://<host>:8000/mcp
健康检查:GET /health
在 Claude / Cursor / 其他 MCP 客户端中:
请帮我检测这个请求是否有安全问题:
URL: https://example.com/search?q=1' OR '1'='1
AI 会调用 waf_check_request 工具,返回:
[
{
"rule_id": "sqli-001",
"category": "SQL Injection",
"severity": "high",
"matched": "1' OR '1'='1",
"description": "检测到 SQL 注入特征"
}
]
检测这个 POST 请求的 body:
<script>alert('xss')</script>
当前 WAF 引擎加载了多少规则?
我需要对一个请求进行安全检测,
URL 是 https://hospital.example.com/api/patient?id=1 UNION SELECT,
请帮我分析是否存在攻击特征。
我刚刚更新了 WAF 规则文件,
请帮我重新加载规则并确认加载成功。
请运行 WAF 引擎自检测试,
确认 SQL 注入和 XSS 检测功能正常。
帮我检测这个可疑请求的完整参数:
URL: https://api.hospital.com/query
Method: POST
Body: {"filter": "'; DROP TABLE users; --"}
Headers: {"Content-Type": "application/json"}
| 工具 | 描述 | 参数 |
|---|---|---|
waf_check_request |
WAF 请求检测 | url: 请求URL, method: HTTP方法, headers: 请求头, body: 请求体, cookies: Cookie |
waf_rule_stats |
规则统计 | 无参数 |
waf_reload_rules |
热重载规则 | 无参数 |
waf_run_self_tests |
自检测试 | 无参数 |
| 变量 | 说明 | 默认值 |
|---|---|---|
WAF_MCP_TRANSPORT |
传输协议 (stdio/http/sse) | stdio |
WAF_MCP_HOST |
HTTP 监听地址 | 127.0.0.1 |
WAF_MCP_PORT |
HTTP 监听端口 | 8000 |
WAF_MCP_LOG_LEVEL |
日志级别 | INFO |
WAF_RULES_FILE |
规则文件路径 | waf_mcp/rules/waf_rules.mcp.json |
| 风险类型 | 严重程度 | 检测条件 |
|---|---|---|
| UNION 注入 | High | UNION SELECT 等 |
| 布尔盲注 | High | AND/OR 布尔表达式 |
| 时间盲注 | High | SLEEP/BENCHMARK 等 |
| 报错注入 | High | EXTRACTVALUE/UPDATEXML 等 |
| 堆叠查询 | High | 分号分隔多条 SQL |
| 风险类型 | 严重程度 | 检测条件 |
|---|---|---|
| script 标签 | High | <script> 标签注入 |
| 事件处理器 | High | onclick/onerror 等 |
| JavaScript URI | Medium | javascript: 协议 |
| SVG 注入 | Medium | <svg onload> 等 |
| 风险类型 | 严重程度 | 检测条件 |
|---|---|---|
| Unix 命令注入 | Critical | ; | & $ ` 管道连接 |
| Windows 命令注入 | Critical | & | ^ 命令连接 |
| 危险命令 | Critical | cat/ls/wget/curl 等 |
| 风险类型 | 严重程度 | 检测条件 |
|---|---|---|
| 目录穿越 | High | ../ 路径穿越 |
| URL 编码绕过 | High | %2e%2e/ 等编码 |
| 双重编码绕过 | High | %252e%252e/ 等 |
| 系统类型 | 关键词 |
|---|---|
| HIS | 医院信息系统、门诊、住院、挂号 |
| PACS | 影像、DICOM、放射 |
| LIS | 检验、实验室、生化 |
| RIS | 放射信息系统、影像诊断 |
| EMR | 电子病历、病程记录 |
git clone https://github.com/12211725-star/hospital-waf-mcp.git
cd hospital-waf-mcp
pip install -e .
# 运行测试
python scripts/run_functional_tests.py
# 本地运行
python -m waf_mcp
hospital-waf-mcp/
├── waf_mcp/ # MCP 服务包
│ ├── __init__.py
│ ├── __main__.py
│ ├── config.py
│ ├── server.py
│ ├── version.py
│ ├── waf_engine.py
│ └── rules/
│ └── waf_rules.mcp.json
├── scripts/ # 脚本工具
├── modelscope.yaml # 魔搭配置
├── mcp.json # MCP 元数据
├── mcp_config.json # MCP 客户端配置
├── pyproject.toml # Python 项目配置
└── README.md
MIT License
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"hospital-waf-mcp": {
"command": "npx",
"args": []
}
}
}