GOBUSTER
Otro Fuzzer que tiene como característica principal que nos permite fuzzear Subdominos DNS y Hosts virtuales además de directorios.
En este artículo vamos a explorar el fuzzer llamado GoBuster. El proyecto está disponible en Github.
Vamos a ver algunas de las ventajas que posicionan Gobuster por encima de otras herramientas similares como dirb. Vamos a desarrollar su funcionamiento y por último, dejaré una cheatsheet para los casos de uso más habituales.
CARACTERÍSTICAS
Hay tres características que ponen Gobuster en el primer lugar de la lista de fuzzers.
Se ejecuta desde la linea de comandos.
Permite hacer fuerza bruta a ficheros y a varios tipos de extensiones al mismo tiempo.
Velocidad.
GoBuster está escrito en Go, esto lo hace muy bueno a la hora de realizar trabajos concurrentes (utilizar hilos para ejecutar acciones simultaneas). Esto desemboca en más velocidad a la hora de realizar fuerza bruta. Además, el hecho de no necesitar especificar si realizamos el ataque sobre directorios o sobre archivos simplifica mucho las tareas de fuzzing.
Tiene tres modos principales de funcionamiento:
dir - El clasico fuzzer de directorios.
dns - Fuzzea subdominios DNS.
vhost - Fuzzea Hosts virtuales, que no es lo mismo que DNS.
La ayuda de GoBuster muestra lo siguiente:
FUNCIONAMIENTO
Primero hablaremos de los tres argumentos globales más útiles del programa:
-qpermite fozalizar la salida unicamente en lo que interesa.-tse utiliza para definir cuantos hilos concurrentes queremos utilizar. El número a utilizar dependerá principalmente de dos factores: Ancho de banda de nuestra conexión a internet y los recursos del servidor al que estamos atacando. Normalmente entre 50 y 100 es un buen número para empezar.-wdefine el diccionario a utilizar.
DIR mode
Ahora para los argumentos concretos del modo dir, la ayuda se explica sola, sin embargo, vamos a explicar algunos de los argumentos que más vamos a utilizar.
En muchos CTFs la certificación SSL está autofirmada y por lo tanto, no verificada. Utilizando -k podemos saltarnos la verificación SSL y continuar con el fuzz.
Otra cosa muy útil es que nos permite decidir qué codigos de respuesta son válidos y cuales no. Con los argumentos -s (para la lista blanca) y -b (para la lista negra)
Tambien le podemos decir a GoBuster qué tipo de archivos queremos que busque utilizando el argumento -x donde podemos definir las extensiones que estamos buscando. Por ejemplo, si busco imágenes puedo utilizar -x jpg,png,gif
Un ejemplo básico quedaría como sigue:
DNS mode
En el modo DNS estamos buscando subdominios de un dominio específico. Es muy importante en pentesting ya que puede revelar areas "escondidas" que no están tan protegidas como otras.
Como su nombre indica, en este modo GoBuster trata de resolver el nombre de los subdominios mediante DNS. Así puede verificar su existencia o no.
El argumento -d es el encargado de definir el nombre de dominio víctima.
Hay casos en los que es necesario definir el servidor DNS a utilizar. Esto se hace con -r .
Con -i podemos obtener la IP asociada al subdominio.
Un ejemplo sencillo quedaría como sigue:
VHOST mode
Este modo no debe ser confundico con ser lo mismo que el modo DNS. Mientras que el modo DNS trata de resolver los nombres de los subdominios mediante DNS, el modo VHOST chequea si el subdominio existe visitando la url y verificando la IP.
Los argumentos que se pueden utilizar ya estaban incluidos en el modo DIR.
Veamos un ejemplo sencillo:
Una página web que se esconda tras Cloudflare, puede estropearnos este tipo de escaneres.
Por ejemplo, si el servidor ever0s.com estuviera detrás de CLoudFlare, esto es lo que obtendríamos:
Podemos ver que GoBuster muestra como encontradas todas las entradas de nuestro diccionario aunque lo hace con un código de respuesta 530 que equivale a "origin DNS error". Esto se debe a que no es el error que la aplicación espera y le parece relevante. Para evitar esto podemos utilizar el argumento -s y -b .
CHEATSEET
Description
Command
archivos interesantes web
gobuster dir -u mytarget.com -w path/to/my/awesome/wordlist.txt -e -t 100 -x php,txt,html,htm
Encontrar imágenes
gobuster dir -u mytarget.com -w path/to/my/awesome/wordlist.txt -e -t 100 -x jpg,jpeg,png,gif,ico
Evitar verificación SSL
gobuster dir -u mytarget.com -w path/to/my/awesome/wordlist.txt -k
Bypasear Autenticación simple.
gobuster dir -u mytarget.com -w path/to/my/awesome/wordlist.txt -U BasicAuthUser -P BasicAuthPass
Personalizar Servidor DNS..
gobuster dns -d mytarget.com -w path/to/my/awesome/wordlist.txt -r 10.10.10.10 -i -v
Última actualización
¿Te fue útil?