ReconHound
Engine moderna de Alta Performance, Assíncrona e Modular para External Attack Surface Management (EASM), Reconhecimento de Ativos, Validação Ativa e Inteligência de Armamento de Vulnerabilidades.
1. Introdução
O ReconHound é uma engine de External Attack Surface Management (EASM) e Threat Intelligence construída para analistas, Red Teams e pesquisadores. Ele automatiza o reconhecimento e unifica os resultados em uma interface gráfica em tempo real.
O que é "EASM & Threat Intelligence Engine"?
Gerenciamento da Superfície de Ataque Externa (EASM) é o processo de descobrir, monitorar e avaliar ativos expostos na internet, identificando vetores de ataque antes que os adversários o façam. O ReconHound atua como uma engine que enriquece esses dados com inteligência de ameaças, valida ativamente os achados e qualifica o risco real de exploração. Ele transforma terabytes de telemetria de internet bruta e ruidosa em inteligência priorizada e acionável, permitindo que as equipes de segurança se concentrem no que realmente importa.
Inspirado fortemente no BloodHound, o ReconHound modela a superfície de ataque externa como um grafo de relacionamentos orientados (Target Root → Domains → IPs → Services → CVEs → PoCs). A ferramenta unifica inteligência passiva, validação ativa em portas abertas e rastreabilidade de evidências em uma experiência visual contínua, desenhada para expor vetores de ataque.
Mapeamento EASM Concorrente
Execução ultra rápida assíncrona para IP único, blocos CIDR (/24), domínios, emails, CVEs e buscas complexas do Shodan e Censys Platform v3.
Validação Ativa (Masscan + Nuclei)
Verificação de portas em alta velocidade com captura de banners e validação automatizada de vulnerabilidades restrita a portas comprovadamente ativas.
Priorização por Risco & Source
Elimine a fadiga de alertas: priorize ativos através do cruzamento entre CVSS Base, FIRST EPSS, CISA KEV e rastreabilidade explícita da fonte do finding.
Dashboard Gráfico Interativo
ReconHound WebGUI embarcado em FastAPI + Cytoscape.js com menus de contexto, controle de estado de scan (Start/Stop) e filtros instantâneos.
2. Arquitetura & Pipeline de Correlação
A arquitetura do ReconHound opera através de um pipeline assíncrono modular de 5 estágios encadeados, projetado para transformar dados brutos de OSINT e varreduras ativas em um modelo relacional correlacionado de alta fidelidade:
1. Descoberta, Recon Primário & CDN Bypass
Enumeração de certificados TLS (crt.sh), inteligência reversa de WHOIS (WhoisFreaks), profiling de hosts via Shodan/Censys, Bypass de Proxies de CDN Compartilhada (Cloudflare/Fastly/Akamai) para evitar ruído de outros tenants, e Fallback Automático BGP/RDAP (IP-API / RIPE Stat).
2. Governança de Escopo & Resolução DNS
Resolução DNS concorrente (A/AAAA) restrita estritamente à árvore de subdomínios do alvo (*.alvo.com) e Governança de Escopo para Org/ASN (org:/asn:), blindando a base e o grafo contra poluição de provedores ou domínios alheios.
3. Validação Ativa & Verificação
Varredura ativa ultrarrápida de portas e banners via Masscan (com evasão de WAF) e auditoria de vulnerabilidades direcionada com Nuclei (Regra Verified Active).
4. Threat Intel, Scoring & PoCs
Enriquecimento de CVEs via NVD 2.0 (CVSS/CWE), probabilidade real de exploração (FIRST EPSS), CISA KEV, exploits do ExploitDB e repositórios de PoCs no GitHub.
5. Síntese em Grafo & Apresentação Multi-Canal
Topologia hierárquica DAG multi-nível (6 camadas com matrizes), Isolamento de Caminho de Ataque Estrito nos filtros de risco, navegação bidirecional no Inspector e exportação em SQLite, CSV, JSON, Markdown e HTML.
Entendendo a Topologia Relacional (Host-Centric & Target-Driven)
A estrutura de dados sintetizada no Grafo orienta os nós através de uma arquitetura Host-Centric ágil e focada diretamente na cadeia de ataque técnico:
Target Query Root (Âncora com Inventário Completo: all_domains & all_subdomains)
├── CONTAINS_TARGET ──► Hosts / IPs do Alvo (com badge de metadados 🌐 N FQDNs)
│ └── EXPOSES ──► Serviços / Portas (Instâncias Locais 1:N por Host)
│ └── HAS_VULN ──► CVEs (Entidades Globais Deduplicadas N:M)
│ ├── ENRICHED_WITH ──► FIRST EPSS + CISA KEV
│ └── WEAPONIZED_BY ──► ExploitDB + GitHub PoCs
└── CONTAINS_TARGET ──► FQDN Targets Explícitos (Alvos de Varredura Marcados sob Demanda)
└── RESOLVES_TO ──► Hosts / IPs Resolvidos
O ReconHound renderiza um grafo em Sandbox Limpo focado na interação fluida e na topologia Top-Down (Raiz → Ativos → Serviços → CVEs), consolidando de forma inteligente grandes volumes de dados:
- Foco Direto e Limpo: O canvas inicia de forma limpa. Subdomínios não poluem a tela; ficam organizados no Asset Inspector e se materializam apenas quando configurados como alvos ativos.
- Layout Dinâmico: Gráficos densos renderizam portas e serviços sob um Grid Proporcional vertical e organizado.
- Deduplicação de Inteligência: IPs expõem serviços independentes, enquanto vulnerabilidades (CVEs) se comportam como entidades centralizadas, permitindo visão transversal do impacto.
Motor de Descoberta Recursiva Retroativa & Fusão Incremental (Smart Upsert)
O grande diferencial do ReconHound em relação a ferramentas tradicionais de varredura estática reside no seu Ciclo de Expansão Recursiva de Superfície. Em vez de se limitar estritamente aos blocos de rede iniciais de uma consulta (como ASN, Org ou CIDR), o motor dispara uma cadeia heurística em múltiplos níveis que correlaciona certificados, identidades DNS e infraestruturas satélites em tempo real:
1. Extração Heurística de Identidade
Varre certificados TLS (SNI), cabeçalhos HTTP e banners retornados no Recon Primário para identificar domínios raiz e FQDNs ocultos sob a propriedade do alvo.
2. Enumeração Cascata de Subdomínios
Alimenta dinamicamente os motores de Certificate Transparency (crt.sh) e Reverse WHOIS para desdobrar toda a árvore de subdomínios e domínios irmãos do alvo.
3. Resolução DNS Concorrente (A/AAAA)
Processa centenas de subdomínios em paralelo via asyncio com controle de semáforo, descobrindo novos blocos de IPs e nuvens satélites fora da query inicial.
4. Enriquecimento Retroativo Contínuo
Submete os novos IPs descobertos via DNS a um novo ciclo de profiling passivo, enriquecendo portas, serviços, ASN e geolocalização automaticamente.
Target Query (ex: org:'ACME Corp')
│
├─► [1. Recon Primário] ──────► Host Profiling + TLS / HTTP Banners
│ │
│ ▼ Extração Heurística de Domínios
├─► [2. Enumeração Cascata] ──► crt.sh + Reverse WHOIS (Domínios & Subdomínios)
│ │
│ ▼ Resolução DNS Concorrente (A/AAAA)
├─► [3. Expansão de Rede] ────► Descoberta de Novos Blocos de IPs Satélites
│ │
│ ▼ Profiling Passivo Retroativo
└─► [4. Fusão Incremental] ───► SQLite Upsert: Preservação de Histórico + Fontes Mescladas
Ao reexecutar varreduras sobre bases SQLite já existentes em ./data/dbs/, o motor aplica regras estritas de integridade relacional sem perda de contexto:
- Unicidade Estrita de Ativos: Garante unicidade absoluta para
(ip_id, port, protocol)e registros de IP, impedindo duplicação de nós no grafo. - Merge de Proveniência (
sources): Se uma porta foi identificada anteriormente via Shodan e confirmada ativamente via Masscan, o motor unifica a lista:["Masscan", "Passive", "Shodan"]. - Enriquecimento Cumulativo (
COALESCE): Metadados de ASN, Organização, País, Cidade e Coordenadas Geográficas são enriquecidos sem sobrescrever dados pré-existentes. - Rastreabilidade de Scans (
scan_results): Cada execução registra uma nova entrada no histórico, mantendo a evolução cronológica da superfície de ataque auditada.
3. Guia de Instalação (Quickstart)
O ReconHound suporta execução nativa em Linux, macOS e Windows (via WSL2). Siga os passos abaixo para preparar o ambiente:
Requer Python 3.11 ou superior e o gerenciador de pacotes pip ou ambiente virtual venv.
Passo 1: Instalação Automática via PyPI
A ferramenta é empacotada e distribuída oficialmente via PyPI, permitindo que você a instale em qualquer máquina Linux, Windows ou macOS com um simples comando pip.
# 1. Baixar e instalar o pacote globalmente
pip install reconhound
# 2. Executar a autoconfiguração automatizada
# (Setup de banco de dados, credenciais seguras da Dashboard e dependências).
reconx config setup
Passo 2: Binários de Varredura Ativa (Masscan & Nuclei)
A rotina reconx config setup verifica e configura automaticamente permissões de rede (setcap) e templates. Caso prefira instalar os binários do sistema manualmente:
# Instalação do Masscan (Ubuntu / Debian / Kali)
sudo apt update && sudo apt install -y masscan
# Conceder Linux capabilities para execução do Masscan sem root na WebUI:
sudo setcap cap_net_raw,cap_net_admin,cap_net_bind_service+eip $(which masscan)
# Instalação do Nuclei (via Go ou Release Binary)
go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest
A varredura ativa utiliza envio assíncrono de pacotes brutos via Masscan. Certifique-se de que o pacote masscan esteja instalado no host e que as permissões de sockets brutos foram concedidas via Linux Capabilities:
sudo setcap cap_net_raw,cap_net_admin,cap_net_bind_service+eip $(which masscan)
Passo 3: Banco Local de Exploits (ExploitDB)
O catálogo local de exploits é inicializado automaticamente pelo setup. Para atualizá-lo sob demanda:
reconx config update
4. Configuração de Chaves & APIs
O ReconHound foi construído com design tolerante a falhas. Caso nenhuma chave seja fornecida, a ferramenta utiliza automaticamente fontes e fallbacks públicos gratuitos (crt.sh, HackerTarget, FIRST EPSS API, CISA KEV Catalog e GitHub PoC API). No entanto, para capacidade de varredura profunda de infraestrutura e bypass de rate-limits, recomendamos a configuração de variáveis de ambiente.
O arquivo .env é criado automaticamente a partir de .env.example durante o setup. Configure as chaves desejadas:
# ==============================================================================
# ReconHound - External Attack Surface Management & Threat Intelligence Engine
# Copy this file to .env and insert your API keys as needed.
# ==============================================================================
# [Required for Shodan Queries, Subnets, DNS & Banner Reconnaissance]
SHODAN_API_KEY=
# [Required for V3: AlienVault OTX Threat Actors & Malware extraction]
ALIENVAULT_API_KEY=
# [Required for V3: SecurityTrails Subdomain & Passive IP Enumeration]
SECURITYTRAILS_API_KEY=
# [Optional: Censys Platform API v3 Personal Access Token & Org ID]
CENSYS_PAT_TOKEN=
CENSYS_ORG_ID=
# [Optional: Censys Legacy API ID & Secret]
CENSYS_API_ID=
CENSYS_API_SECRET=
# [Optional: NVD API Key for Accelerated CVSS & CWE Enrichment]
NVD_API_KEY=
# [Optional: WhoisFreaks API Key for Structured Reverse WHOIS Domain Mapping]
WHOISFREAKS_API_KEY=
# [Optional: GitHub Personal Access Token for Public Exploit & PoC Hunting]
GITHUB_TOKEN=
Diagnóstico e Autoconfiguração de Pré-requisitos
Verifique a integridade do ambiente, pacotes Python, diretórios operacionais, permissões e status das APIs ao vivo:
# Exibir tabela completa de diagnóstico do sistema e APIs
reconx config check
# Diagnosticar e aplicar correções/configurações ausentes automaticamente
reconx config setup
5. ReconExec
A interface de linha de comando é gerenciada via Typer e estilizada com Rich, fornecendo formatação limpa,
indicadores de progresso assíncronos e tabelas de risco coloridas.
Usage: reconexec [OPTIONS] COMMAND [ARGS]...
╭─ Global Recon Scans ─────────────────────────────────────────────────────────╮
│ all Execute passive attack surface mapping using ALL modules. │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─ Targeted Recon Modules ─────────────────────────────────────────────────────╮
│ shodan Execute passive scan using the 'Shodan' module. │
│ censys Execute passive scan using the 'Censys' module. │
│ crtsh Execute passive scan using the 'crt.sh' module. │
│ whois Execute passive scan using the 'Reverse WHOIS' module. │
│ sectrails Execute passive scan using the 'SecurityTrails' module. │
│ axfr Execute passive scan using the 'Zone Transfer' module. │
│ otx Execute passive scan using the 'AlienVault OTX' module. │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─ Utility & Intelligence ─────────────────────────────────────────────────────╮
│ intel Execute advanced threat intelligence lookups. │
╰──────────────────────────────────────────────────────────────────────────────╯
╭─ System & Configuration ─────────────────────────────────────────────────────╮
│ version Show ReconExec version and maintainer information. │
│ config Manage configuration, setup, and system updates │
╰──────────────────────────────────────────────────────────────────────────────╯
O reconx lida nativamente com rate-limits de APIs (Anti-HTTP 429) e garante a criação de nós no grafo para alvos sem histórico prévio, deixando-os prontos para varreduras ativas na WebUI.
Modos de Varredura por Alvo
| Tipo de Alvo | Exemplo de Comando | Ações Executadas no Pipeline |
|---|---|---|
| Domínio Raiz | reconx all spacex.com |
Enumeração crt.sh + Reverse WHOIS + Resolução DNS + Shodan/Censys + CVE Scoring |
| Endereço IP Único | reconx all 142.250.191.68 |
Perfil Shodan + Censys v3 Dossier + Portas + Serviços + Banner Analysis + CVEs |
| Sub-rede CIDR | reconx all 142.250.191.0/24 |
Varredura de bloco de rede + Enumeração de hosts ativos + Correlação de portas |
| CVE Identifier | reconx intel CVE-2021-44228 |
NVD CVSS v3.1 + CWE + Probabilidade FIRST EPSS + Flag CISA KEV + ExploitDB + PoCs |
| Shodan Dork / Query | reconx all "org:'Acme Corp' port:443" |
Busca de infraestrutura customizada, extração de certificados e correlação de vulnerabilidades |
| Lista de Alvos em Arquivo | reconx all targets.txt |
Carregamento em lote + Validação centralizada de APIs + Ancoragem de nós de IP/Domínio para Recon Ativo |
Flags Principais & Módulos
| Flag | Valores Permitidos | Descrição Técnica |
|---|---|---|
TARGET Posicional |
STRING |
Alvo da análise (IP, Domínio, CIDR, email ou arquivo targets.txt). |
COMMAND Subcomando |
all, shodan, censys, crtsh, whois, sectrails, axfr, otx, intel |
Módulos executados como subcomandos principais (ex: reconexec all spacex.com). |
--create-db |
NOME_DO_BANCO |
Salva os dados automaticamente em ./data/dbs/{nome}.sqlite para o WebGUI. |
-o, --format |
table, json, markdown, html, csv, all |
Formato de saída do relatório de segurança. |
-f, --output-file |
PATH |
Caminho customizado de destino do arquivo exportado. |
-d, --output-dir |
DIRECTORY |
Diretório de destino para exportação de múltiplos formatos (quando -o all). |
Persistência Centralizada SQLite (EASM)
Para persistir os dados para consulta histórica ou carregar no ReconHound Web Dashboard, utilize a flag --create-db:
# Mapeia empresa e salva em ./data/dbs/alvo_empresa.sqlite
reconx all empresa.com.br --create-db alvo_empresa
# Mapeia sub-rede e salva em ./data/dbs/datacenter_sp.sqlite
reconx all 198.51.100.0/24 --create-db datacenter_sp
Exportação de Relatórios Oficiais
# 1. Relatório Executivo em Markdown
reconx all empresa.com.br -o markdown -f relatorio_executivo.md
# 2. Relatório HTML Standalone (Formatado e Pronto para Print/PDF)
reconx all empresa.com.br -o html -f relatorio_easm.html
# 3. Dados Estruturados em JSON para SIEM/SOAR/Data Lake
reconx all empresa.com.br -o json -f surface_data.json
# 4. Tabela Estruturada em CSV para Análise em Planilhas
reconx all empresa.com.br -o csv -f vulnerabilidades.csv
# 5. Exportação simultânea de todos os formatos para pasta
reconx all empresa.com.br -o all -d ./exports/empresa/
6. ReconHound Dashboard
O ReconHound é a interface gráfica web interativa inspirada na experiência analítica de grafos do SpecterOps BloodHound. Ele opera através de um servidor FastAPI de alta performance que lê os bancos de dados SQLite gerados e renderiza o grafo interativo utilizando Cytoscape.js.
⠀⠀⠀⠀⡀⠀⠀⠀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⣷⠀⠀⢰⣷⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⣿⣧⠀⣼⣿⣇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⢸⣿⣿⡆⠘⣿⣿⣆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⣸⣿⣿⣿⡄⠙⠛⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⣿⣿⣿⣿⣷⡀⣿⣿⣿⣿⠿⠿⢿⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ RECONHOUND DAEMON
⠀⠀⢰⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣄⡀⢻⣿⣿⣿⠟⢿⣿⠛⣦⡀⢻⣿⡇⠀ ==================================
⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠛⣶⡞⠻⣶⠛⢻⡄⠹⠀⠀ [✓] Attack Surface Dashboard UI
⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣿⣷⣾⣿⣶⣿⣿⠆⠀⠀ [✓] Threat Tracking Engine
⠀⢠⣿⣿⣿⡄⢹⣿⣿⣿⣿⣿⣿⣿⣿⣿⣏⣉⣉⣉⣉⣉⣉⣉⣉⣉⡉⠀⠀⠀ Usage: reconexec hound start
⠀⢸⣿⣿⣿⣷⡀⠻⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠃⠀⠀⠀
⠀⣿⣿⣿⣿⣿⣷⣶⣶⣶⣶⣶⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠛⠛⠛⠛⠛⠛⠛⠛⠛⠛⠛⠛⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
Autenticação Segura (JWT)
O Dashboard é totalmente protegido por JWT (JSON Web Tokens) e cookies seguros HttpOnly. O comando reconx config setup deriva de forma segura uma chave de criptografia única (JWT_SECRET_KEY) a partir da senha do seu Admin e a salva no seu arquivo local .env. As sessões expiram automaticamente após 30 minutos, e você pode destruí-las explicitamente usando o botão Terminate Session localizado no rodapé do menu lateral.
Configuração de Rede (.webserver.json)
O arquivo de estado local ~/.reconexec/run/.webserver.json armazena as configurações do daemon. Se você precisar alterar os endereços de socket (como host e port) para liberar acesso externo ou alterar a porta, basta editar este arquivo com o servidor desligado. Ao usar hound start novamente, o servidor assumirá automaticamente as novas configurações de rede definidas no JSON.
Gerenciamento do Servidor ReconHound (Daemon)
O gerenciamento do ciclo de vida do servidor web é realizado através do subcomando hound:
| Comando | Função Técnica |
|---|---|
reconx hound start |
Inicia o servidor FastAPI em segundo plano na porta 8000 (http://127.0.0.1:8000). |
reconx hound list-dbs |
Lista todos os bancos de dados de superfícies de ataque salvos em ./data/dbs/. |
reconx hound status |
Verifica o status do processo daemon (PID, porta, consumo e tempo de atividade). |
reconx hound stop |
Finaliza com segurança o processo daemon em execução. |
Ao executar varreduras primárias pela Engine (reconx all ...), o motor detecta automaticamente se o ReconHound já está ativo. Caso o servidor já esteja rodando, ele preserva a instância em execução sem reiniciá-la, evitando interrupções em varreduras ativas (Masscan/Nuclei) ou desconexões no navegador. A nova base SQLite é salva em data/dbs/ e fica imediatamente disponível para seleção no menu superior do dashboard.
UX Graph-First e Gestão Flutuante de Leads
O ReconHound adota um modelo de interação Graph-First. Em vez de depender de barras laterais poluídas, você gerencia sua superfície de ataque passiva diretamente no próprio canvas.
- Persistência do Target Root: O nó central (
target_root) atua como a âncora do seu escopo. Mesmo se você desmarcar todos os leads ou clicar em "Collapse All", este nó nunca desaparecerá do canvas. - Auto-Centralização Cinemática: Caso o
target_rootse torne o único nó visível na tela, a câmera fará um deslizamento e zoom automático focado nele. - Modal Flutuante de Leads (Context Menu): Clique com o botão direito no nó
target_roote selecione "Explore Leads..." para abrir um modal interativo e translúcido bem no centro do grafo, que conta com uma barra de pesquisa em tempo real. A partir dele, você seleciona, pesquisa e filtra quais IPs, Domínios e Subdomínios passivos deseja projetar visualmente. (Pode ser fechado rapidamente clicando em qualquer lugar vazio do canvas ou apertandoESC). - Auto-Select Inteligente & Hidratação: Se a varredura inicial encontrar um escopo pequeno (50 leads ou menos), a ferramenta fará o auto-selecionamento preventivo. Além disso, alvos informados explicitamente via Engine são sanitizados em FQDNs puros (removendo http/https) para prevenir duplicações, sendo persistentemente auto-renderizados através das sessões do dashboard.
- Busca via HUD: A barra de pesquisa de nós agora é um HUD fixado no canto superior esquerdo do próprio canvas, ampliando sua área de visão tática.
- Canvas Clean (BloodHound-style): O grafo inicia totalmente limpo, exibindo apenas o nó raiz. Expandir ativos não força atualizações de alvos no banco de dados, promovendo uma exploração passiva e fluída.
- Comando CLI
reconx hound restart: Permite o reinício instantâneo e contínuo do backend WebGUI sem precisar derrubar dependências durante o desenvolvimento.
Semântica de Cores e Formas do Grafo
Cada entidade do ecossistema EASM possui uma representação visual clara para facilitar a rápida identificação durante triagens de Red/Blue Team:
| Tipo de Nó | Forma no Grafo | Cor / Identificador | Significado Operacional |
|---|---|---|---|
| Target Root | Void (#111116) • Borda Roxa | Raiz do grafo e âncora da query. | |
| Domínio | Azul Profundo (#00b4d8) | Domínio principal raiz/organizacional descoberto no reconhecimento. | |
| Subdomínio | Turquesa (#4ecdc4) | Host/FQDN filho derivado de um domínio alvo. | |
| Endereço IP | Ametista (#9b59b6) | Endereço IP passivo ou resolvido ativamente. | |
| Alvo Marcado (Target) | Borda Ciano Neon (#00f0ff) | IP ou FQDN explicitamente marcado como alvo de interesse. | |
| WAF Bypass (Origin) | Laranja Pontilhada (#f97316) | IP de origem descoberto ignorando proteções WAF/CDN. | |
| Serviço (Passivo) | Slate Escuro (#1e293b) | Porta descoberta via OSINT aguardando validação ativa. | |
| Serviço (Ativo) | Verde Esmeralda (#27ae60) | Serviço ativamente confirmado como aberto pelo Masscan. | |
| Vulnerabilidade (CVE) | Gradiente de Risco | Avaliado via score CVSS (Vermelho Crítico ao Azul Info). | |
| CISA KEV (Exploited) | Vermelho Sangue (#ff1744) • Glow | Vulnerabilidade KEV sendo explorada ativamente in-the-wild. |
Semântica de Arestas e Conexões Relacionais
As arestas direcionadas representam o fluxo de resolução e exposição de ativos no grafo:
| Rótulo da Aresta | Estilo Visual | Cor / Espessura | Origem ➔ Destino | Significado Operacional |
|---|---|---|---|---|
CONTAINS_TARGET |
Roxo (#8c52ff) | Root ➔ Domínios / IPs | Vínculo hierárquico principal do escopo. | |
RESOLVES_TO |
Teal (#4ecdc4) | Domínio ➔ IP | Resolução DNS ativa/atual. | |
IPS_HISTORY |
Laranja (#f59e0b) | Domínio ➔ IP | IP Histórico descoberto passivamente. | |
EXPOSES (Passivo) |
Verde (#2ecc71) | IP ➔ Porta | Descoberto via OSINT (aguardando teste). | |
EXPOSES (Ativo) |
Verde (#2ecc71) | IP ➔ Porta | Ativamente aberto / validado no Masscan. | |
HAS_VULN |
Gradiente (Ex: Vermelho #ef4444) | Serviço ➔ Vulnerabilidade | Aresta condicional pontilhada que herda dinamicamente a cor baseada no CVSS Score. |
Destaques da Interface & Engine Ativa
A interface do ReconHound foi desenhada para ser altamente intuitiva (no estilo BloodHound), permitindo que você navegue, filtre e defina alvos de ataque com cliques simples.
- Navegação Direta: Clique com o botão esquerdo em qualquer nó para abrir o Asset Inspector (detalhes técnicos, geolocalização e vulnerabilidades) e use o botão direito para o Menu de Contexto (ações rápidas de alvo e visualização).
- Targeting Inteligente (Bypass de WAF/CDN): Ao definir um FQDN (Domínio/Subdomínio) como alvo, o motor ataca preservando o Server Name Indication (SNI), contornando bloqueios do Cloudflare e AWS. Já para IPs diretos, ocorre reconciliação e validação dinâmica de topologia.
- Smart Scanning (Masscan & Nuclei): Feito para operações silenciosas e eficientes. O Masscan descarta portas já verificadas e o Nuclei só ataca portas marcadas como "Confirmed Active". Ambos preservam 100% do estado em banco se o scan for cancelado.
- Isolamento Estrito de Rota de Ataque: Ao ligar filtros críticos na barra lateral (como CISA KEV ou Critical CVSS), o grafo poda automaticamente toda a rede paralela, isolando na tela apenas a cadeia direta de ataque (
Root ──► IP ──► Porta ──► CVE), eliminando todo o ruído visual.
7. Threat Intelligence & Matriz Tridimensional de Risco EASM
O modelo tradicional de priorização baseado puramente em notas CVSS estáticas está obsoleto. Em um cenário real de Gestão de Superfície de Ataque Externa (EASM), uma vulnerabilidade CVSS 9.8 puramente teórica em um host inativo ou sem exploit conhecido representa menos risco operacional imediato do que uma falha CVSS 7.5 em porta exposta ativamente explorada por operadores de ransomware.
Para eliminar o ruído de milhares de alertas irrelevantes e orientar o time de segurança diretamente nas ameaças iminentes, o ReconExec e o ReconHound implementam a Matriz Tridimensional de Risco EASM.
As 3 Dimensões Fundamentais
Dimensão 1: Validação Ativa (O Ativo)
Mede: A exposição real e confirmada do serviço na Internet.
O ativo precisa ter porta aberta e serviço ativo confirmado via Masscan ou validação HTTP/S. Falhas em serviços desligados ou sem rastreabilidade de porta ativa são desqualificadas.
Dimensão 2: Gravidade Técnica (O Impacto)
Mede: A severidade intrínseca do estrago potencial caso a falha seja explorada.
Filtra o ruído de notas baixas (Low/Info), exigindo severidade CRITICAL, HIGH ou MEDIUM com pontuação CVSS v3.1 significativa (≥ 5.0 / 6.5).
Dimensão 3: Ameaça Ativa (O Perigo Real)
Mede: A evidência matemática e histórica de armamento e exploração no mundo real.
Funciona por disjunção lógica (OU): basta acender pelo menos 1 dos 3 sinais de fumaça globais (CISA KEV, Alto EPSS ≥ 20% ou PoCs públicas funcionais).
Os 3 Pilares da Dimensão 3 (Ameaça no Mundo Real)
A Dimensão 3 não exige 100% de coincidência de todas as fontes para evitar pontos cegos perigosos. Ela é ativada se a vulnerabilidade atender a qualquer um dos seguintes pilares:
| Pilar de Inteligência | Origem dos Dados | Critério de Disparo (Gatilho) | Significado Operacional |
|---|---|---|---|
| CISA KEV | CISA Catalog (US Homeland Security) | is_cisa_kev = true |
Arma confirmada em ataques ativos (Prioridade P1 Máxima). Identifica se a falha está sendo explorada em campanhas ativas de Ransomware (Known Ransomware Campaign Use). |
| FIRST EPSS | FIRST.org Machine Learning Model | epss_score ≥ 0.20 (20%) |
Alta probabilidade preditiva de sofrer exploração em massa nos próximos 30 dias.* |
| PoC Weaponization | ExploitDB, Nuclei Templates & GitHub | exploit_count ≥ 1 ou has_pocs = true |
Rastreia exploits públicos e códigos verificados pela comunidade (filtros anti-fake). O motor detecta Templates do Nuclei, o que indica armamento 100% automatizado por botnets. |
*Nota sobre EPSS: Dentro do contexto da Matriz 3D (combinado com ativo exposto e CVSS Crítico), uma probabilidade de 20% já é alarmante. Para análises isoladas e preditivas através dos Quick Filters no menu lateral do painel, o ReconHound aplica uma régua agressiva de High EPSS > 50% para destacar perigo extremo iminente.
Uma vulnerabilidade só é exibida na rota prioritária se satisfizer a conjunção estrita das 3 dimensões:
Cenário Comparativo Prático
Imagine duas vulnerabilidades identificadas pelo pipeline no perímetro da organização:
Vulnerabilidade A: CVSS 9.8 (Crítica Teórica)
- Dimensão 1: Serviço HTTP ativo (Porta 8080).
- Dimensão 2: CVSS 9.8 (Crítica).
- Dimensão 3: Não está no CISA KEV, EPSS = 0.05% (quase zero) e sem nenhuma PoC pública.
Abordagem Tradicional: O time gastaria dias correndo para corrigir essa falha primeiro apenas pela nota nominal.
Vulnerabilidade B: CVSS 7.5 (Ameaça Real Ativa)
- Dimensão 1: Serviço SSL ativo (Porta 443).
- Dimensão 2: CVSS 7.5 (Alta).
- Dimensão 3: Listada no CISA KEV e com arma pública no ExploitDB.
A Decisão do ReconHound: O ReconHound prioriza a Vulnerabilidade B como Prioridade Máxima (P1), pois ela representa perigo iminente de invasão imediata.
No painel lateral do ReconHound, ao ativar o checkbox [✓] 3D Risk Matrix:
- O grafo isola e exibe exclusivamente as rotas completas (Lead → Domínio → IP → Serviço Ativo → Vulnerabilidade) que satisfazem as 3 dimensões.
- Grupos colapsados (clusters) com 0 vulnerabilidades 3D são automaticamente ocultados, e os contadores exibem com precisão apenas as falhas qualificadas.
- No painel lateral (Inspector), a listagem de CVEs, pontuações e exploits exibe estritamente os achados de risco real.