Blog/Username enumeration via subtly different responses
Username enumeration via subtly different responses
Portswigger › Portswigger Labs › Authentication Vulnerabilities

Certificaciones
- eWPT
- eWPTXv2
- OSWE
- BSCP
Descripción
Este laboratorio es vulnerable a ataques de enumeración de nombres de usuario y fuerza bruta de contraseñas. Tiene una cuenta con un nombre de usuario y contraseña predecibles, que se pueden encontrar en los diccionarios Candidate usernames https://portswigger.net/web-security/authentication/auth-lab-usernames y Candidate passwords https://portswigger.net/web-security/authentication/auth-lab-passwords. Para resolver el laboratorio, debemos enumerar un nombre de usuario válido, realizar un ataque de fuerza bruta para descubrir la contraseña de este usuario y acceder a su página de cuenta
Guía de authentication vulnerabilities
Antes de completar este laboratorio es recomendable leerse esta guía de authentication vulnerabilities https://justice-reaper.github.io/posts/Authentication-Vulnerabilities-Guide/
Resolución
Al acceder a la web nos sale esto

Pulsamos sobre My account, introducimos un usuario y contraseña aleatorios y vemos que el servidor nos devuelve Invalid username or password.

Capturamos la petición con Burpsuite

Pulsamos Ctrl + i para mandar la petición al Intruder y señalamos el campo username que es el que vamos a bruteforcear
![]()
Nos dirigimos al apartado de Payloads y pegamos el contenido del diccionario Candidate usernames https://portswigger.net/web-security/authentication/auth-lab-usernames

En el apartado de Settings > Grep - Extract tenemos que marcar el texto Invalid username or password. para que si se produce algún cambio en ese apartado nos lo represente

Ejecutamos el ataque de fuerza bruta y ordenamos la columna de la expresión regular que hemos creado. Una vez hecho eso vemos que para el usuario ftp no devuelve exactamente la misma expresión que las demás, por lo tanto podríamos considerar ftp como un usuario válido

A continuación debemos hacer lo mismo con la contraseña, de modo que nos vamos al Intruder nuevamente y en username introducimos como valor ftp y en el campo password marcamos el valor para bruteforcearlo
![]()
En la pestaña Payload pegamos el contenido del diccionario Candidate passwords https://portswigger.net/web-security/authentication/auth-lab-passwords

A continuación ejecutamos el ataque y filtramos por la columna Length

Ahora que tenemos las credenciales ftp:qazwsx podemos iniciar sesión

