
Descripción
This lab doesn’t adequately validate user input. You can exploit a logic flaw in its purchasing workflow to buy items for an unintended price. To solve the lab, buy a «Lightweight l33t leather jacket».
You can log in to your own account using the following credentials: wiener:peter
High-level logic vulnerability writeup
Entramos en ‘My account’ para iniciar sesión con el usuario ‘wiener’ y la contraseña ‘peter’ (si no no nos dejará comprar el objeto). Añadimos el objeto al carrito y procedemos a pagarlo, sin embargo, nos devolverá el error ‘Not enough store credit for this purchase’. Si interceptamos el momento de añadir un objeto al carrito, podremos ver la siguiente petición en el ‘Logger’:

Nota: Es importante que esta petición sea de un producto distinto al que nos pide la descripción del laboratorio comprar, debido a que el valor total del carrito debe ser positivo. Añadiremos el producto de la descripción de forma normal y manipularemos otro aleatorio para disminuir su valor.
Enviaremos esta petición al ‘Repeater’ con Ctrl + R o Click derecho -> Send to Repeater. Allí cambiaremos el valor del parámetro ‘quantity’ por un número negativo, por ejemplo, -112:

Al enviar la petición y volver a la página, podremos comprar el objeto, ya que el precio será negativo:

Completando así el laboratorio:
