Descripción

This lab’s email change functionality is vulnerable to CSRF. It attempts to use the insecure «double submit» CSRF prevention technique.

To solve the lab, use your exploit server to host an HTML page that uses a CSRF attack to change the viewer’s email address.

You can log in to your own account using the following credentials: wiener:peter

CSRF where token is duplicated in cookie writeup

Entraremos en el laboratorio. Iremos a ‘My account’ e iniciaremos sesión con el usuario ‘wiener’ y la contraseña ‘peter’. Al hacerlo la aplicación nos pondrá una cookie llamada ‘csrf’. Este es un intento de hacer más segura la funcionalidad.

Si interceptamos con el ‘Proxy’ el cambio de sesión veremos que el token CSRF tiene el mismo valor que la cookie:

Dropearemos la petición y prepararemos el mismo código que en el laboratorio anterior (CSRF where token is tied to non-session cookie):

  1. Nos aseguraremos que ‘Include auto-submit script’ esté desactivado.
  2. Cambiaremos el valor de email por el de un correo que no esté en uso.
  3. Cambiaremos el valor de csrf por el nuestro obtenido en el paso 1.
  4. Añadiremos el siguiente código, cambiando la URL del laboratorio, para insertar el valor de la cookie:
    • <img src="https://0af80061044a9439802f8f6100440098.web-security-academy.net/?search=test%0d%0aSet-Cookie:%20csrfKey=LgSd84dWkCw7yPPHjIvRqn0elHnJ4NGl%3b%20SameSite=None" onerror="document.forms[0].submit()">
  5. Pulsaremos ‘Store’ y ‘Deliver exploit to victim’.

Al hacerlo habremos completado el laboratorio:

Nota: Es probable que el token caduque, por lo que puede ser que haya que regenerar el valor de csrf.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *