
Recon-Scan: reconhecimento passivo de código aberto com análise de segurança alimentada por IA. Zero-toque, voltado para desenvolvedores e focado em privacidade.
ReconScan é um scanner de reconhecimento passivo de código aberto com backend FastAPI, pipeline de worker assíncrono e frontend de página única. Você pode verificar o site implantado em https://recon-scan.vercel.app/
O objetivo é sinal rápido: execute uma varredura, obtenha resultados módulo por módulo e obtenha um resumo de IA que agora pode ser exportado como um relatório PDF refinado.
Se você quer apenas executá-lo rapidamente:
./start.sh
O que isso faz:
.env a partir de .env.example se estiver faltando..venv se necessário.requirements.txt.http://localhost:8000.USE_ARQ_QUEUE=false para inicialização local mais fácil sem Redis.Pare com Ctrl+C.
./start-docker.sh
O que isso faz:
.env a partir de .env.example se estiver faltando.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
Instale as dependências de teste:
pip install -r requirements-dev.txt
Execute a suíte completa:
pytest -q
Após a conclusão de uma varredura, clique em Download PDF na interface.
Endpoint do backend:
GET /scans/{scan_id}/report.pdfO relatório inclui:
GET /healthPOST /scans
{ "target": "example.com" }{ "target": "example.com", "byoapi_key": "...", "byoapi_provider": "your_provider" }byoapi_key rejeitado a menos que ALLOW_BYO_API_KEY=trueuser_id é opcional e mantido para compatibilidadeGET /scans/{scan_id}GET /scans/{scan_id}/report.pdfDe .env.example:
DATABASE_URL (padrão: sqlite:///./reconscan.db)REDIS_URL (padrão: redis://localhost:6379)USE_ARQ_QUEUE (padrão: true)RATE_LIMIT_PER_MINUTE (padrão: 10)RATE_LIMIT_PER_DAY (padrão: 200)ALLOWED_HOSTS (padrão: localhost,127.0.0.1)CORS_ALLOWED_ORIGINS (padrão: origens de desenvolvimento local)ALLOW_BYO_API_KEY (padrão: )Contribuições são bem-vindas, especialmente em torno de módulos de reconhecimento passivo, relatórios, UX do frontend e cobertura de testes.
Por favor, leia as diretrizes completas de contribuição antes de abrir um pull request:
MIT. Veja LICENSE.
falseOPENROUTER_API_KEY, ANTHROPIC_API_KEY, OPENAI_API_KEY (opcional)VIRUSTOTAL_API_KEY, GOOGLE_SAFE_BROWSING_API_KEY (opcional)