Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

一个基于sqlmap API的高并发SQL注入漏洞扫描框架,支持多文件处理、结果存储、报告生成和数据可视化。

License

Notifications You must be signed in to change notification settings

fanwin/SqlmapAuto

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

9 Commits

Repository files navigation

SQL注入自动化扫描框架

Python Docker License Status

一个基于sqlmap API的高并发SQL注入漏洞扫描框架,支持多文件处理、结果存储、报告生成和数据可视化。

快速开始Docker部署使用指南配置说明架构文档

✨ 核心特性

  • 🔥 高并发扫描: 多线程并发扫描,支持大量目标批量处理
  • 📁 多文件支持: 目录扫描、通配符匹配、并行文件处理
  • 💾 数据持久化: SQLite数据库存储,支持查询和统计
  • 📊 可视化报告: 交互式HTML报告,图表展示扫描结果
  • 🐳 容器化部署: 完整的Docker支持,一键部署
  • ⚡ 智能优化: 自动批处理、目标去重、优先级调度

🚀 快速开始

Docker部署(推荐)

# 1. 克隆项目
git clone <repository-url>
cd SqlmapAuto
# 2. 启动所有服务
docker-compose --profile web up -d
# 3. 访问服务
# SQLMap API: http://localhost:8775
# Web界面: http://localhost:8080

本地部署

# 1. 安装依赖
pip install -r requirements_sqlmap.txt
# 2. 启动SQLMap API
python sqlmapproject/sqlmapapi.py -s -H 127.0.0.1 -p 8775
# 3. 创建示例目标
python main.py --create-sample -t targets/sample.yaml
# 4. 执行扫描
python main.py -t targets/sample.yaml -w 5

🐳 Docker 部署

部署模式

模式 命令 说明
完整部署 docker-compose --profile web up -d API + 扫描器 + Web界面
仅API docker-compose up -d sqlmap-api 只启动API服务
扫描模式 docker-compose --profile scanner up -d API + 扫描器
报告模式 docker-compose --profile report up -d 只生成报告

管理命令

# 使用Makefile
make dev # 开发环境
make prod # 生产环境
make scanner # 扫描模式
make logs -f # 查看日志
make status # 查看状态
# 使用脚本
./scripts/deploy.sh start # 启动服务
./scripts/health-check.sh # 健康检查
./scripts/backup.sh # 数据备份

详细文档

📖 使用指南

基础扫描

# 单文件扫描
python main.py -t targets/sample.yaml
# 多文件扫描
python main.py -t targets/ -w 5
# 预览扫描计划
python main.py -t targets/ --dry-run
# 批量扫描
python main.py -t targets/ -w 5 --batch-size 50 --max-targets 200

高级功能

# 优先级扫描
python main.py -t targets/ --priority-filter high
# 生成报告
python main.py --generate-report-only
# 测试连接
python main.py -t targets/ --test-connection
# 清理数据库
python main.py --cleanup-db 30

⚙️ 配置说明

环境变量

变量名 默认值 说明
SQLMAP_API_HOST 127.0.0.1 API服务器地址
SQLMAP_API_PORT 8775 API服务器端口
MAX_WORKERS 5 最大并发数
DB_PATH sqlmap_scan_results.db 数据库路径
REPORT_DIR reports 报告目录
LOG_LEVEL INFO 日志级别

目标配置

targets:
 - url: "http://example.com/page.php?id=1"
 description: "测试目标"
 priority: "high" # high/normal/low
 level: 2 # 1-5
 risk: 2 # 1-3
 method: "GET" # GET/POST
 timeout: 1800 # 超时时间(秒)
 headers:
 User-Agent: "Mozilla/5.0..."

📊 报告功能

报告类型

  • HTML报告: 交互式可视化报告
  • 统计图表: 漏洞分布、扫描状态、时间趋势
  • 详细结果: 漏洞详情、payload信息
  • 导出功能: 支持多种格式导出

报告生成

# 生成HTML报告
python main.py --generate-report-only
# 指定报告名称
python main.py --generate-report-only --report-name my_report.html

🔧 命令行参数

基础参数

参数 说明 默认值
-t, --targets 目标配置文件 必需
-w, --workers 并发工作线程数 5
-b, --batch-size 批处理大小 自动
--api-host API服务器地址 127.0.0.1
--api-port API服务器端口 8775

高级参数

参数 说明
--dry-run 预览扫描计划
--test-connection 测试API连接
--generate-report-only 仅生成报告
--cleanup-db 清理数据库
--max-targets 最大目标数量
--priority-filter 优先级过滤

🏗️ 系统架构

graph TB
 subgraph "用户接口层"
 CLI[命令行接口]
 WEB[Web界面]
 end
 
 subgraph "核心业务层"
 SCANNER[扫描器]
 API[SQLMap API客户端]
 CONCURRENCY[并发管理器]
 end
 
 subgraph "数据处理层"
 DB[数据库管理器]
 REPORT[报告生成器]
 VIZ[数据可视化器]
 end
 
 CLI --> SCANNER
 SCANNER --> API
 SCANNER --> CONCURRENCY
 SCANNER --> DB
 SCANNER --> REPORT
 REPORT --> VIZ
 API --> SQLMAP[SQLMap API]
Loading

📁 项目结构

SqlmapAuto/
├── main.py # 主程序入口
├── config.py # 配置管理
├── sqlmap_api_client.py # SQLMap API客户端
├── concurrency_manager.py # 并发管理
├── db_manager.py # 数据库管理
├── report_generator.py # 报告生成
├── visualization.py # 数据可视化
├── file_processor.py # 文件处理
├── optimization_config.py # 扫描优化
├── targets/ # 目标配置文件
├── reports/ # 扫描报告
├── templates/ # 报告模板
├── scripts/ # 管理脚本
├── docker-compose.yml # Docker编排
├── Dockerfile # Docker镜像
└── requirements_sqlmap.txt # 依赖列表

🛠️ 开发指南

环境要求

  • Python 3.8+
  • Docker 20.10+ (可选)
  • 2GB+ RAM
  • 1GB+ 磁盘空间

开发模式

# 启动开发环境
make dev
# 运行测试
make test
# 代码格式化
make format
# 构建镜像
make build

📚 文档

🤝 贡献

欢迎提交Issue和Pull Request!

  1. Fork 项目
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 打开Pull Request

📄 许可证

本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。

⚠️ 免责声明

本工具仅用于授权的安全测试。使用者需要确保:

  1. 获得目标系统的明确授权
  2. 遵守相关法律法规
  3. 不得用于非法用途

作者不对使用本工具造成的任何后果承担责任。


如果这个项目对你有帮助,请给个 ⭐ Star!

About

一个基于sqlmap API的高并发SQL注入漏洞扫描框架,支持多文件处理、结果存储、报告生成和数据可视化。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

AltStyle によって変換されたページ (->オリジナル) /