Hintru ENES ← Todos los labs

Cheesy Does It — Business Logic Discount Abuse (Bugforge)

EN easy CTF challenge Business LogicJSON Array InjectionCoupon AbuseParameter TamperingBurp Suite

A pizza-ordering web application on Bugforge gives registered users a single-use discount code. The flag goes to whoever can apply more discount than they should — the fix is one HTTP request away, but you'll need to think carefully about how the server interprets the input you send.

0/4
resueltos
👁 Paso 1 Paso 2 Paso 3 Paso 4
web

Paso 4 · Manipulate How the Discount Field Is Sent

Objetivo: Exploit the server's failure to type-check the `discount` field by converting it from a string to a JSON array containing the coupon code multiple times, and retrieve the flag.

Contexto: The `toppings` field in the same request uses the format `["item","item"]`. The server may apply the same lenient parsing to any array it receives — including the `discount` field.

Pistas progresivas

Revela solo las que necesites. Claude lleva la cuenta de cuántas usaste para calibrar la retroalimentación.

Pista 1 — empujón direccional

Look at how the `toppings` field is structured and consider whether the `discount` field could be sent in the same format.

Pista 2 — técnica / clase de vuln

This is a JSON type-confusion / business logic flaw. Try changing the `discount` value from a string to a JSON array of strings.

Pista 3 — casi la solución

Change the `discount` field in the POST body from `"discount": "PIZZA-10"` to `"discount": ["PIZZA-10","PIZZA-10"]` and send the request. The server processes each array element as a separate coupon application.

Tu intento