Kousiksamanta1/Bug-Hunter-Pro

GitHub: Kousiksamanta1/Bug-Hunter-Pro

一款基于 Flask 的授权优先漏洞评估仪表板,整合 Web/网络/API 扫描、侦察、定期监控与报告生成,服务于安全研究与漏洞赏金工作流。

Stars: 0 | Forks: 0

# Bug Hunter Pro ![Python 3.9+](https://img.shields.io/badge/Python-3.9%2B-3776AB) ![Flask](https://img.shields.io/badge/Flask-Dashboard-111111) ![License: MIT](https://img.shields.io/badge/License-MIT-green) ![Platform](https://img.shields.io/badge/Platform-Windows%20%7C%20macOS%20%7C%20Linux-blue) Bug Hunter Pro 是一款授权优先的漏洞评估仪表板,适用于 Web、网络和 API 测试。它在一个本地 Flask 应用中整合了并行扫描器、侦察辅助工具、实时扫描进度、发现结果分类、定期监控、告警以及 PDF/HTML 报告生成功能。 ## 截图 ![Bug Hunter Pro 仪表板](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/627a5f7d1d080302.png) ![Bug Hunter Pro 扫描工作流](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/b8d1a03ce4080308.png) ## 功能 - Web 检查涵盖 headers、TLS、点击劫持、反射型 XSS、SQL 错误信号、CORS、敏感文件、管理路径以及 `robots.txt`。 - 网络检查涵盖常见端口、Nmap 服务发现、NVD CVE 富化、弱 SSH/TLS 算法、DNS 记录、AXFR 暴露、WAF 特征以及受限的默认凭据探测。 - API 检查涵盖已发现的 endpoint、缺失的身份验证、速率限制行为、可预测的 ID、JWT 问题和敏感数据模式。 - 侦察模块涵盖子域名、JavaScript endpoint 审查、技术指纹识别、Wayback URL 以及手动 dork 生成。 - 验证辅助工具涵盖盲打 XSS、SQL 注入、SSRF、SSTI、OAuth、XXE、密码重置、会话、IDOR、权限提升和 OOB 回调。 - 基于 SQLite 的扫描历史记录、误报追踪、扫描对比、CSV 导出和报告预览。 - 带有电子邮件和 Slack 告警的定期监控。 - PDF 和独立 HTML 报告。 ## 技术栈 | 领域 | 工具 | |---|---| | 应用 | Python, Flask, Flask-CORS | | HTTP 与解析 | Requests, Beautiful Soup | | 网络 | Nmap, Paramiko, dnspython, Python SSL | | 存储 | SQLite | | 调度 | `schedule`, daemon 线程 | | 报告 | ReportLab, 独立 HTML/CSS/JavaScript | | 仪表板 | 原生 JavaScript, Chart.js, 自定义 CSS | ## 环境要求 - Python 3.9 或更高版本 - 已安装 Nmap 并可在 `PATH` 中使用 - 仅具备对您被授权评估的目标的网络访问权限 安装 Nmap: ``` # macOS brew install nmap # Ubuntu/Debian sudo apt-get update && sudo apt-get install -y nmap # 使用 Chocolatey 的 Windows choco install nmap ``` ## 安装说明 ``` git clone https://github.com/Kousiksamanta1/Bug-Hunter-Pro.git cd Bug-Hunter-Pro python -m venv .venv ``` 激活环境: ``` # macOS/Linux source .venv/bin/activate # Windows PowerShell .venv\Scripts\Activate.ps1 ``` 安装依赖项: ``` python -m pip install --upgrade pip python -m pip install -r requirements.txt ``` ## 配置 从示例模板创建本地 `.env` 文件: ``` # macOS/Linux cp .env.example .env # Windows PowerShell Copy-Item .env.example .env ``` 常用设置: | 变量 | 用途 | |---|---| | `NVD_API_KEY` | 可选的 NVD 密钥,用于提高 CVE 查找限制 | | `VIRUSTOTAL_API_KEY` | 保留用于可选的信誉富化 | | `ALERT_EMAIL` | 用于接收告警通知的电子邮件收件人 | | `SMTP_HOST`, `SMTP_PORT` | SMTP 服务器设置 | | `SMTP_USER`, `SMTP_PASS` | SMTP 凭据 | | `SLACK_WEBHOOK_URL` | Slack 入站 Webhook URL | | `NUCLEI_PATH` | `nuclei` 可执行文件的路径 | | `FLASK_HOST`, `FLASK_PORT` | 仪表板绑定地址和端口。默认为 localhost。 | | `DASHBOARD_API_TOKEN` | 非 localhost 客户端访问 API 所需的 Bearer 或 `X-BugHunter-Token` 值 | | `DB_PATH` | SQLite 数据库路径 | | `REPORT_OUTPUT_DIR` | PDF/HTML 报告输出目录 | | `OOB_HTTP_PORT`, `OOB_DNS_PORT` | 回调接收器的 HTTP 和 DNS 端口 | | `OOB_MAX_BODY_BYTES` | 每个 OOB 事件存储的最大回调请求体 | 请勿将 `.env`、生成的报告和 SQLite 数据库纳入版本控制。 ## 使用说明 启动仪表板: ``` python main.py ``` 启动手动扫描并打开仪表板: ``` python main.py --target example.com --mode manual ``` 运行完整的自动扫描并导出报告: ``` python main.py --target example.com --mode auto --output all ``` 仅运行 API 检查: ``` python main.py --target https://api.example.com --mode auto --scan api --output html ``` 运行定期监控: ``` python main.py --target example.com --mode monitor --schedule 24h ``` 仪表板默认在端口 `5000` 启动,并在需要时回退到下一个可用端口。 ## CLI 选项 | 选项 | 值 | 默认值 | |---|---|---| | `--target` | URL、IP 或域名 | 空 | | `--mode` | `manual`, `auto`, `monitor` | `manual` | | `--output` | `dashboard`, `pdf`, `html`, `all` | `dashboard` | | `--scan` | `web`, `network`, `api`, `all` | `all` | | `--schedule` | `30m`, `24h`, `7d` 等 | `24h` | | `--port` | 仪表板 TCP 端口 | `5000` | | `--recon` | 在扫描前运行侦察模块 | 禁用 | | `--oob` | 启动本地回调接收器 | 禁用 | | `--nuclei` | 在扫描后运行 Nuclei | 禁用 | | `--scope` | 保存的 scope 程序名称 | 空 | ## 仪表板部分 | 部分 | 用途 | |---|---| | 仪表板 | 扫描总数、严重程度计数、图表和最近评估 | | 新建扫描 | 授权扫描设置和实时进度 | | 发现结果 | 漏洞记录、过滤器、证据、修复措施和 CSV 导出 | | 报告 | PDF/HTML 下载和内联预览 | | 历史记录 | 时间线和扫描间对比 | | 监控 | 定期目标和告警历史 | | 侦察 | 被动发现和目标情报 | | 漏洞利用实验室 | 带 scope 检查的授权验证辅助工具 | | 情报 | Scope 管理、Nuclei 运行器和重复研究 | | 设置 | API 密钥、告警、扫描默认值和漏洞赏金安全防护 | ## 漏洞赏金安全 Bug Hunter Pro 包含针对有 scope 限制的漏洞赏金工作的可选安全防护: - 在扫描前要求保存的 scope。 - 将生产环境赏金扫描限制为 Web/API 检查。 - 在安全模式下禁用网络扫描、广泛的子域名枚举、Nuclei 和定期监控。 - 应用研究人员身份识别和请求速率限制。 - 在安全配置文件有要求时,阻止离开起始主机的请求。 在扫描前,请务必核实最新的程序政策。Scope 随时可能发生变更。 ## 报告 CLI 导出和仪表板下载默认写入 `reports/` 目录。报告可能包含敏感的目标数据,分享前应进行审查。 ## 验证 运行基本检查: ``` python -m compileall -q . python - <<'PY' from main import create_app app = create_app() client = app.test_client() assert client.get("/").status_code == 200 assert client.get("/api/stats").status_code == 200 print("Smoke test passed") PY ``` ## 局限性 - 必须单独安装 Nmap。 - 某些检查会发送重复请求或测试 payload。 - 如果在协调的测试计划之外使用,默认凭据探测可能会触发告警或账户锁定。 - 启发式发现的结果可能是误报。 - 本项目不能替代手动安全测试或正式的渗透测试。 ## 贡献 在提交 pull request 之前,请阅读 [CONTRIBUTING.md](CONTRIBUTING.md)。请使用 [SECURITY.md](SECURITY.md) 报告安全问题,而不是使用公开的 issues。 ## 许可证 Bug Hunter Pro 基于 [MIT License](LICENSE) 发布。
标签:CTI, Flask, Python, 字符串匹配, 实时处理, 密码管理, 插件系统, 数据可视化, 无后门, 逆向工具