Tutorials

dnsEnum - DNS Enumeration Tool

dnsenum è uno strumento di enumerazione DNS scritto in Perl, utilizzato per raccogliere informazioni dettagliate su un dominio attraverso tecniche di interrogazione DNS. È particolarmente utile nel pr

#recon#enumeration#dns

dnsEnum - DNS Enumeration Tool

Introduzione

dnsenum è uno strumento di enumerazione DNS scritto in Perl, utilizzato per raccogliere informazioni dettagliate su un dominio attraverso tecniche di interrogazione DNS. È particolarmente utile nel processo di ricognizione (reconnaissance) durante un penetration test o un'attività di information gathering.


Caratteristiche Principali

dnsenum permette di:

  • Recuperare i nameserver (NS) e i mail exchanger (MX).
  • Effettuare un brute-force di sottodomini basato su un dizionario.
  • Eseguire un trasferimento di zona (Zone Transfer) se mal configurato.
  • Trovare indirizzi IP associati ai record A e CNAME.
  • Effettuare la risoluzione inversa degli IP per trovare domini aggiuntivi.
  • Recuperare dati WHOIS per il dominio target.

Installazione di dnsEnum

Su Kali Linux e altre distribuzioni basate su Debian, dnsenum è preinstallato. Se non fosse disponibile, può essere installato con:

sh
sudo apt update && sudo apt install dnsenum -y

Oppure può essere clonato da GitHub:

sh
git clone https://github.com/fwaeytens/dnsenum.git
cd dnsenum
chmod +x dnsenum.pl

Utilizzo di dnsEnum

1. Enumerazione Base

Esegue una scansione di base sul dominio target.

sh
dnsenum example.com

2. Eseguire una Scansione Completa

Include ricerca WHOIS, zone transfer, risoluzione inversa e brute-force.

sh
dnsenum --enum example.com

3. Forzare il Transfer di Zona

sh
dnsenum --nocolor --no-reverse --zonetransfer example.com

4. Brute-Force sui Sottodomini

Utilizzando un file di dizionario personalizzato:

sh
dnsenum --dnsserver 8.8.8.8 -f subdomains.txt example.com

5. Risoluzione Inversa degli IP

sh
dnsenum --no-reverse example.com

6. Salvataggio dei Risultati su File

sh
dnsenum --enum -o output.txt example.com

Strategie di Utilizzo

Quando Usare dnsEnum?

  • Durante la fase di reconnaissance in un penetration test.
  • Per identificare sottodomini nascosti.
  • Per verificare configurazioni errate nei DNS (es. Zone Transfer abilitato).
  • Per raccogliere informazioni su competitor o analisi OSINT.

Quando Evitarlo?

  • Se si lavora su domini senza autorizzazione (potrebbe violare leggi e policy).
  • Se il target ha implementato rate-limiting o blacklist sui resolver DNS.

Mitigazioni Contro Attacchi con dnsEnum

1. Disabilitare il DNS Zone Transfer limitando i trasferimenti ai soli nameserver autorizzati:

sh
allow-transfer { none; };
2. Utilizzare rate-limiting per evitare brute-force sui sottodomini. 3. Monitorare il traffico DNS per individuare attività sospette. 4. Implementare DNSSEC per proteggere l'integrità dei record DNS.


Conclusione

dnsenum è uno strumento potente per l'enumerazione DNS e la raccolta di informazioni su un dominio. Tuttavia, il suo utilizzo deve essere fatto con responsabilità, rispettando le normative legali. La protezione da attacchi basati su dnsEnum richiede una corretta configurazione dei server DNS e il monitoraggio del traffico di rete.