ebuggy84/bss-recon

GitHub: ebuggy84/bss-recon

一款集 19 个扫描模块于一体的开源安全侦察平台,提供攻击面评分、OWASP/MITRE 映射和 PDF 报告生成。

Stars: 0 | Forks: 0

# BSS Recon **专为渗透测试人员、漏洞赏金猎人和安全团队构建的开源安全侦察平台。** BSS Recon 针对目标域名运行 19 个扫描模块——包括被动 OSINT 和主动探测——然后将每个发现映射到 OWASP Top 10 和 MITRE ATT&CK 类别,对整体攻击面进行评分,并生成专业的 PDF 报告。包含一个用于实时监控扫描的 Web dashboard。 由 [Emilio Burgohy](https://github.com/ebuggy84) 构建和维护。 ## 功能 - **19 个扫描模块**,涵盖 DNS、子域名、SSL、WHOIS、Web 探测、JS 分析、WAF 检测等 - 对每个发现进行 **OWASP Top 10 + MITRE ATT&CK 映射** - **攻击面评分** —— 0-100 的综合评分及严重程度细分 - **Web dashboard**,提供实时扫描进度、动画仪表盘、严重程度甜甜圈图和模块状态跟踪 - **PDF + Markdown 报告** —— 带有品牌标识的、可直接交付给客户的评估报告 - **Traffic Analyzer** —— 粘贴 Burp HTTP 历史记录,提取 endpoint,发掘潜在的 IDOR - **Phishing Analyzer** —— 粘贴邮件头,获取 SPF/DKIM/DMARC 判定结果并进行危险信号检测 - **Monitor 模式** —— 计划性重新扫描并带有 diff 跟踪,以检测随时间推移的变化 - **模块化架构** —— 启用/禁用单个模块,仅运行被动扫描或完整的主动扫描 ## 模块 | 模块 | 类型 | 描述 | |--------|------|-------------| | DNS | 被动 | DNS 记录枚举 (A, MX, TXT, NS, SOA) | | WHOIS | 被动 | 域名注册和所有权查询 | | SSL | 被动 | SSL/TLS 证书分析和过期检查 | | Subdomains | 被动 | 通过 Certificate Transparency 发现子域名 | | SubMutate | 主动 | 异步 DNS 变异引擎(500-1000 次查询/秒) | | Wayback | 被动 | 通过 Internet Archive CDX API 发现历史 URL | | VirusTotal | 被动 | 域名/IP 信誉和威胁情报(需要 API key) | | Shodan | 被动 | 暴露的服务和端口查询(需要 API key) | | Hunter.io | 被动 | 电子邮件地址发现(需要 API key) | | Google Dorks | 被动 | 用于人工调查的 OSINT 查询生成 | | Nmap | 主动 | 端口扫描和服务检测 | | Nuclei | 主动 | 漏洞模板扫描 | | Web Probe | 主动 | 带有智能 404 指纹识别的路径/文件发现 | | WAF Detect | 主动 | Web application firewall 识别 | | Tech Detect | 主动 | 技术栈指纹识别 | | Headers | 主动 | HTTP 安全头分析 | | JS Analyzer | 主动 | JavaScript 密钥和 endpoint 提取 | | Diff Tracker | 分析 | 扫描间的变更检测 | | Score | 分析 | 综合攻击面评分 (0-100) | ## 快速开始 ### 前置条件 - Python 3.10+ - Git ### 安装说明 ``` git clone https://github.com/ebuggy84/bss-recon.git cd bss-recon python3 -m venv venv source venv/bin/activate pip install -r requirements.txt cp config.yaml.example config.yaml ``` ### 添加 API Keys(可选) 编辑 config.yaml 并添加您的密钥以增强扫描功能: ``` shodan: api_key: "your-shodan-key" virustotal: api_key: "your-virustotal-key" hunter: api_key: "your-hunter-key" ``` 如果未配置密钥,需要 API key 的模块将自动优雅跳过。该工具开箱即用,支持不需要密钥的被动模块。 ### 运行您的首次扫描 ``` # 被动扫描并生成 report python -m bssrecon scan example.com -r # 从扫描结果生成 PDF report python -m bssrecon report example.com -f pdf # 监控模式 - 每 6 小时重新扫描并跟踪变更 python -m bssrecon scan example.com -r --monitor 6 ``` ### 启动 Web Dashboard ``` source venv/bin/activate cd bss-dashboard/backend && uvicorn main:app --host 0.0.0.0 --port 8000 & cd ../frontend && python3 -m http.server 3000 --bind 0.0.0.0 & ``` 在浏览器中打开 http://localhost:3000。 ## Dashboard Web dashboard 提供实时扫描监控,包含: - 每个模块的动画状态仪表盘(从 pending 到 running 再到 done) - 攻击面评分仪表盘(0-100,带颜色区间) - 严重程度细分甜甜圈图(Critical/High/Medium/Low/Info) - 带有 OWASP 和 MITRE ATT&CK 映射的发现表 - JSON 和 PDF 导出 - 用于 IDOR 候选检测的 Traffic Analyzer - 用于邮件头分析的 Phishing Analyzer ## 项目结构 ``` bss-recon/ ├── bssrecon/ │ ├── core/ # 19 scanning modules │ ├── reporting/ # PDF and Markdown report generators │ ├── frameworks/ # OWASP/MITRE mapping definitions │ ├── tools/ # Utility tools │ ├── utils/ # Helper functions │ ├── wordlists/ # Custom wordlists for subdomain mutation │ ├── cli.py # CLI entry point and orchestrator │ └── config.py # Configuration loader ├── bss-dashboard/ │ ├── backend/ # FastAPI server │ └── frontend/ # React dashboard (single HTML file) ├── config.yaml.example # Template configuration ├── requirements.txt # Python dependencies └── LICENSE # MIT License ``` ## 报告 BSS Recon 生成 PDF 和 Markdown 格式的专业评估报告: - **封面**,包含目标、日期和分析师姓名 - **执行摘要**,包含严重程度细分 - **发现表**,包含 OWASP 类别和 MITRE 技术映射 - **详细发现**,包含修复指南 - **免责声明和范围**文档 ## 法律声明 此工具仅供授权的安全测试使用。在扫描您不拥有的任何目标之前,请务必获得书面许可。未经授权的扫描可能违反计算机犯罪法律。 ## 许可证 [MIT License](LICENSE) — 可免费使用、修改和分发。 ## 作者 **Emilio Burgohy** — [GitHub](https://github.com/ebuggy84) | [LinkedIn](https://linkedin.com/in/emilioburgohy)
标签:CTI, 逆向工具