
Recon-Scan : reconnaissance passive open source avec analyse de sécurité basée sur l'IA. Zéro intervention, axé développeur et respectueux de la vie privée.
ReconScan est un scanner de reconnaissance passive open-source avec un backend FastAPI, un pipeline de workers asynchrone et un frontend single-page. Vous pouvez consulter le site déployé sur https://recon-scan.vercel.app/
L'objectif est d'obtenir un signal rapide : lancez un scan, obtenez des résultats module par module, et obtenez un résumé IA qui peut désormais être exporté sous forme de rapport PDF soigné.
Si vous voulez simplement le lancer rapidement :
./start.sh
Ce que cela fait :
.env à partir de .env.example s'il est absent..venv si nécessaire.requirements.txt.http://localhost:8000.USE_ARQ_QUEUE=false pour un démarrage local sans Redis plus simple.Arrêtez avec Ctrl+C.
./start-docker.sh
Ce que cela fait :
.env à partir de .env.example s'il est absent.cp .env.example .env
docker compose up --build
pip install -r requirements.txt
cp .env.example .env
uvicorn app.main:app --host 0.0.0.0 --port 8000 --reload
arq app.worker.WorkerSettings
http://localhost:8000
Installez les dépendances de test :
pip install -r requirements-dev.txt
Lancez la suite complète :
pytest -q
Une fois un scan terminé, cliquez sur Download PDF dans l'interface.
Endpoint backend :
GET /scans/{scan_id}/report.pdfLe rapport inclut :
GET /healthPOST /scans
{ "target": "example.com" }{ "target": "example.com", "byoapi_key": "...", "byoapi_provider": "your_provider" }byoapi_key est rejeté sauf si ALLOW_BYO_API_KEY=trueuser_id est optionnel et conservé pour compatibilitéGET /scans/{scan_id}GET /scans/{scan_id}/report.pdfDepuis .env.example :
DATABASE_URL (par défaut : sqlite:///./reconscan.db)REDIS_URL (par défaut : redis://localhost:6379)USE_ARQ_QUEUE (par défaut : true)RATE_LIMIT_PER_MINUTE (par défaut : 10)RATE_LIMIT_PER_DAY (par défaut : 200)ALLOWED_HOSTS (par défaut : localhost,127.0.0.1)CORS_ALLOWED_ORIGINS (par défaut : origines de développement local)ALLOW_BYO_API_KEY (par défaut : false)OPENROUTER_API_KEY, ANTHROPIC_API_KEY, OPENAI_API_KEY (optionnel)VIRUSTOTAL_API_KEY, GOOGLE_SAFE_BROWSING_API_KEY (optionnel)Les contributions sont les bienvenues, en particulier autour des modules de reconnaissance passive, du reporting, de l'UX du frontend et de la couverture de tests.
Veuillez lire les directives de contribution complètes avant d'ouvrir une pull request :
MIT. Voir LICENSE.