Attacking Web Aplications with Ffuf

Fuzzing

El fuzzing es una técnica de prueba automatizada utilizada para identificar vulnerabilidades en sistemas y aplicaciones.

ffuf

  • Ffuf es una herramienta rápida y eficiente para el fuzzing de directorios y archivos ocultos en servidores web.

  • Se basa en wordlists y parámetros como FUZZ para probar rutas dinámicamente.

  • Se pueden utilizar filtros y matchers para refinar los resultados.

  • Hay que tener precaución con los hilos (-t) para evitar afectar la estabilidad del servidor.

Recursive Fuzzing

  • Permite explorar múltiples subdirectorios de forma automatizada.

  • Reduce el tiempo necesario para descubrir directorios y archivos ocultos.

Configuración de fuzzing recursivo en Ffuf

  • recursion → Habilita el escaneo recursivo.

  • recursion-depth → Define la profundidad máxima de escaneo.

  • e .php → Especifica extensiones de archivos a buscar.

Explicación:

  • Escaneará los directorios principales y su primer nivel de subdirectorios.

  • No escaneará niveles más profundos como /login/user/ a menos que se aumente la profundidad.

  • Buscará archivos con la extensión .php dentro de los directorios encontrados.

DNS Records

  • Problema de conexión: Al intentar acceder a academy.htb, el navegador no puede conectarse porque no es un sitio público y no está registrado en el DNS.

  • Solución: Para conectarse a academy.htb, se debe agregar la IP y el dominio al archivo /etc/hosts usando el comando:

  • Verificación: Después de agregarlo al archivo /etc/hosts, podemos acceder al sitio web. Sin embargo, se muestra la misma página que al acceder directamente a la IP.

  • Exploración de subdominios: Se realiza una búsqueda de subdominios bajo '*.academy.htb' para encontrar posibles paneles o áreas de administración.

Vhosts Vs. Sub-Domains

  • Diferencia entre VHosts y subdominios: Los VHosts son subdominios que se sirven en el mismo servidor y tienen la misma IP, permitiendo que una sola IP sirva múltiples sitios web.

  • Limitaciones del fuzzing de subdominios: El fuzzing de subdominios solo encuentra subdominios públicos, pero no puede detectar subdominios no públicos o VHosts.

  • Solución con VHost Fuzzing: Para identificar tanto subdominios públicos como no públicos, se utiliza fuzzing de VHosts en los encabezados HTTP, específicamente en el encabezado Host.

  • Uso del comando:

  • Esto permite verificar diferentes VHosts sin modificar manualmente /etc/hosts.

  • Resultado esperado: Aunque todas las pruebas devuelvan un 200 OK, un VHost válido mostrará una respuesta con un tamaño diferente debido a la página específica de ese VHost.

GET Request Fuzzing

Parameter Fuzzing - POST

Tip

circle-check

Skills

Last updated