question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. ItΒ collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

[⭐] Infinite free wallet funds (already existing vulnerability in juice-shop)

See original GitHub issue

⭐ Challenge idea

Description

The route rest/wallet/balance with the HTTP method PUT is used to add new funds to the digital wallet. If done through the GUI, the user needs to have a saved credit card and, also, the amount of money added into the wallet is restricted between 10 and 1000.

If you send the PUT request with the header Authorization and the body {"balance": 2000000} you can add funds to the wallet without a credit card saved and bypassing the limit.

I have checked that then you can buy products in the shop using the wallet, and it is possible.

I guess in real life this bug would not be possible, as the transaction from a real bank account and the digital wallet needs to be performed to get the money. However, it is strange to be able to do this in the Juice Shop without it being a challenge. Plus, for beginners (like me) it is quite an accessible and interesting challenge.

Underlying vulnerability/ies

The vulnerability would be both Improper Input Validation and something else (regarding the free funds) but I do not know how to name it.

Expected difficulty

βœ”οΈ / ❌ Difficulty
βœ”οΈ ⭐
βœ”οΈ ⭐⭐
❌ ⭐⭐⭐
❌ ⭐⭐⭐⭐
❌ ⭐⭐⭐⭐⭐
❌ ⭐⭐⭐⭐⭐⭐

Possible attack flow

  1. Log in as a user.

  2. Add either less than 10 dollars (not allowed by the GUI) or add money from no apparent credit card origin.

  3. Spend this money on Juices. πŸ˜ƒ

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Comments:5 (2 by maintainers)

github_iconTop GitHub Comments

1reaction
bkimminichcommented, Mar 25, 2020

Closed as this will rather be β€œfixed” than converted into a challenges to avoid duplications.

1reaction
bkimminichcommented, Mar 19, 2020

Hm, personally I’d rather see the wallet funds increase flow to be actually secured in some way. Can be broken still, but it shouldn’t be this trivial to get unlimited πŸ’° in the wallet. We kind of have a similar challenge with the negative quantities being put in the shopping basket anyway.

So the challenge idea is great, it just should be made more difficult imo.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Challenge solutions - Pwning OWASP Juice Shop
By itself, this is not necessarily an indication of vulnerability. ... If your wallet contains funds, you cannot start a dummy transaction to...
Read more >
[ ⭐ ] Free deluxe membership (already existing vulnerability in ...
Challenge idea Description The rest/deluxe-membership route is vulnerable. Users can upgrade themselves to deluxe members by simply making aΒ ...
Read more >
OWASP Juice Shop
Juice Shop encompasses vulnerabilities from the entire OWASP Top Ten along ... This program is free software: You can redistribute it and/or modify...
Read more >
Pwning OWASP Juice Shop - GRIET SDC
Part two gives an overview of the vulnerabilities found in the OWASP Juice Shop including hints how to find and exploit them in...
Read more >
OWASP Juice Shop Project - BjΓΆrn Kimminich - YouTube
Exhibitor: Worrisome Web Vulnerability Trends in the Race to Innovation - Nicholas Sciberras. OWASP Foundation. OWASP Foundation.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found