06 - Domínios, Subdomínios e Agrupamento de Ativos
video: https://youtu.be/... no frontmatter da nota.Domínios, Subdomínios e Agrupamento de Ativos
Nota da seção "06 - Análise de Infraestrutura" do capítulo 03 (Indicadores de Ameaças: IOC, IOA, IOB, IOE).
Trata o domínio como objeto de inteligência: registro, registros DNS, enumeração passiva e ativa de subdomínios, wildcards, typosquats e homoglifos, e o agrupamento de ativos por padrão de nomenclatura.
Dialoga com as notas de Certificados TLS, de Hosting e CDN e de Pivoting desta seção, e com a Pirâmide de Dor do capítulo 04.
1. Contexto e Posicionamento na Biblioteca
O domínio é a unidade de controle do adversário. IP é descartável, certificado é barato, mas o domínio é registrado, pago e mantido, e é por ele que a vítima é levada à infraestrutura. Por isso, a enumeração e o agrupamento de domínios e subdomínios sustentam os dois produtos centrais da análise de infraestrutura: a descoberta da superfície do adversário e a superfície própria que precisa ser defendida. A mesma técnica que encontra subdomínios esquecidos de staging no certificado da organização encontra o subdomínio de C2 do operador.
Esta nota percorre o ciclo completo do trabalho com nomes. Começa pelo registro e pelos registros DNS como fonte de dados, passa pela enumeração passiva e ativa de subdomínios, trata das armadilhas de wildcards, cobre typosquats e homoglifos como classe própria de indicadores e termina no agrupamento por padrões de nomenclatura, que transforma listas soltas em clusters de infraestrutura. Os pivôs derivados aqui são formalizados na nota de Pivoting e Correlação de Infraestrutura.
2. O Domínio como Objeto de Inteligência
Todo domínio carrega metadados de registro públicos: registrante, organização, contatos, registrar, nameservers, datas de criação, atualização e expiração. O protocolo de acesso moderno é o RDAP, que substituiu gradualmente o WHOIS legado com respostas estruturadas em JSON. A privacidade de registro, oferecida por padrão em muitos registradores, esconde o nome do comprador, mas não esconde o padrão: a combinação de registrar, país do nameserver, hora exata da criação e forma de pagamento em revenda permanece discriminativa, e o histórico de whois, mantido por serviços comerciais, preserva registros anteriores à ativação da privacidade.
Os registros DNS, por sua vez, funcionam como declarações públicas de propósito. A tabela abaixo resume o que cada tipo de registro revela para o analista de infraestrutura.
| Registro | Conteúdo | Uso analítico típico |
|---|---|---|
| A e AAAA | Endereço IPv4 e IPv6 do nome | Pivô de resolução, histórico por DNS passivo |
| CNAME | Apelido para outro nome | Descobrir origem atrás de CDN, detectar subdomínio órfão com risco de takeover |
| MX | Servidores de e-mail do domínio | Identificar provedor de e-mail, pivô por entrada SPF comum |
| NS | Servidores de nomes autoritativos | Agrupar domínios pela mesma infraestrutura de DNS |
| TXT | Textos livres, SPF, DKIM, DMARC, verificação de serviços | Revelar provedores de nuvem, marketing e integrações em uso |
| SOA | Contato e parâmetros da zona | Identificar e-mail de contato administrativo, TTL de zona |
A leitura combinada desses registros costuma descrever a operação melhor que qualquer página institucional. Um TXT de verificação do provedor de e-mail marketing, um CNAME para plataforma de e-commerce e um MX de suíte de produtividade desenham a pilha da organização, e o adversário lê exatamente os mesmos registros para planejar phishing e tomada de conta. O analista defensivo aplica a mesma leitura para mapear a própria superfície, conectando esta nota ao EASM do capítulo 04.
# Registro estruturado via RDAP e leitura rapida da zona
curl -s "https://rdap.registro.br/domain/exemplo-alvo.com.br" | jq -r '.events[] | [.eventAction, .eventDate] | @tsv'
dig +short exemplo-alvo.com.br A; dig +short exemplo-alvo.com.br MX; dig +short exemplo-alvo.com.br TXT
3. Enumeração Passiva de Subdomínios
A enumeração passiva coleta nomes que já foram observados por terceiros, sem enviar pacote algum ao alvo. As fontes principais são quatro e se complementam em cobertura. Os logs de Certificate Transparency, detalhados na nota de Certificados TLS, registram todo nome coberto por certificado público. O DNS passivo, mantido por provedores de enriquecimento, guarda anos de resoluções observadas em resolução real. Os índices de pesquisa e APIs OSINT, como VirusTotal, SecurityTrails, Shodan e Censys, acumulam respostas de DNS e certificados vistos por varredura global. Por fim, os datasets públicos de dados vazados de zonefiles e repositórios de código revelam nomes citados em arquivos de configuração.
# Enumeracao passiva com amass, agregando CT, DNS passivo e APIs configuradas
amass enum -passive -d exemplo-alvo.com.br -o subdominios_passivo.txt
# Alternativa leve com subfinder, projetado para pipeline
subfinder -d exemplo-alvo.com.br -silent | sort -u > subdominios_subfinder.txt
# Cruzamento rapido de fontes para priorizar nomes novos
comm -12 <(sort -u subdominios_passivo.txt) <(sort -u subdominios_subfinder.txt)
A prática madura trata a enumeração passiva como monitoramento contínuo, e não como tarefa pontual. Uma execução semanal, com comparação contra o snapshot anterior, produz um delta de nomes novos, e o delta é onde mora a inteligência: subdomínio novo não catalogado no inventário interno é candidato a take over, e subdomínio novo em infraestrutura de provedor estrangeiro é candidato a phishing. Esse delta alimenta diretamente o controle INS.4 da seção 15 e as hipóteses do TH.6.
4. Enumeração Ativa e Suas Cautelas
A enumeração ativa provoca o alvo: brute force de nomes contra servidores DNS autoritativos, varredura de resolução de listas gigantes e sondagem de serviços HTTP em cada nome resolvido. Ferramentas como o gobuster em modo DNS e o dnsrecon executam essa sondagem com listas de nomes comuns, e a resolução ativa confirma o que as fontes passivas apenas sugeriram. O ganho real é descobrir nomes nunca publicados em certificado, especialmente quando a organização usa wildcards que escondem a enumeração por CT.
As cautelas são obrigatórias e de três tipos. Primeiro, autorização: varredura ativa de terceiros sem permissão pode violar termos de uso e leis locais, e a biblioteca trata a diferença entre alvo próprio, alvo de cliente com contrato e alvo de investigação de ameaça, caso em que a ação é só leitura de fontes públicas. Segundo, ritmo: consultas em alta taxa contra os nameservers do alvo deixam rastro inconfundível nos logs do operador e podem derrubar DNS frágil. Terceiro, proporção: brute force de nomes com dicionário curto cobre a maior parte do valor a custo mínimo, e o retorno marginal de listas de milhões de nomes não justifica o ruído na maioria das investigações.
5. Wildcards e Falsos Positivos
Um registro curinga, como *.exemplo-alvo.com.br, faz qualquer nome consultado resolver, e essa propriedade contamina toda a enumeração: o brute force devolve milhares de nomes inexistentes que resolvem para o mesmo IP. O teste de wildcard é simples e obrigatório antes de qualquer enumeração ativa, consistindo em consultar um nome aleatório improvável. Se o nome aleatório resolve, a zona tem wildcard, e a enumeração por resolução perde valor, restando a comparação de conteúdo e de certificado por nome para separar hosts reais.
# Teste de wildcard com um nome improvavel
dig +short xk7qz-nao-existe.exemplo-alvo.com.br
# Se retornar endereco, a zona tem wildcard; registre o IP de resposta padrao
# Com wildcard ativo, diferencie hosts reais por resposta HTTP
for host in app intranet xk7qz-nao-existe; do
code=$(curl -s -o /dev/null -w "%{http_code}" -m 8 "https://$host.exemplo-alvo.com.br")
echo "$host $code"
done
O mesmo cuidado vale no sentido inverso: a ausência de resposta em um momento não prova inexistência, porque o DNS é distribuído e o cache desigual. O DNS passivo ajuda ao guardar o histórico, e é nele que aparecem os subdomínios que existiram no passado e que hoje apontam para provedores com subdomínio disponível para registro, o cenário clássico de takeover. A triagem de risco de takeover compara o CNAME atual com o catálogo de serviços que oferecem subdomínio, como plataformas de hospedagem estática, help desks e serviços de CDN, e verifica se o destino ainda está disponível para alocação.
6. Typosquats, Homoglifos e Domínios de Ameaça Registrados
O typosquatting registra nomes que parecem o domínio da marca para capturar erros de digitação e confundir vítimas. As permutações são sistematizáveis, e a ferramenta dnstwist as gera com algoritmos consagrados, marcando quais estão registrados e resolvendo. A tabela abaixo resume as classes de permutação que todo analista deve reconhecer à primeira vista.
| Classe de permutação | Exemplo para exemplo.com.br | Risco típico |
|---|---|---|
| Omissão | exmplo.com.br | Erro de digitação da vítima em phishing |
| Transposição | exepmlo.com.br | Erro de digitação em teclado rápido |
| Inserção | exemploo.com.br | Captura de erro de dupla tecla |
| Substituição de tecla próxima | exwmple.com.br | Erro de digitação em layout físico |
| Troca de vogal | exemple.com.br | Confusão de grafia entre idiomas |
| Hifenização e separação | ex-emplo.com.br | Leitura enganosa em listas impressas |
| Bitsquatting | examplo com bit invertido no rótulo | Erro de hardware raro, usado de forma oportunista |
| Homoglifo IDN | xn--exampl-9ua.com.br | Imitação visual perfeita com caracteres Unicode |
O homoglifo merece atenção especial porque substitui letras por caracteres visualmente idênticos de outros alfabetos, como o a cirílico, e o nome registrado aparece no WHOIS em formato punycode com o prefixo xn--. Navegadores modernos exibem o punycode justamente para denunciar essa imitação, e a leitura do SAN do certificado, descrita na nota de Certificados TLS, entrega a mesma denúncia. Complementarmente, o monitoramento de marcas acompanha TLDs de risco, como os que oferecem registro gratuito ou imediato, e domínios recém-registrados contendo a marca, que costumam ser emitidos com certificado gratuito no mesmo dia.
# Gerar e checar permutacoes registradas para o dominio da marca
dnstwist --registered --format csv exemplo.com.br > permutacoes.csv
# Verificar punycode suspeito e resolver
dig +short "xn--exampl-9ua.com.br" A
whois "xn--exampl-9ua.com.br" | grep -iE "creation|registrar"
O monitoramento precisa ser configurável, e não improvisado a cada campanha. O fragmento abaixo declara, em formato simples, o conjunto de regras que um monitor de marca executa diariamente contra CT, DNS passivo e feeds de domínios recém-registrados, com severidade por classe de permutação.
monitor_marca:
marca: exemplo
tld_legitimo: [com.br, com]
classes_monitoradas:
- omitido
- transposto
- homoglifo
- marca-tld-novo
severidade:
homoglifo: critica
marca-tld-novo: alta
omitido: media
acoes:
- registrar evidencia com data e resolução
- notificar resposta a incidentes
- abrir pedido de derrubada no registrar
7. Agrupamento por Padrões de Nomenclatura
A enumeração produz uma lista; a inteligência exige estrutura. O agrupamento por padrões de nomenclatura aplica o princípio de que operadores reusam convenções, e as convenções são identificáveis. No lado defensivo, as convenções corporativas, como vpn01, owa, rh-interno, criam um vocabulário previsível que a enumeração explora e que o inventário precisa validar. No lado ofensivo, o operador de infraestrutura também repete hábitos: o mesmo sufixo em domínios de campanhas distintas, o mesmo esquema de subdomínios cdn, api, static e docs sobre domínios descartáveis, ou o mesmo template visual por trás de nomes diferentes.
O agrupamento em prática segue três passos. Primeiro, extrair os rótulos dos nomes e normalizar, removendo TLD e marca. Segundo, agrupar por semelhança de padrão, com atenção a sufixos numéricos, separadores e palavras de função. Terceiro, validar cada grupo com um pivô independente, como certificado comum, nameserver comum ou template HTTP comum, para que o agrupamento não vire coincidência elevada a hipótese. O resultado é o cluster de infraestrutura, com nomes, IPs, certificados e confiança, que alimenta o grafo descrito na nota de Pivoting.
Cluster hipotetico observado em campanha de phishing bancario:
padrao de dominio: [palavra]-segura-[tld alternativo]
nomes: login-segura.top, app-segura.top, conta-segura.top
pivots de validacao:
certificado: mesmo endereço de chave publica nos tres dominios
nameserver: ns1.hosting-descartavel.io comum aos tres
template: hash de favicon identico e cabecalho Server igual
confianca do cluster: alta, tres pivots independentes coincidentes
8. Exemplo Prático de Análise
A organização recebe denúncia de phishing em conta-alterada.top e precisa entender o alcance. A enumeração passiva do domínio malicioso, via CT e DNS passivo, revela os subdomínios login e app e o histórico de três IPs distintos em cinco dias, padrão de rotação em nuvem barata. O certificado coletado por SNI em cada IP apresenta o mesmo endereço de chave pública em dois domínios irmãos, e o whois dos três domínios mostra criação em janelas de minutos, mesmo registrar e privacidade ativada, com o nameserver apontando para provedor repetido em outros casos da base interna.
O produto final é o cluster descrito na seção anterior, entregue com três indicadores bloqueáveis, os três domínios, um indicador de médio prazo, o par nameserver e provedor de nuvem, e um indicador de longo prazo, o template de favicon e certificado. A contagem final traduz o valor: a denúncia de um domínio virou três domínios bloqueados no dia, uma regra de monitoramento por nameserver e uma hipótese de hunting por template no proxy.
9. Erros Comuns e Pontos de Atenção
- Confundir resolução passada com atual: o DNS passivo guarda resoluções antigas, e pivô por IP requer janela de tempo; dois domínios que compartilharam IP em 2021 não formam relação em 2025.
- Enumerar sem checar wildcard: a zona com curinga transforma brute force em lista infinita de nomes fantasma; teste o nome aleatório antes de confiar em qualquer lista de resolução.
- Tratar o delta como ruído: a comparação semanal contra snapshot anterior é o produto mais valioso da enumeração; executar a varredura e ignorar o que mudou desperdiça a fonte.
- Subestimar o punycode: nomes com prefixo xn-- passam despercebidos em relatórios e devem ser expandidos e traduzidos sempre, porque o homoglifo é projetado para enganar a olho nu.
- Agrupar sem validar: semelhança de nomenclatura é hipótese, e o cluster só vira evidência com pivô independente, como certificado, nameserver ou template comum.
- Ignorar o IPv6: muita enumeração cobre só A, e campanhas mantêm registros AAAA paralelos; o IPv6 é fonte de endereços próprios, com rotação e histórico diferentes.
- Abrir mão do histórico de whois: a privacidade atual esconde o registro atual, não o passado; serviços de histórico revelam o operador que ativou privacidade depois do primeiro evento.
10. Integração com o Restante da Biblioteca
Os nomes enumerados e agrupados aqui são a entrada da nota de Pivoting e Correlação de Infraestrutura, que formaliza os pivôs por nameserver, por certificado e por padrão de nomenclatura, e da nota de Certificados TLS, que fornece a fonte CT de enumeração. No capítulo 04, a Pirâmide de Dor classifica o domínio como nível de dor moderada, e o EASM recebe desta nota a mecânica de delta semanal para descobrir a própria superfície. Na seção 15, o controle INS.3 executa a enumeração defensiva e o INS.4 monitora as mudanças, e as hipóteses do TH.6 consomem os clusters como matéria-prima de caça.
O fechamento desta nota entrega a unidade básica do trabalho com infraestrutura: o nome normalizado, com registro, histórico e vizinhança, pronto para entrar no grafo. A nota seguinte assume essa unidade e responde à pergunta de como amarrar unidades dispersas em um caso, transformando listas em cadeia de evidência com confiança explícita.