Drag0nSlay/reC0n_3ngin3

GitHub: Drag0nSlay/reC0n_3ngin3

一个分层编排的侦察流水线,将二十余款安全工具整合为单一命令,自动完成从被动情报收集到优先级报告的完整流程。

Stars: 3 | Forks: 0

# 🕵️ recon-engine **一个分层的、编排化的侦察流水线 —— 从被动 OSINT 到优先级排序的发现,只需一条命令。** ![License](https://img.shields.io/badge/license-MIT-blue.svg) ![Python](https://img.shields.io/badge/python-3.10%2B-yellow.svg) ![Status](https://img.shields.io/badge/status-active-brightgreen.svg) ![Tiers](https://img.shields.io/badge/tiers-4-orange.svg)
## ⚡ 它的功能 `recon-engine` 将你已经信任的工具 —— `subfinder`、`httpx`、 `naabu`、`nmap`、`nuclei`、`katana`、`subzy` 等等 —— 封装到一个单一的 **14 阶段编排化流水线** 中: ``` Passive Enum → Resolution → Port Scan → Crawl → JS/Secrets → Vuln Signals → Content Discovery → Cloud Recon → Deep DNS → Scoring → Storage → Prioritized Report ``` 不再需要同时开着十几个终端标签页并手动合并文本文件。 一条命令输入,一份优先级排序的报告输出 —— 带有**颜色编码的控制台 输出**,让你可以一眼区分各个阶段和严重程度(当输出通过管道传输或重定向到文件时会自动禁用)。 ## 🎯 分层执行 不要盲目运行所有内容。选择符合你需求的层级: | 层级 | 运行内容 | 速度 | 是否接触目标? | |:---:|---|:---:|:---:| | **1** | 仅被动 OSINT (crt.sh, VT, Chaos, GitHub, ASN/IP) | ⚡ 快 | ❌ 否 | | **2** | + DNS 解析,存活检测,端口扫描 | 🚶 中等 | ✅ 是 | | **3** | + 历史/实时 URL 爬取,JS + 密钥分析 | 🐢 较慢 | ✅ 是 | | **4** | + nuclei,目录暴力破解,云存储桶,深度 DNS —— 所有内容 | 🐌 完整运行 | ✅ 是 | ``` python main.py --config config/settings.yaml --tier 1 # safe default python main.py --config config/settings.yaml --tier 4 # full pipeline ``` ## 🔒 仅限授权使用 `config/settings.yaml` 中的 `authorized` 标志是一个硬性门槛 —— 每个 主动模块都拒绝运行,除非它被显式设置为 `true`。层级 1 (仅被动)无论如何都会运行,因为它从不向目标发送任何数据包。 未经授权的扫描可能会违反 CFAA(美国)、Computer Misuse Act (英国)、IT Act 2000(印度)或其他地区的同等法律。你 需对自己如何使用此工具负责。 ## 🚀 快速开始 ``` git clone https://github.com//recon-engine.git cd recon-engine cp config/settings.example.yaml config/settings.yaml # 编辑 config/settings.yaml → 添加你的 API keys + 目标 domain pip install -r requirements.txt --break-system-packages python main.py --config config/settings.yaml --tier 1 ``` ## 📂 你会得到什么 运行结束后,请检查: ``` data/processed/FINAL_REPORT.txt ← start here: counts + HIGH/MEDIUM/LOW targets + issues data/processed/MASTER_REPORT.md ← full detail, section per phase data/processed/master_report.json ← same, machine-readable data/processed/recon.sqlite3 ← everything stored — reruns auto-diff against past scans ``` 随时重新生成报告,无需重新运行流水线: ``` python -m output.report --config config/settings.yaml ``` ## 🧩 流水线阶段 | # | 阶段 | # | 阶段 | |---|---|---|---| | 1 | 目标枚举 | 9 | DNS + 基础设施 | | 2 | 解析层 | 10 | 情报引擎(评分) | | 3 | 网络扫描 | 11 | 自动化 / 编排 | | 4 | 爬取 + 端点 | 12 | 数据处理 (SQLite) | | 5 | JS + 密钥分析 | 13 | 最终输出(报告) | | 6 | 漏洞信号 | 14 | 分层执行策略 | | 7 | 内容发现 | 15 | 自动化边界* | | 8 | 云侦察 | | | *\*数据收集、过滤和标记都是自动化的。漏洞利用 和重度模糊测试被刻意**排除在外** —— nuclei 被限制为仅包含 info/low(信息/低)严重程度 + 非侵入性标签,masscan 需要第二次明确的 确认,而目录暴力破解只会在精心挑选的 高优先级主机列表上运行。* ## 🛠️ 封装的工具 `subfinder` `assetfinder` `amass` `asnmap` `mapcidr` `shuffledns` `dnsx` `httpx` `naabu` `rustscan` `masscan` `nmap` `waybackurls` `gau` `katana` `wafw00f` `nuclei` `gf` `subzy` `ffuf` `dirsearch` `EyeWitness` `dnsrecon` —— 均为可选;任何未安装的工具都会被优雅地跳过, 并伴有日志警告,绝不会导致崩溃。 ## 🚧 开发中 此工具仍处于活跃开发中。如果你遇到 bug、一个 与你安装版本标志不匹配的工具包装器,或者一个 缺失的功能 —— 请随时提 issue 或 PR。欢迎任何 贡献,无论大小。 **最近修复:** `settings.yaml` 中的 `scan.naabu_top_ports` 并没有 实际传递给 naabu 扫描调用(无论配置如何,始终使用 硬编码的默认值)—— 现在已正确连接。 ## 📄 许可证 MIT —— 见 [LICENSE](LICENSE)。
标签:GitHub, Python, 任务编排, 实时处理, 密码管理, 无后门, 自动化信息收集, 运行时操纵, 逆向工具