Gobuster — Fuerza Bruta de Directorios y Vhosts
Fuerza bruta de rutas web con gobuster: modo dir con User-Agent personalizado, threads, ignorar certificados, filtrado por estado y salida a fichero.
1. Operational Scope & Technical Objective
gobuster fuerza rutas, virtual hosts y subdominios DNS contra un objetivo web usando wordlists. Su modo dir escribe peticiones HTTP en paralelo (-t), lo que lo hace ideal para enumerar el árbol de una app sin disparar un WAF demasiado pronto. La clave operativa es disimular el fingerprint del cliente (-a), saltar TLS roto (-k) y filtrar falsos positivos (estado 200 genérico, respuestas de 404 personalizadas) con -s/--exclude-length.
2. High-Impact Syntax & Command Cheatsheet
# Enumeración clásica de directorios
gobuster dir -u http://10.10.10.55:8080 \
-a 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3831.6 Safari/537.36' \
-w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt \
-t 50 -k -o gobuster/http-dlist-lower-small.txt
# -u -> URL base objetivo
# -a -> User-Agent (evita fingerprint "gobuster"; útil si la app bloquea UA)
# -w -> wordlist de rutas
# -t -> threads (50); sube velocidad, pero atrae rate-limits
# -k -> no verifica certificado TLS (self-signed/HTTPS roto)
# -o -> volcado de resultados a fichero (audit trail, reutilizable)
# Anexar extensiones comunes al fuzzing (php, txt, bak...)
gobuster dir -u http://10.10.10.55:8080 -w wordlist.txt -x php,txt,html,bak
# Filtrar por código de estado (solo interesantes) o descartar tamaño de body
gobuster dir -u http://10.10.10.55:8080 -w wordlist.txt -s 200,204,301,302,307,403
gobuster dir -u http://10.10.10.55:8080 -w wordlist.txt --exclude-length 1234
# --exclude-length: descarta respuestas de body de 1234 bytes (página 404 custom)
# Virtual host enumeration (mismo IP, hosts distintos vía Host header)
gobuster vhost -u http://10.10.10.55 -w vhosts.txt --append-domain
# Subdominios DNS (sin HTTP)
gobuster dns -d example.com -w subdomains.txt -t 30
3. Real-World Offensive/Defensive Scenarios
Enumeración inicial de una app. Con -k -a <UA real> y -t 50, gobuster descubre rutas admin, backups y API endpoints que la app no enlaza. El -o garantiza que el listado sobreviva para alimentar wfuzz, ffuf o pruebas manuales posteriores.
Evasión de WAF/CDN. Reutilizar un User-Agent de navegador (-a) y alternar threads evita los bloqueos por fingerprint de herramienta; con HTTPS autofirmado, -k mantiene el escaneo en vez de abortar.
Defensa: el mismo diccionario que el atacante. Auditar el árbol web contra directory-list-2.3-medium.txt revela rutas olvidadas (.bak, /.git/, admin/, backup/) antes de que un gobuster externo las encuentre. Vigilar los logs por ráfagas de 404 seguidas de un 200 sobre una ruta nueva es la firma de un escaneo en curso.