Fuzzing de Páginas con ffuf
Ahora que ya dominamos el fuzzing de directorios con ffuf, avanzamos al siguiente paso:
👉 descubrir páginas ocultas dentro de esos directorios.
🧩 1. Fuzzing de Extensiones
En la sección anterior descubrimos el directorio:
📂 02 - Fuzzing de Directorios
/blog
Pero estaba vacío.
Así que el siguiente paso es identificar qué extensiones utiliza el sitio, por ejemplo:
-
.html -
.php -
.asp -
.aspx -
etc.
Aunque podemos inferir extensiones por el tipo de servidor, no es un método fiable.
👉 Mejor: fuzzear las extensiones automáticamente.
📂 Lista de extensiones (SecLists)
Usaremos:
/opt/useful/seclists/Discovery/Web-Content/web-extensions.txt
Ejecutamos:
ffuf -w /opt/useful/seclists/Discovery/Web-Content/web-extensions.txt:FUZZ -u http://SERVER_IP:PORT/blog/indexFUZZ

📌 Fuzzear extensiones sobre index.*
Casi todos los sitios tienen un archivo index.*, así que lo usamos como base:
⚠️ Nota:
La wordlist ya contiene el punto, así que no agregues “.” en index.
Ejecutamos:
ffuf -w /opt/useful/seclists/Discovery/Web-Content/web-extensions.txt:FUZZ \
-u http://SERVER_IP:PORT/blog/indexFUZZ
🟩 Resultado esperado
.php [Status: 200, Size: 0, Words: 1, Lines: 1]
.phps [Status: 403, Size: 283, Words: 20, Lines: 10]
🎉 Éxito:
La página index.php existe → El sitio usa PHP.
📄 2. Fuzzing de Páginas PHP dentro de /blog
Ahora que sabemos la extensión correcta (.php), fuzzear páginas dentro de /blog.
Usaremos la misma wordlist que antes:
directory-list-2.3-small.txt
Ejecutamos:
ffuf -w /usr/share/seclists/Discovery/Web-Content/directory-list-2.3-small.txt:FUZZ \
-u http://SERVER_IP:PORT/blog/FUZZ.php
🟩 Resultado

Interpretación:
-
index.php→ tamaño 0 → página vacía 🟦 -
home.php→ tamaño 465 → tiene contenido 🟩
👉 Ambas accesibles (Status 200), pero la segunda es la interesante.