Comprender el Propósito de una Cadena User-Agent
En este paso, aprenderá qué es una cadena User-Agent y por qué es importante en las solicitudes web.
La cadena User-Agent es una cabecera enviada por un cliente (como un navegador web o una herramienta como Gobuster) a un servidor web. Típicamente contiene información sobre el tipo de aplicación del cliente, el sistema operativo, el proveedor del software y la versión del software. Los servidores web utilizan esta información para entregar contenido optimizado para el cliente o para registrar estadísticas del cliente.
Para herramientas de seguridad como Gobuster, la cadena User-Agent por defecto a menudo revela la identidad de la herramienta, lo que puede activar WAFs o sistemas de detección de intrusos (IDS). Por ejemplo, el User-Agent por defecto de Gobuster podría parecer algo como gobuster/3.1.0.
Realicemos un escaneo básico de Gobuster sin ningún User-Agent personalizado para ver su comportamiento por defecto. Escanearemos un servidor web local que se configuró en segundo plano.
Primero, asegúrese de que el servidor web esté en ejecución comprobando su proceso:
ps aux | grep "python3 -m http.server 8080" | grep -v grep
Debería ver una salida similar a esta, indicando que el servidor está en ejecución:
labex 1234 0.0 0.1 12345 6789 ? Sl HH:MM 0:00 python3 -m http.server 8080 --directory /tmp/web_root
Ahora, ejecute un escaneo simple de Gobuster contra el servidor local en el puerto 8080. Usaremos una lista de palabras pequeña para la demostración.
gobuster dir -u http://127.0.0.1:8080 -w /usr/share/wordlists/dirb/common.txt -q -x html,txt -t 10
-u http://127.0.0.1:8080: Especifica la URL de destino.
-w /usr/share/wordlists/dirb/common.txt: Especifica la lista de palabras a utilizar.
-q: Modo silencioso, solo imprime resultados.
-x html,txt: Especifica las extensiones a buscar.
-t 10: Establece el número de hilos concurrentes en 10.
Verá una salida similar a esta, mostrando los directorios y archivos descubiertos:
/admin (Status: 200)
/secret (Status: 200)
/backup (Status: 200)
Si bien este escaneo funciona, el User-Agent utilizado por Gobuster es el predeterminado, que podría ser fácilmente bloqueado por un WAF.