Business logic vulnerabilities - gachikuku/portswigger GitHub Wiki
Apprentice lab:
Excessive trust in client-side controls
Apprentice lab:
Excessive trust in client-side controls
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
-
Solution
- Click on View details of the item.
- Intercept on and click on Add to cart.
- Modify price of the item, in the
POSTrequest. - Go to My account, and log in as
wiener:peter. - Go to shop cart and click on Place order.
Apprentice lab:
High-level logic vulnerability
Apprentice lab:
High-level logic vulnerability
-
Solution
- Log in
wiener:peter. - Add stuff to cart.
- Modify
POSTrequest and change parameterquantityto something else. - Refresh page and notice it's reflected to the website, indicating that price can be controlled.
- Log in
Apprentice lab:
Inconsistent security controls
Apprentice lab:
Inconsistent security controls
-
Solutiion
- Register.
- Change email to required usergroup @dontwannacry.com.
- Access
/admin. - Delete carlito.
Apprentice lab:
Flawed enforcement of business rules
Apprentice lab:
Flawed enforcement of business rules
-
Solution
- Log in as
wiener:peter. - Add to cart the hax0r jacket.
- Apply a coupon, then apply a different one, alternating.
- boom.
- Log in as