Dome Herramienta de Enumeración de Subdominios
Dome Herramienta de Enumeración de Subdominios

Dome: Una Herramienta de Enumeración de Subdominios

Dome es un script Python rápido y fiable que realiza un escaneo activo y/o pasivo para obtener subdominios y buscar puertos abiertos. Esta herramienta está recomendada para los bug bounty hunters y pentester en su fase de reconocimiento.

Si quieres utilizar más motores OSINT, rellena el archivo config.api con los tokens de API necesarios

Modo pasivo

Utiliza técnicas OSINT para obtener subdominios del objetivo. Este modo no realizará ninguna conexión con el objetivo por lo que es indetectable. El uso básico de este modo es:

python dome.py -m passive -d domain

Modo activo

Realiza ataques de fuerza bruta para obtener subdominios vivos. Hay 2 tipos de fuerza bruta:

  • Fuerza bruta pura: Comprueba los subdominios desde a.dominio.com hasta zzz.dominio.com (26 + 26^2 + 26^3 = 18278 subdominios) esta fuerza bruta se puede desactivar con -nb, --no-bruteforce
  • Basado en una lista de palabras: Utiliza una lista de palabras personalizada proporcionada por el usuario mediante la flag -w, --wordlist. Si no se especifica ninguna lista de palabras, este modo no se ejecutará

Este modo también realizará el ataque en modo pasivo, pero en este caso, se comprueba la conexión para asegurarse de que el subdominio sigue vivo. Para desactivar el escaneo pasivo en el modo de escaneo activo, utiliza la flag --no-passive.

El uso básico de este modo es:

python dome.py -m active -d domain -w wordlist.txt

Añade la opción -p o una opción de puerto incorporada (véase el menú de uso) para realizar el escaneo de puertos.

python dome.py -m active -d domain -w wordlist.txt -p 80,443,8080

Instalación

Puedes ejecutar Dome con Python 2 o 3. Se recomienda Python3

Instala las dependencias y ejecuta el programa:

git clone https://github.com/v4d1/Dome.git
cd Dome
pip install -r requirements.txt
python dome.py --help

Características principales

  • Fácil de usar. Sólo tiene que instalar el requirements.txt y ejecutar
  • Escaneo activo y pasivo (leer arriba)
  • Más rápido que otras herramientas de enumeración de subdominios
  • 7 resolvedores/servidores de nombres diferentes, incluyendo google, cloudfare (el más rápido), Quad9 y cisco DNS ( usa –resolvers filename.txt para usar una lista personalizada de resolvedores, uno por línea)
  • Hasta 21 fuentes OSINT diferentes
  • Los subdominios obtenidos a través de OSINT se prueban para saber si están vivos (sólo en modo activo)
  • Soporte para webs que requieren token de API
  • Detecta cuando la clave API deja de funcionar (Otras herramientas sólo arrojan un error y dejan de funcionar)
  • Detección de Wildcard y bypass
  • Escaneo de puertos personalizado y parámetros incorporados para los puertos Top100, Top1000 y Top Web
  • Salida coloreada y no coloreada para facilitar la lectura
  • Soporte para Windows y Python 2/3 (se recomienda Python 3)
  • Altamente personalizable a través de argumentos
  • Escanea más de un dominio simultáneamente
  • Posibilidad de usar hilos para escaneos más rápidos por fuerza bruta
  • Exportación de la salida en diferentes formatos como txt, json, html

Capturas de pantalla

Interfaz de uso de Dome
Interfaz de uso de Dome

Modo pasivo:

Modo pasivo de Dome
Modo pasivo de Dome

Modo activo + escaneo de puertos:

Modo activo de Dome
Modo activo Dome

Motores de búsqueda OSINT

Dome utiliza estas páginas web para obtener subdominios

Sin API:

  • AlienVault
  • HackerTarget
  • RapidDNS
  • ThreatMiner
  • urlscan.io
  • threatcrowd.org
  • web.archive.org
  • crt.sh
  • bufferover.run
  • CertSpotter
  • Anubis-DB
  • Hunt.io
  • Sónar
  • SiteDossier
  • DNSrepo

Con API:

  • VirusTotal
  • Shodan
  • Spyse
  • SecurityTrails
  • PassiveTotal
  • BinaryEdge

Uso

ArgumentosDescripciónEjemplo
-m, –modeModo de escaneo. Opciones válidas: active o pasiveactive
-d, –domainNombre de los dominios para enumerar los subdominios (separados por comas)hackerone.com,facebook.com
-w, –wordlistLista de palabras que contiene el prefijo del subdominio a forzarsubdomains-5000.txt
-i, –ipCuando se encuentra un subdominio, muestra su ip
–no-passiveNo utilizar técnicas OSINT para obtener subdominios válidos
-nb, –no-bruteforceNo hacer fuerza bruta pura hasta 3 letras
-p, –portsEscanear los subdominios encontrados contra puertos tcp específicos80,443,8080
–top-100-portsEscanea los 100 puertos principales del subdominio (No es compatible con la opción -p)
–top-1000-portsEscanea los 1000 puertos principales del subdominio (No es compatible con la opción -p)
–top-web-portsEscanear los principales puertos web del subdominio (No es compatible con la opción -p)
-s, –silentModo silencioso. No hay salida en terminal
–no-colorNo imprimir en color
-t, –threadsNúmero de hilos a utilizar (por defecto: 25)20
-o, –outputGuardar los resultados en archivos txt, json y html
–max-response-sizeLongitud máxima de la respuesta HTTP (Por defecto: 5000000 (5MB))1000000
–r, –resolversArchivo de texto con los resolvedores DNS a utilizar. Uno por línearesolvers.txt
-h, –helpComando de ayuda
–versionMostrar la versión de dome y salir
-v, –verboseMostrar más información durante la ejecución

Ejemplos

Realiza un escaneo activo y pasivo, muestra la dirección ip de cada subdominio y realiza un escaneo de puertos utilizando top-web-ports. Los datos también se escribirán en la carpeta /results:

python dome.py -m active -d domain -w wordlist.txt -i --top-web-ports -o

Realiza un escaneo pasivo en modo silencioso y escribe el resultado en archivos.

python dome.py -m passive -d domain --silent --output

Realizar un escaneo activo sin escaneo pasivo y de puertos

python dome.py -m active -d domain -w wordlist.txt --no-passive

Sólo fuerza bruta con lista de palabras

python dome.py -m active -d domain -w wordlist.txt --no-bruteforce

Escanea activo y pasivo y realiza un escaneo de puertos SOLO en los puertos 22,80 y 3306

python dome.py -m active -d domain -w wordlist.txt -p 22,80,3306
Dark Mode

Dome (este enlace se abre en una nueva ventana) por v4d1 (este enlace se abre en una nueva ventana)

Dome – Subdomain Enumeration Tool. Fast and reliable python script that makes active and/or passive scan to obtain subdomains and search for open ports.

Mi Carro Close (×)

Tu carrito está vacío
Ver tienda