ReconHub is a modular, scalable reconnaissance platform that orchestrates multiple open-source security tools, aggregates results, deduplicates findings, and presents everything in a modern dark-mode web dashboard.
⚠️ For authorized security testing only. You must have explicit written permission to scan any target system.
| Feature | Description |
|---|---|
| 🔌 Plugin System | Manifest-driven plugin.yaml plugins, hot-drop to add new tools |
| 🗺️ Scan Profiles | Quick, Full, Web, Infrastructure, Custom — with DAG dependency resolution |
| ⚡ Parallel Pipelines | Celery + Redis queue with independent stages running concurrently |
| 🌐 Asset Graph | Interactive React Flow visualization of hosts, ports, technologies, vulns |
| 📸 Screenshots | Automatic Playwright browser captures for HTTP services |
| 🔁 Delta Scans | Compare two scan runs — see what's new, changed, or removed |
| 🎯 Attack Surface Score | Composite 0-100 risk metric from ports, vulns, endpoints, TLS |
| ⏱️ Live Console | WebSocket-powered real-time log streaming from tool outputs |
| 📄 Reports | Export as HTML, Markdown, or JSON |
| 🐳 Docker Ready | Full docker-compose.yml for one-command deployment |
| 🧪 Demo Mode | Run with realistic simulated data — no tools installation needed |
| Plugins | Purpose | phase |
|---|---|---|
| subfinder | Subdomain enumeration | DNS |
| dnsx | DNS resolution & validation | DNS |
| httpx | HTTP service discovery & tech detection | Web |
| nmap | Port scanning & service fingerprinting | Ports |
| ffuf | Directory & endpoint bruteforce | Web |
| nuclei | Template-based vulnerability scanning | Vulns |
| katana | Web crawling & JS analysis | Crawl |
| waybackurls | Historical URL discovery | Crawl |
┌──────────────────────────────── ─────────────────────────────────┐
│ ReconHub Platform │
│ │
│ ┌───────────────────────┐ ┌───────────────────────────────┐ │
│ │ React Frontend │ │ FastAPI Backend │ │
│ │ • Dashboard │────▶│ • REST API v1 │ │
│ │ • Scans Manager │ │ • WebSocket Hub │ │
│ │ • Asset Graph │ │ • Scan Orchestrator │ │
│ │ • Delta Compare │◀────│ • Plugin Manager │ │
│ │ • Live Console │ WS │ • Attack Surface Scorer │ │
│ │ • Reports │ │ • Delta Engine │ │
│ └───────────────────────┘ └───────────────┬───────────────┘ │
│ │ │
│ ┌────────────────────────── ────────────▼─────────────┐ │
│ │ Celery + Redis Job System │ │
│ │ ┌──────────┐ ┌──────────┐ ┌──────────────┐ │ │
│ │ │ Queue: │ │ Workers │ │ Plugin DAG │ │ │
│ │ │ high / │──▶ x4 │──▶ Stages │ │ │
│ │ │ default /│ │ │ │ (parallel) │ │ │
│ │ │ low │ └──────────┘ └──────────────┘ │ │
│ └─────────────────────────── ───────────────────────────┘ │
│ │ │
│ ┌─────────▼──────────┐ │
│ │ SQLite / PostgreSQL│ │
│ └────────────────────-┘ │
└──────────────────────────────── ─────────────────────────────────┘
# Clone the repository
git clone https://github.com/7x2vn/ReconHub.git
cd ReconHub
# Start all services (App + Redis + Celery Worker + Frontend)
cd docker
docker-compose up -d
# Open in browser
open http://localhostPrerequisites: Pyt
