
Wrapper de MassDNS escrito en Go para enumerar subdominios válidos usando fuerza bruta activa, así como resolver subdominios con filtrado de comodines y soporte fácil de entrada y salida.
Características • Instalación • Ejecución • Comodín • Licencia • Discord
shuffleDNS es un wrapper alrededor de massdns, escrito en Go, que permite enumerar subdominios válidos mediante fuerza bruta activa, así como resolver subdominios con manejo de comodines y soporte fácil para entrada y salida.
Basado en el trabajo del proyecto massdns por @blechschmidt.
shuffledns -h
Esto mostrará la ayuda de la herramienta. Aquí están todos los parámetros que soporta.
shuffleDNS is a wrapper around massdns written in go that allows you to enumerate valid subdomains using active bruteforce as well as resolve subdomains with wildcard handling and easy input-output support.
Usage:
./shuffledns [flags]
Flags:
Flags:
INPUT:
-d, -domain string[] Domain to find or resolve subdomains for
-ad, -auto-domain Automatically extract root domains
-l, -list string File containing list of subdomains to resolve
-w, -wordlist string File containing words to bruteforce for domain
-r, -resolver string File containing list of resolvers for enumeration
-tr, -trusted-resolver string File containing list of trusted resolvers
-ri, -raw-input string Validate raw full massdns output
-mode string Execution mode (bruteforce, resolve, filter)
RATE-LIMIT:
-t int Number of concurrent massdns resolves (default 10000)
UPDATE:
-up, -update update shuffledns to latest version
-duc, -disable-update-check disable automatic shuffledns update check
OUTPUT:
-o, -output string File to write output to (optional)
-j, -json Make output format as ndjson
-wo, -wildcard-output string Dump wildcard ips to output file
CONFIGURATIONS:
-m, -massdns string Path to the massdns binary
-mcmd, -massdns-cmd string Optional massdns commands to run (example '-i 10')
-directory string Temporary directory for enumeration
OPTIMIZATIONS:
-retries int Number of retries for dns enumeration (default 5)
-sw, -strict-wildcard Perform wildcard check on all found subdomains
-wt int Number of concurrent wildcard checks (default 250)
DEBUG:
-silent Show only subdomains in output
-version Show version of shuffledns
-v Show Verbose output
-nc, -no-color Don't Use colors in output
shuffledns requiere go1.24+ para instalarse correctamente. Ejecuta el siguiente comando para instalar la última versión:
go install -v github.com/projectdiscovery/shuffledns/cmd/shuffledns@latest
shuffledns soporta dos tipos de operaciones:
Resolución de subdominios
Para resolver una lista de subdominios, puedes pasar la lista mediante la opción -list.
shuffledns -d example.com -list example-subdomains.txt -r resolvers.txt -mode resolve
Esto ejecutará la herramienta contra los subdominios en example-subdomains.txt y devolverá los resultados. La herramienta utiliza los resolutores especificados con la bandera -r para realizar la resolución.
También puedes pasar la lista de subdominios por la entrada estándar (STDIN). Esto permite una fácil integración en pipelines de automatización.
subfinder -d example.com | shuffledns -d example.com -r resolvers.txt -mode resolve
Esto utiliza los subdominios encontrados pasivamente por subfinder y los resuelve con shuffledns, devolviendo solo los subdominios únicos y válidos.
Fuerza bruta de subdominios
shuffledns también soporta la fuerza bruta sobre un objetivo con una lista de palabras determinada. Puedes usar la bandera -w para pasar una lista de palabras que se usará para generar permutaciones que serán resueltas mediante massdns.
shuffledns -d hackerone.com -w wordlist.txt -r resolvers.txt -mode bruteforce
Esto ejecutará la herramienta contra hackerone.com con la lista de palabras wordlist.txt. La fuerza bruta del dominio también se puede realizar con entrada estándar, como en el ejemplo anterior de resolución de subdominios.
echo hackerone.com | shuffledns -w wordlist.txt -r resolvers.txt -mode bruteforce
Manejo de comodinesUna característica especial de |
-d).shuffledns está distribuido bajo Licencia GPL v3
Requisito previo
La herramienta también necesita una lista de resolutores válidos. El proyecto dnsvalidator se puede utilizar para generar estas listas. También debes proporcionar una lista de palabras; puedes usar una lista personalizada o utilizar la commonspeak2-wordlist. |