article
README
🚀 Web 应用渗透测试 MCP
Web 应用渗透测试 MCP 是一款全面的工具,专注于分析 Web 应用程序的安全漏洞,尤其关注业务逻辑层面的安全隐患。它通过系统地爬取、分析应用程序,能识别出常规扫描器难以发现的潜在安全问题。
🚀 快速开始
Web 应用渗透测试 MCP 可以帮助您深入了解 Web 应用程序的业务背景。它通过构建完整的应用程序结构地图,精准识别潜在的安全弱点,特别是业务逻辑实现过程中可能存在的漏洞。
✨ 主要特性
全面发现
- 自动构建整个 Web 应用程序的树形结构,清晰呈现应用全貌。
- 映射所有链接、表单和交互元素,便于掌握应用的交互逻辑。
- 识别输入字段及其类型和预期值,为后续测试提供基础。
认证处理
- 自动检测登录/注销页面,快速定位认证入口。
- 使用凭据身份验证访问受保护区域,模拟真实用户操作。
- 支持基于 Cookie 和 Bearer Token 的身份认证,适应不同的认证机制。
业务逻辑分析
- 识别潜在的 IDOR(不安全直接对象引用)漏洞,防范数据越权访问。
- 检测数学/计算边界情况,避免因计算错误导致的安全问题。
- 映射多步骤工作流,这些工作流可能被篡改,保障业务流程的安全性。
- 发现权限和访问控制问题,确保用户只能访问其授权范围内的资源。
高级输入分析
- 识别输入字段类型(即使未明确定义),提高测试的准确性。
- 根据字段类型生成合适的测试值,有效发现输入验证漏洞。
- 检测可能包含敏感值的隐藏字段,防止敏感信息泄露。
可视化支持
- 使用 DOT 格式创建可视 sitemap(可通过 Graphviz 查看),直观展示应用结构。
- 强调需要更多关注的复杂页面,帮助测试人员聚焦重点。
📦 安装指南
# 克隆仓库
git clone https://github.com/yourusername/web-app-penetration-testing-mcp.git
# 切换到目录
cd web-app-penetration-testing-mcp
# 安装依赖项 - 使用uv
pip install -r requirements.txt
💻 使用示例
目前,other.py 是该工具的升级版本。
基础用法
# 基本使用
python web_app_mcp.py https://example.com
# 带认证的扫描
python web_app_mcp.py https://example.com --username user@example.com --password mysecretpassword
# 创建可视化 sitemap
python web_app_mcp.py https://example.com --visual
# 控制爬取速度和深度
python web_app_mcp.py https://example.com --delay 1.0 --max-pages 200
命令行参数
| 参数 | 描述 |
|------|------|
| url | 目标 Web 应用程序 URL(必填) |
| --username | 带认证扫描的用户名 |
| --password | 带认证扫描的密码 |
| --visual | 生成可视化输出 |
| --delay | 设置爬取延迟(默认 0.0) |
| --max-pages | 设置最大爬取页面数(默认无限制) |
📚 详细文档
工具将输出结果保存为 JSON 文件,内容包括发现的漏洞、安全警告和建议修复措施。
📄 许可证
本项目在 MIT License 下开源 - 详情请参阅 LICENSE 文件。
🤝 贡献
欢迎贡献!请随意提交 Pull Request。
微信扫一扫