关于 ZAP MCP Server with SQLMap Integration Setup Guide
该仓库提供将 OWASP ZAP 配置为 MCP 服务并配合 SQLMap 进行授权 Web 安全测试的说明与配置文件,包含扫描脚本、自定义规则和结果转交脚本。
主要功能
- 01基于 Docker 配置 ZAP
- 02配置 SQLMap 代理
- 03自定义 ZAP 检测规则
- 04自动扫描表单
- 05扫描脚本与 CI 示例
适用场景
- 01搭建 ZAP 与 SQLMap 授权测试环境
- 02扫描目标网站表单中的漏洞
- 03将 ZAP 发现交由 SQLMap 深入测试
MCP 相关
指南将 OWASP ZAP 配置为 MCP 服务,并说明相关 SQLMap 扫描脚本;但未说明该服务向 MCP 客户端公开哪些工具或资源。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
ZAP MCP 服务与 SQLMap 集成设置指南
本仓库包含使用 OWASP ZAP 作为 MCP(中间人代理)服务并集成 SQLMap,以进行合法安全测试和漏洞评估的设置说明和配置文件。
前提条件
- 系统已安装 Docker
- 具备 Web 安全测试的基础知识
- 拥有系统管理员/root 访问权限
快速设置
1. 克隆此仓库:
git clone https://github.com/UnknownAirtist/zap-mcp-sqlmap-setup.git
cd zap-mcp-sqlmap-setup
2. 运行设置脚本:
chmod +x setup.sh
./setup.sh
3. 启动 ZAP MCP 服务:
docker-compose up -d
这会在 8080 端口启动 ZAP 服务,并在 8090 端口启动 API。
手动设置
1. 安装 OWASP ZAP
你可以使用 Docker 安装 ZAP(推荐):
docker pull owasp/zap2docker-stable
或者从官方网站直接下载。
2. 安装 SQLMap
可以从仓库安装 SQLMap:
git clone --depth 1 https://github.com/sqlmapproject/sqlmap.git
3. 将 ZAP 配置为 MCP 服务:
以守护进程模式启动 ZAP:
docker run -u zap -p 8080:8080 -p 8090:8090 -i owasp/zap2docker-stable zap.sh -daemon -host 0.0.0.0 -port 8080 -config api.disablekey=true
4. 使用 ZAP 设置 SQLMap:
将 ZAP 用作代理来运行 SQLMap:
python sqlmap.py -u "http://target-website.com" --proxy=http://localhost:8080
高级配置
自定义 ZAP 规则
zap-rules 目录包含用于改进 SQL 注入漏洞检测的自定义 ZAP 规则:
- 将
.js文件复制到 ZAP 脚本目录 - 在 ZAP UI 的 Tools > Scripts 下启用这些脚本
SQLMap 集成脚本
sqlmap-scripts 目录包含用于紧密集成的辅助脚本:
zap-sqlmap-bridge.py:将 ZAP 的发现结果转发给 SQLMap,以进行更深入的测试auto-scan.py:自动扫描目标网站上找到的所有表单
使用示例
基本扫描
./scripts/start-scan.sh http://example.com
集成 SQLMap 的完整扫描
./scripts/full-scan.sh http://vulnerable-website.com
持续集成设置
请参阅 ci-example 目录中的 GitHub Actions 和 Jenkins 配置示例。
安全注意事项
⚠️ IMPORTANT:仅在你拥有或获得明确测试许可的系统上使用这些工具。在大多数司法管辖区,未经授权的安全测试属于违法行为。
故障排除
- 查看
logs/zap.log,排查与 ZAP 相关的问题 - 查看
logs/sqlmap.log,排查与 SQLMap 相关的问题 - 如果服务无响应,请确认 8080 和 8090 端口未被其他应用程序占用
许可证
本项目采用 MIT 许可证授权——详情请参阅 LICENSE 文件。
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。