Saltar al contenido principal

DNS

DNS Recon (Permutaciones, Resolución, Bruteforce y más)​

El objetivo aquí es descubrir la mayor cantidad de subdominios válidos posible, usando múltiples técnicas para encontrar activos ocultos, no indexados o sin vínculos públicos.

Técnicas clave​

  1. Enumeración pasiva (desde fuentes públicas)

  2. Permutación y wordlists

  3. Bruteforce de subdominios

  4. Resolución DNS masiva

  5. Wordlist personalizada a partir del contenido

  6. Wildcard / catch-all detección

  7. DNS bruteforce interno (si hay acc o)

Herramientas​


Enumeración pasiva (fuentes OSINT)​

subfinder -d target.com -o subdomains.txt

🔗 Amass passive

amass enum -passive -d target.com
  • 🔗 Assetfinder

  • 🔗 crt.sh
    → Buscar %.target.com para obtener subdominios desde certificados

Permutaciones​

  • 🔗 DNSGen
    Usa subdominios existentes para generar nuevas combinaciones dev1-super.walmart.com
cat subdomains.txt | dnsgen - | tee permuted.txt
echo subdomains.txt | dnsgen - | massdns -r resolvers.txt -t A -o L > test.txt

🔗 gotator
Permutaciones agresivas con wordlists

gotator -sub subdomains.txt -perm permutations.txt -depth 1 -silent > permuted.txt

Wordlists útiles:

  • SecLists/Discovery/DNS/namelist.txt

  • commonspeak2/dns.txt

  • all.txt de dnsgen

Bruteforce / Wordlists​

🔗 puredns
Rápido, cachea resoluciones y permite wordlists enormes

puredns bruteforce wordlist.txt target.com -r resolvers.txt -w found.txt

🔗 massdns
Brutalmente rápido con 1M+ registros

Resolución DNS masiva​

  • 🔗 dnsx
    Para filtrar solo subdominios que resuelven
cat subs.txt | dnsx -silent -a -resp -o resolved.txt

🔗 puredns

puredns resolve potential-subs.txt -r resolvers.txt -w live.txt

Detección de Wildcard DNS​

A veces un DNS devuelve cualquier cosa como válida (*.target.com):

  • Prueba:
dig madeup123456.target.com +short

O usa:

puredns bruteforce wordlist.txt target.com -r resolvers.txt --wildcard-tests 6

También puedes detectarlo con dnsx:

dnsx -json -a -retries 2 -rl 100 -silent -l list.txt | jq .

Reverso de PTR / IP​

Si tienes rangos de IP (de ASN recon), busca si tienen nombres DNS válidos:

dnsx -ptr -l ips.txt -silent -o hostnames.txt

DNS en recon interno (AD, VPN, cloud)​

Si accedes a una VPN interna o cloud privado, puedes usar dig, resolvectl, nslookup para encontrar zonas internas como:

  • int.target.com

  • corp.local

  • *.internal

  • *.dev