Herramienta WFUZZ


Herramienta especializada en la parte de fuzzing.

Published on August 10, 2023 by Gmichet

TOOLS

2 min READ

Wfuzz es una herramienta diseñada para realizar pruebas de fuerza bruta y descubrimiento de recursos en aplicaciones web.

Ver herramienta en github

Indice


wfuzz

En general wfuzz permite automatizar la búsqueda de directorios, archivos y parámetros ocultos al intentar diferentes combinaciones de nombres y valores.

  • Aplicar descubrimientos de rutas.
  • Fuzzear parámetros.
  • Solicitudes que se tramiten por wget, post extensiones lo que quieras enumerar.
  • Meter mútiples campos a fuzzear.

Sintaxis

En WFUZZ la forma de sustituir un paylod es con la palabra reservada “FUZZ”.

Ejemplos


Descubrimiento de rutas alternativas

Dada una dirección URL quiero buscar por un diccionario para encontrar rutas alternativas o adicionales a las ya conocidas.

wfuzz -w /ruta/al/diccionario.txt "http://192.168.0.20:8080/FUZZ" 

.

Ejemplo:

Ejemplo Subdominios


Fuerza bruta de subdominios

Buscar posibles puntos de entrada en un dominio.

wfuzz -c -t 20 -w /ruta/al/diccionario.txt -H  "Host: FUZZ.dominio.com" http://dominio.com

.

Qué son los subdominios

Un subdominio es una parte del sistema de nombres de dominio (DNS) que se coloca antes del dominio principal en una URL. Los subdominios son utilizados para crear divisiones adicionales en un dominio.

Los subdominios siempre están colocados antes del dominio principal en una URL y generalmente se separan por puntos.

Subdominios


Solicitud POST

Una solicitud POST es un tipo de solicitud HTTP (Hypertext Transfer Protocol) utilizada para enviar datos desde el cliente al servidor.

Una solicitud POST se utiliza para probar diferentes combinaciones de datos en el cuerpo de la solicitud. Aquí tienes un ejemplo de cómo Wfuzz podría utilizar una solicitud POST:

Ejemplo fuerza bruta .

Enumerando usuarios válidos

Tomando como referencia el ejemplo anterior, podemos hacer enumeración de usuarios válidos (usuarios que si existe pero no se como se llaman), a continuación una imagen que lo explica:

Ejemplo enumeración

Cuando hago una solicitud post quiero sustituir cada una de las lineas de mi diccionario por lo que quiero fuzzear, en este caso es username bueno entonces coloco donde quiero fuzzer la palabra reservada FUZZ. Y con la expresión –ss quiero decirle que cuando un usuario sea válido deberá reportarlo en el output.

wfuzz -c --ss="Invalid login" -t 200 -w /ruta/al/diccionario.txt -d 'username=FUZZ&password=password' http://10.10.10.97/login

********************************************************
* Wfuzz 2.4.5 - The Web Fuzzer                         *
********************************************************

Target: http://10.10.10.97/login
Total requests: 200
=====================================================================
ID           Response   Lines    Word     Chars       Payload                                                                                                                
=====================================================================

000000154:   200        1 L      4 W      33 Ch        "Rodríguez"


Conclusiones

Bueno, después de jugar un rato con Wfuzz, se puede decir que es una herramienta fascinante que puede revelar puertas secretas en aplicaciones web.

Recuerda prácticar en entornos controlados.

RECURSOS ÚTILES

YT S4vitar

Gmichet

Autodidacta apasionado por la informática y entusiasta de los CTF. Constantemente aprendiendo.

2024 | WhatATheme - A Theme made with by Gmichet Powered by Jekyll