Introdução
A coleta de inteligência do Domain Name System (DNS) é um primeiro passo crítico na fase de reconhecimento da cibersegurança. O DNS atua como a lista telefônica da internet, traduzindo nomes de domínio legíveis por humanos em endereços IP. Ao consultar registros DNS, profissionais de segurança podem descobrir uma riqueza de informações sobre a infraestrutura de um alvo, incluindo servidores de e-mail, subdomínios e configurações de segurança.
O DNS é especialmente valioso no reconhecimento porque revela relacionamentos de infraestrutura, em vez de apenas um ponto de extremidade. Um único domínio pode apontar para servidores web, provedores de e-mail, tokens de validação, aliases e, às vezes, ambientes inteiros esquecidos. É por isso que a inteligência de DNS frequentemente expande drasticamente o escopo de uma avaliação.
Neste laboratório, você aprenderá a usar duas ferramentas de linha de comando poderosas, host e dig, para realizar reconhecimento de DNS. Usaremos um domínio deliberadamente vulnerável, zonetransfer.me, que foi projetado especificamente por pesquisadores de segurança para praticar consultas DNS e transferências de zona com segurança. Você aprenderá a extrair registros IP básicos, detalhes de servidores de e-mail, registros de texto e até mesmo tentar uma transferência de zona completa para mapear toda a pegada de DNS do alvo.
Consultar Registros de IP Básicos (A/AAAA)
Nesta etapa, você aprenderá a recuperar os registros DNS mais fundamentais: registros A e AAAA. Um registro A mapeia um nome de domínio para um endereço IPv4, enquanto um registro AAAA o mapeia para um endereço IPv6. Encontrar esses endereços IP é essencial, pois informa exatamente onde o servidor web principal do alvo está hospedado.
Vale lembrar que domínios e hosts não são o mesmo conceito. Um nome de domínio é um rótulo no DNS. Um endereço IP é onde o tráfego é finalmente roteado. O reconhecimento geralmente começa traduzindo entre essas duas visões.
Começaremos usando o comando host, que é um utilitário simples para realizar pesquisas de DNS. Certifique-se de estar no seu diretório de trabalho padrão ~/project.
Execute o seguinte comando para realizar uma pesquisa básica no nosso domínio alvo:
host zonetransfer.me
Você deverá ver uma saída semelhante a esta, mostrando o endereço IPv4 e os servidores de e-mail associados ao domínio:
zonetransfer.me has address 5.196.105.14
zonetransfer.me mail is handled by 10 alt2.aspmx.l.google.com.
zonetransfer.me mail is handled by 20 aspmx2.googlemail.com.
zonetransfer.me mail is handled by 10 alt1.aspmx.l.google.com.
zonetransfer.me mail is handled by 20 aspmx3.googlemail.com.
zonetransfer.me mail is handled by 0 aspmx.l.google.com.
zonetransfer.me mail is handled by 20 aspmx4.googlemail.com.
zonetransfer.me mail is handled by 20 aspmx5.googlemail.com.
Embora o host seja ótimo para verificações rápidas, o comando dig (Domain Information Groper) oferece uma saída muito mais detalhada e flexível. Vamos usar o dig para solicitar especificamente o registro A. Usaremos a flag +short para manter a saída limpa, mostrando apenas o endereço IP.
Para salvar nossos dados de reconhecimento para análise posterior, redirecionaremos a saída do nosso comando dig para um arquivo de texto chamado a_records.txt. Execute o seguinte comando:
dig A zonetransfer.me +short > ~/project/a_records.txt
Você pode visualizar o conteúdo do arquivo que acabou de criar usando o comando cat:
cat ~/project/a_records.txt
A saída exibirá o endereço IPv4 do domínio alvo. Salvar suas descobertas é um hábito crucial na coleta de inteligência, pois permite que você construa um perfil abrangente do seu alvo ao longo do tempo.
5.196.105.14
Consultar Registros de E-mail e Texto (MX, TXT)
Nesta etapa, vamos nos aprofundar na infraestrutura do alvo consultando registros de Mail Exchange (MX) e de Texto (TXT).
Registros MX especificam os servidores de e-mail responsáveis por aceitar mensagens de e-mail em nome de um domínio. Identificar esses servidores pode revelar quais provedores de e-mail de terceiros o alvo utiliza (como Google Workspace ou Microsoft 365) ou se eles hospedam sua própria infraestrutura de e-mail.
Registros TXT são igualmente valiosos porque frequentemente descrevem relacionamentos de confiança, como quais sistemas têm permissão para enviar e-mail ou quais serviços externos foram verificados para o domínio.
Vamos consultar os registros MX para o nosso domínio alvo usando o dig:
dig MX zonetransfer.me +short
Você verá uma lista de servidores de e-mail junto com seus números de prioridade (números menores significam maior prioridade):
20 aspmx5.googlemail.com.
10 alt1.aspmx.l.google.com.
10 alt2.aspmx.l.google.com.
20 aspmx2.googlemail.com.
20 aspmx3.googlemail.com.
0 aspmx.l.google.com.
20 aspmx4.googlemail.com.
Em seguida, veremos os registros TXT. Os administradores usam registros TXT para adicionar texto arbitrário ao DNS de um domínio. Em cibersegurança, os registros TXT são altamente valiosos porque frequentemente contêm regras de Sender Policy Framework (SPF), configurações de DomainKeys Identified Mail (DKIM) e vários tokens de verificação de site. Eles podem revelar faixas de IP internas autorizadas a enviar e-mails ou serviços de terceiros integrados ao domínio.
Vamos consultar os registros TXT e salvar a saída em um arquivo chamado txt_records.txt no seu diretório de trabalho:
dig TXT zonetransfer.me +short > ~/project/txt_records.txt
Visualize o conteúdo do arquivo para ver quais informações os administradores deixaram nos registros TXT:
cat ~/project/txt_records.txt
Você pode notar entradas começando com v=spf1, que definem as políticas de envio de e-mail, ou várias strings de verificação. Essas informações ajudam a mapear os relacionamentos de confiança que o domínio alvo possui com outros serviços.
"google-site-verification=tyP28J7JAUHA9fw2sHXMgcCC0I6XBmmoVi04VlMewxA"
Descobrir Subdomínios (CNAME)
Nesta etapa, você aprenderá sobre registros de Canonical Name (CNAME). Um registro CNAME é usado para mapear um nome de alias para um nome de domínio verdadeiro ou canônico. Por exemplo, www.example.com pode ser um CNAME apontando para example.com.
Descobrir subdomínios é uma parte crítica da expansão da sua superfície de ataque. Frequentemente, as organizações protegem seu site principal, mas esquecem de atualizar ou proteger subdomínios mais antigos e esquecidos (como dev.target.com ou testing.target.com).
Vamos consultar um subdomínio específico que se sabe existir no nosso alvo de prática para ver como os registros CNAME se comportam. Consultaremos testing.zonetransfer.me e salvaremos os resultados.
Execute o seguinte comando para consultar o registro CNAME e salvá-lo em cname_records.txt:
dig CNAME testing.zonetransfer.me +short > ~/project/cname_records.txt
Agora, inspecione o arquivo que você acabou de criar:
cat ~/project/cname_records.txt
Você deve ver uma saída como www.zonetransfer.me.. Isso nos diz que testing.zonetransfer.me é, na verdade, apenas um alias apontando para outro domínio completamente diferente. Encontrar esses relacionamentos pode levar um pesquisador de segurança a descobrir provedores de hospedagem de terceiros ou infraestrutura oculta que pertence ao alvo.
Tentar Transferência de Zona DNS
Nesta etapa final, você tentará uma Transferência de Zona DNS. Uma transferência de zona (especificamente usando o tipo de consulta AXFR) é um mecanismo usado por servidores DNS para replicar bancos de dados DNS em vários servidores.
As transferências de zona são um exemplo clássico de um recurso administrativo legítimo que se torna um problema de segurança quando o controle de acesso é fraco. O mecanismo em si é normal. A configuração incorreta é permitir que estranhos arbitrários solicitem os dados completos.
Se um servidor DNS estiver configurado incorretamente, ele pode permitir que qualquer usuário anônimo solicite uma cópia completa do arquivo de zona. Essa é uma vulnerabilidade de segurança massiva, pois fornece instantaneamente ao atacante um mapa completo de cada subdomínio, endereço IP e registro associado ao domínio, contornando a necessidade de adivinhar ou realizar ataques de força bruta em subdomínios.
Para tentar uma transferência de zona, primeiro precisamos saber os servidores de nomes (NS) autoritativos para o domínio. Vamos consultar os registros NS:
dig NS zonetransfer.me +short
Você deve ver uma saída listando os servidores de nomes, como:
nsztm1.digi.ninja.
nsztm2.digi.ninja.
Agora que temos o servidor de nomes (nsztm1.digi.ninja), podemos solicitar diretamente a ele uma transferência de zona completa usando o tipo de registro axfr. A sintaxe para o dig exige que especifiquemos o domínio alvo e o servidor de nomes específico que estamos consultando (usando o símbolo @).
Execute o seguinte comando para tentar a transferência de zona e salvar a enorme quantidade de saída em zone_transfer.txt:
dig axfr zonetransfer.me @nsztm1.digi.ninja > ~/project/zone_transfer.txt
Assim que o comando for concluído, visualize as primeiras linhas do arquivo usando o comando head:
head -n 20 ~/project/zone_transfer.txt
Você verá um despejo completo dos registros DNS do domínio, incluindo subdomínios ocultos, endereços IP internos e várias notas de texto deixadas pelos administradores. Em um cenário do mundo real, encontrar uma transferência de zona aberta é uma descoberta crítica que acelera significativamente a fase de reconhecimento.
Resumo
Parabéns! Você concluiu com sucesso o laboratório de Coleta de Inteligência de DNS.
Neste laboratório, você aprendeu a aproveitar os comandos host e dig para realizar reconhecimento passivo em um domínio alvo. Você explorou como extrair endereços IPv4 básicos (registros A), identificar infraestrutura de e-mail (registros MX) e descobrir políticas de segurança e integrações de terceiros (registros TXT). Você também aprendeu a rastrear aliases de domínio (registros CNAME) para descobrir subdomínios ocultos. Finalmente, você executou com sucesso uma transferência de zona DNS (AXFR) contra um servidor de nomes configurado incorretamente, demonstrando como uma única vulnerabilidade pode expor toda a topologia de rede externa de uma organização.
Essas habilidades formam a base do mapeamento de rede externa e são essenciais para qualquer profissional de cibersegurança que realize testes de penetração ou avaliações de vulnerabilidade.



