Web Hacking CTF: Infosec Institute Level 3

Tenemos un formulario del cual se generan nuevos usuarios, todos con un mismo perfil: user role. Nuestro desafío se encuentra en poder crear, a partir de este interfaz, un usuario con otro perfil: admin role.

1

La primer prueba, es conocer como se crean los usuarios y cual es el resultado final. Por lo que vamos a hacer lo siguiente:

  • Completar el formulario con datos “verdaderos
  • Ingresar a la aplicación
  • Ver el resultado final

2

Ahora con un poco más de información, podemos conocer como almacena el usuario:rol la aplicación. Hagamos una lista para saber que es lo que podemos inyectar (y dónde) con su resultado.

  • Inyectar dentro de Username Password una sentencia como:

gabriel; role:admin

  • Tratar de saltar las restricciones dentro de la casilla Email

asdasd@gmail.com;role:admin

En ambos casos, obtendremos errores tanto client-side como server-side. El único campo que es vulnerable es el de Last Name. No encontré cual puede ser el delimitador, por lo que arriesgué a una hint, y allí estuvo la respuesta:

3

Una vez encontrado el campo vulnerable, debemos ingresar el delimitador de salto de línea para poder modificar los atributos de roles. Para ello, utilizamos nuevamente Firebug y seleccionamos el campo de texto para Last Name, reemplazando su código a textarea en vez de input.

<textarea id=”lname” value=”” class=”form-control” name=”lname” required=”” type=”text”></textarea>

Lo que solo queda, es rellenar el formulario nuevamente.

4

Para obtener el resultado final.

5

DynamicSec.

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s