Scanner de reconhecimento de rede leve, open-source, em Python — inspirado no Nmap, focado em ser simples de ler, simples de contribuir, e útil de verdade.
ReconLite escaneia um host, identifica portas abertas, tenta identificar o serviço rodando em cada uma (banner grabbing) e cruza a versão detectada com uma base de CVEs conhecidas — sinalizando riscos potenciais sem tentar explorar nada.
Isso é uma ferramenta de reconhecimento, não de exploração. Não contém payloads, não tenta ganhar acesso não autorizado a nada, e não deve ser usada contra qualquer alvo sem autorização explícita do dono do sistema.
Projeto de portfólio: construir conhecimento prático, visibilidade na comunidade de segurança, e uma base de código que sirva de prova de capacidade técnica em processos seletivos e network na área.
- Varredura de portas TCP (connect scan) assíncrona
- Banner grabbing com probe automático (envia requisição mínima quando o serviço não fala primeiro — ex. HTTP)
- Checagem de CVEs conhecidas por versão de serviço detectada (base local offline + opção
--onlinepara complementar via CIRCL CVE Search) - Output em tabela (terminal), JSON e Markdown (relatório)
Testado end-to-end contra serviços simulados localmente, incluindo detecção correta de um banner de vsftpd 2.3.4 (CVE-2011-2523, o backdoor histórico mais conhecido da categoria).
python -m reconlite.cli scan --host 127.0.0.1 --ports 1-1000
python -m reconlite.cli scan --host example.com --ports 22,80,443 --format json
python -m reconlite.cli scan --host example.com --ports 1-1000 --format markdown --online- Expandir a base local de CVEs (atualmente ~10 entradas didáticas)
- Detecção de versão mais robusta (regex mais específicas por serviço)
- Suporte a scan UDP básico
- Testes automatizados (pytest) cobrindo scanner, fingerprint e vuln_lookup
Use apenas em sistemas que você possui ou tem autorização explícita e por escrito para testar. Escanear sistemas de terceiros sem permissão pode violar leis locais (no Brasil, pode se enquadrar na Lei 12.737/2012 — Lei Carolina Dieckmann — dependendo do contexto).
MIT