Este fin de semana pasado tocó culturizarse un poco, y entre todas las noticias relacionadas con la seguridad que leí encontré muchas cosas nuevas e interesantes. Desde recientes fallos de seguridad en Joomla a nuevo software cuando menos digno de probar.
Hoy os quiero hablar de Knock, un pequeño script escrito en Pyhton y que realiza un perfecto escaneo de todos los subdominios existentes para un dominio dado. Ese tipo de información que muchas empresas descuidan y que sirve para descubrir servicios o equipos ocultos e incluso de nombre interno. Knock es por lo tanto una herramienta de auditoria muy eficaz y que a mayores de obtener información, también nos permite jugar un poco con el tema de dominios, como por ejemplo forzar una transferencia de zona y cosas así. Sin embargo, lo que más se sorprendió fue la facilidad para encontrar los subdominios.
Knock está disponible para su descarga desde Google Code y tras descargarla, son sólo tener Python instalado ya podemos comenzar a jugar.
shell> python knock.py -h Knock v1.5 by Gianni 'guelfoweb' Amato ( http://knock.googlecode.com ) USAGE: Scanning with internal wordlist: knock [url] e.g. knock domain.com Scanning with external wordlist: knock [url] [wordlist] e.g. knock domain.com wordlist.txt ...
Como veis, Knock nos permite realizar un escaneo de un dominio pasándole nosotros un listado de palabras propio. En caso de no proporcionárselo, simplemente usará las palabras por defecto que trae en su 'diccionario'. A continuación os dejo un ejemplo contra un dominio conocido para ver qué podemos averigiar de él.
shell> python knock.py facebook.com Knock v1.5 by Gianni 'guelfoweb' Amato ( http://knock.googlecode.com ) [+] Testing domain www.facebook.com 173.252.110.27 [+] Dns resolving Domain name Ip address Name server facebook.com 173.252.X.Z edge-shv-D-frc1.facebook.com Found 1 host(s) for facebook.com [+] Testing wildcard Ok, no wildcard found. [+] Scanning for subdomain on facebook.com [!] Wordlist not specified. I scannig with my internal wordlist... Estimated time about 75.72 seconds Subdomain Ip address Name server 0.facebook.com 173.252.X.Z edge-shv-M-frc1.facebook.com abc.facebook.com 173.252.X.Y edge-shv-D-frc1.facebook.com about.facebook.com 173.252.X.Y edge-shv-D-frc1.facebook.com ac.facebook.com 173.252.X.Y edge-shv-D-frc1.facebook.com ads.facebook.com 173.252.X.Y edge-shv-D-frc1.facebook.com apps.facebook.com 173.252.X.Y edge-shv-D-frc1.facebook.com arizona.facebook.com 173.252.X.Y edge-shv-D-frc1.facebook.com arkansas.facebook.com 173.252.X.Y edge-shv-D-frc1.facebook.com au.facebook.com 173.252.X.Y edge-shv-D-frc1.facebook.com ba.facebook.com 173.252.X.Y edge-shv-D-frc1.facebook.com baker.facebook.com 173.252.X.Y edge-shv-D-frc1.facebook.com ...
Tal como se observa, el número de subdominios que nos reporta es cuando menos considerable. Así que espero que os sea de ayuda si tenéis que hacer una auditoria.
Os dejo a continuación también un vídeo donde se ve el funcionamiento de esta herramienta.