Herramientas para el descubrimiento de subdominios

Todos los frameworks y metodologías existentes para tests de intrusión contemplan en sus fases iniciales el reconocimiento, y dentro del reconocimiento es fundamental el descubrimiento de subdominios ya que puede ayudar a un atacante o auditor a identificar y enumerar distintos sitios web del objetivo, algunos incluso mal configurados y vulnerables. A continuación se listan una serie de recursos online y herramientas de gran valor que facilitan enormemente esta tarea.

Herramientas en línea

1. Censys (https://censys.io/)

Es probablemente uno de los primeros motores de búsqueda que buscan subdominios. Además te muestra otra información como puertos abiertos, detalles del certificado y SSL y resultados del Whois.

2. Shodan (http://shodan.io/)

Shodan es una plataforma de spidering con una base de datos enorme dirigida fundamentalmente a profesionales de seguridad. Tiene datos históricos y actuales sobre una gran franja de servidores en Internet, incluyendo subdominios descubiertos, versionado de servidores y mucho más.

3. Pentest-tools (https://pentest-tools.com/information-gathering/find-subdomains-of-domain)

Dentro de la categoría de 'Information Gathering', Pentest-tools tiene una herramienta de búsqueda de subdominios que utiliza distintos métodos como transferencias de zona DNS, enumeración DNS basada en listas y peticiones a distintos motores de búsqueda.

4. DNSDumpster (https://dnsdumpster.com/)

DNSDumpster del proyecto HackerTarget.com es una herramienta que, además de los subdominuios, nos devolverá información del servidor DNS, registros MX, registros TXT y un interesante esquema de las relaciones del dominio analizado.

5. Netcraft (http://searchdns.netcraft.com/)

La compañía inglesa tiene una muy buena base de datos de dominios que no podemos olvidar consultar.

6. CloudPiercer (https://cloudpiercer.org/)

Cloudpiercer está orientado a encontrar IPs reales de servidores web que deberían estar protegidos por la infraestructura de un proveedor en la nube. Si acreditas que eres el dueño del sitio mediante alguno de los métodos disponibles, CloudPiercer realizará un escaneo verificando varios vectores como bases de datos de historial de IPs, registros DNS, ficheros sensibles, pingback, certificados y, por supuesto, subdominios.

Herramientas locales

1. Sublist3r (https://github.com/aboul3la/Sublist3r)

Es una herramienta en python capaz de enumerar subdominios de sitios web a través de varios recursos OSINT. Utiliza como motores de búsqueda Google, Yahoo, Bing, Baidu y Ask y obtiene subdominios mediante Netcraft, Virustotal, ThreatCrowd, DNSdumpster y PassiveDNS. También incorpora otra herramienta, subbrute (https://github.com/TheRook/subbrute) para encontrar más subdominios mediante fuerza bruta (wordlists).

2. SubBrute (https://github.com/TheRook/subbrute)

SubBrute es una de las herramientas de enumeración de subdominios más populares y precisas. Es un proyecto impulsado por la comunidad y utiliza "open resolvers" como proxy para no enviar directamente tráfico a los servidores DNS.

3. Knock (https://github.com/guelfoweb/knock)

Es otra herramienta escrita en Python para descubrir subdominios usando una lista de palabras. Esta diseñada para escanear los DNS en busca de transferencias de zona y para intentar evadir el registro DNS Wildcard (si está activado).

4. DNSRecon (https://github.com/darkoperator/dnsrecon)

DNSRecon de Darkoperator se incluye en el arsenal de Kali Linux y comprueba todos los registros NS en busca de transferencias de zona, registros DNs, resolución wildcard, registros PTR, etc.

5. Scripts nmap
nmap --script http-robtex-reverse-ip 8.8.8.8
nmap -p443 --script hostmap-ip2hosts oracle.com

6. iptodomain (https://github.com/jevalenciap/iptodomain)

Otra herramienta escrita en python. Permite extraer los dominios de un rango de ips usando la información histórica de la base de datos de Virustotal (requiere una API key).

7. dnsscan (https://github.com/rbsec/dnscan)

La enésima herramienta en python primero intenta transferencias de zona y, a continuación si falla, busca los registros TXT y MX y luego realiza un escaneo recursivo de subdominios mediante wordlists.

8. Recon-ng (https://bitbucket.org/LaNMaSteR53/recon-ng)

Recon-ng es un completo framework de reconocimiento web que incluye el módulo brute_hosts para obtener subdominios por fuerza bruta.
9. Fierce (https://github.com/mschwager/fierce)

Fierce es un escáner de enumeración escrito en Perl que ayuda a los pentesters a localizar el espacio de IPs y nombres de hosts no contiguos para dominios específicos mediante DNS, Whois y ARIN. Está diseñado específicamente para localizar objetivos probables dentro y fuera de una red corporativa. Dado que utiliza DNS principalmente, a menudo encuentra redes mal configuradas que generan fugas de espacio de direcciones internas.

10. dnsenum (https://github.com/fwaeytens/dnsenum)

Script en perl multiproceso para enumerar información de DNS de un dominio y para descubrir bloques de ip no contiguos.

11. Altdns (https://github.com/infosec-au/altdns)

Altdns es una herramienta de reconocimiento de DNS que permite el descubrimiento de subdominios que se ajustan a ciertos patrones. Altdns toma palabras que podrían estar presentes en subdominios bajo un dominio (como prueba, dev, stager), así como una lista de subdominios conocida o manual.

12. TheHarvester (https://github.com/laramies/theHarvester)

TheHarvester es una herramienta para obtener información sobre direcciones de email, nombres de subdominio, virtual hosts, puertos abiertos/banners y nombres de empleados desde diferentes fuentes públicas (motores de búsqueda, servidores de claves de PGP).

Es una herramienta en Python muy sencilla pero a la vez muy útil para las primeras fases de un test de intrusión o simplemente conocer la visibilidad de una compañía en Internet.

Diccionarios

Fuentes:

Via: blog.segu-info.com.ar
Herramientas para el descubrimiento de subdominios Herramientas para el descubrimiento de subdominios Reviewed by Zion3R on 9:14 Rating: 5