En el ecosistema de reconocimiento ofensivo y auditoría de superficie de ataque hay utilidades que se han vuelto casi obligatorias para muchos investigadores, y shuffledns es una de ellas. El proyecto, mantenido por ProjectDiscovery, se presenta como un wrapper de massdns escrito en Go para dos tareas muy concretas: resolver grandes listas de subdominios y lanzar bruteforce activo con manejo de wildcards. Dicho de forma más simple, sirve para separar con rapidez los subdominios que realmente existen del ruido que suele aparecer en este tipo de procesos.
La herramienta no es nueva, pero sí sigue siendo muy relevante porque ataca uno de los problemas clásicos del reconocimiento DNS a escala: la velocidad sin perder demasiado control sobre los falsos positivos. Su enfoque combina la potencia de massdns con una capa más cómoda de uso, integración por tuberías y filtrado de resultados. Eso explica por qué se ha consolidado dentro del catálogo técnico de ProjectDiscovery, junto a utilidades como subfinder o dnsx, muy usadas en flujos de enumeración moderna.
Qué hace exactamente shuffledns
Según su repositorio oficial, shuffledns soporta dos modos principales de operación: resolve y bruteforce. En el primero toma una lista de subdominios y comprueba cuáles resuelven de verdad; en el segundo genera combinaciones a partir de un dominio y una wordlist para intentar descubrir nuevos hosts válidos. A eso añade soporte para entrada y salida por stdin/stdout, algo especialmente útil cuando se encadena con otras herramientas dentro de scripts o pipelines de recon.
Uno de sus puntos más interesantes es el tratamiento de los wildcards DNS. Este problema es bien conocido en seguridad ofensiva: algunos dominios responden a multitud de subdominios inexistentes, lo que llena los resultados de basura. ProjectDiscovery destaca que shuffledns intenta manejar ese escenario de forma “inteligente”, rastreando patrones de resolución e iterando comprobaciones de wildcard por niveles cuando detecta demasiados hosts asociados a una misma IP. Esa capacidad es una de las razones por las que la herramienta sigue teniendo valor frente a aproximaciones más simples.
Requisitos, instalación y estado actual del proyecto
Shuffledns no funciona solo. Su propio README deja claro que necesita massdns instalado para operar, además de un listado de resolvers válidos. Para generar esos resolvers, el proyecto recomienda apoyarse en herramientas como dnsvalidator, y para el bruteforce también exige aportar una wordlist. En otras palabras, shuffledns simplifica mucho el flujo, pero sigue dependiendo de una preparación mínima del entorno.
En cuanto a instalación, el repositorio indica que actualmente requiere Go 1.24 o superior y se instala con go install. También puede detectar automáticamente el binario de massdns si se encuentra en rutas habituales del sistema. La última release visible en GitHub es la v1.2.0, publicada el 9 de diciembre de 2025, e incluye mejoras como extracción automática de dominios raíz a partir de listas de entrada, procesamiento por lotes para streaming de dominios y ajustes en el filtrado de wildcards. El proyecto se distribuye bajo licencia GPL v3.
Por qué sigue siendo útil en 2026
Lo que mantiene vivo a shuffledns no es solo la velocidad, sino su papel dentro de workflows reales. El propio proyecto muestra ejemplos de uso junto a subfinder, de forma que primero se descubren subdominios por métodos pasivos y después se validan con shuffledns. Ese patrón sigue siendo muy habitual en equipos de bug bounty, red teaming y ASM, donde conviene cruzar varias fuentes y filtrar resultados lo antes posible para no perder tiempo en hosts irrelevantes.
Además, su integración dentro del universo ProjectDiscovery le da una ventaja práctica: no es una herramienta aislada, sino una pieza más dentro de un stack de reconocimiento bastante maduro. Incluso el propio ecosistema de ProjectDiscovery sigue citando a shuffledns en documentación y repositorios relacionados, como ocurre con dnsx, que menciona soporte de wildcard “como shuffledns”. Eso refuerza la idea de que el proyecto no se ha quedado como una simple capa sobre massdns, sino como un componente reconocido en pipelines más amplios.
En el fondo, shuffledns responde a una necesidad muy concreta: descubrir y validar superficie DNS de forma masiva sin complicar demasiado la operativa. No sustituye al criterio del analista, ni evita por sí solo los errores típicos de resolución o de abuso de resolvers, pero sí reduce bastante la fricción entre una wordlist grande y una lista final de subdominios que merecen atención. En un sector donde cada minuto cuenta y donde el ruido puede ser enorme, esa propuesta sigue teniendo mucho sentido.
Preguntas frecuentes
¿Qué diferencia hay entre shuffledns y massdns?
Shuffledns es una capa adicional escrita en Go que usa massdns por debajo, pero añade una experiencia más cómoda para bruteforce, resolución, filtrado de wildcards e integración por entrada y salida estándar.
¿Se puede usar shuffledns sin massdns instalado?
No. El repositorio oficial indica expresamente que massdns es un requisito previo para que shuffledns pueda funcionar.
¿Cuál es la última versión pública de shuffledns?
La última release visible en GitHub es la v1.2.0, publicada el 9 de diciembre de 2025.
¿Para qué sirve el manejo de wildcards en shuffledns?
Sirve para reducir falsos positivos cuando un dominio responde a muchos subdominios inexistentes. Shuffledns intenta detectar ese comportamiento y filtrar mejor los resultados.

