OWASP juice-shop project #1

Welcome to my first project. My write/workflow up for OWASP juice-shop. While I write some might be written in jest, and some was written without assuming an audience so some may be difficult to read. But this is for fun!

TdaShadow

6/17/20263 min read

Welcome to my first project. My write up for OWASP juice-shop.

Tutorial mentions Score Board? In all honesty this one was pretty simple. I remember it from URL guessing, but I wanted to find another way and this time document it. The Tip Message also mentioned you can find it in sources within the developers options.(F12)

1 >> Pressed F12.

Where can I find score board. I clicked on ‘Debugger’ and seen a handful of .js files. From here I spent some time reviewing the list of .js files for any clues. Then I saw the search function! Lets use that!

2 >> Clicked Debugger

3 >> “Search” score

Immediately, I saw ‘SCORE_BOARD_HACKING_INSTRUCTOR’. There has to be something here. Scrolled through and found ‘”routerLink”,”/score-board’. RouterLink? /score-board. Looks like a the end of a site url. Lets try it.

3 >> Entered https://localhost:3000/score-board

It didn’t work. Did they change it? Is my docker not working properly? Okay. Lets fire up Burp, lets see if something else works before revisiting the score-board challenge.

4 >> Opened Burp Suite Community

Now, I want to see everything in Burp Suite, so I am not going to set a scope, since I want to see everything coming from localhost.

5 >> Open Burp Browser

Lets do some simple recon. Lets start by just visiting sites within juice-shop. Add some Apple juice to the Basket. Visit the basket, remove Apple juice. Use the ‘Trash’.

6 >> Site-testing

Next lets see some of the output within Burp. Hmm.. ‘/api/Products/1?..’. Lets, try /api/Products/2. That works! But It only shows another Product. What if I remove the number entirely. Displays the entire list of products. No secrets in here. Believe me I checked. You think we can change Products to Users? Not Authorized! Lets Change it to a POST. Created status”...success

id: 25. Does any of that mean anything? Lets go back to the HTTP history output.

Anything here? GET /rest/user/whoami?fields=email HTTP/1.1 Not really? What about GET /rest/products/1/reviews HTTP/1.1. admin@juice-sh.op? I can work with that!

Lets go back home and see what we can do with this. “You successfully solved a challenge: Error Handling (Provoke an error that is neither very gracefully nor consistently handled.)”

Thats right, I created an Internal Server Error when attempting to access /api/Users and /api/Admins


7 >> Visit localhost:3000/api/Users, Visit localhost:3000/api/Admin

Next, I visited the accounts sign in page and tried to log in with admin@juice-sh.op. Password? Password123 password password123. Lets see what happens when I enter ‘ at the end of an email.

Okay, we received an error. SQL injection maybe? Entered as email: admin@juice-sh.op' OR 1==1; and entered as password: Password123

8 >> Visit Account link

9 >> Username: admin@juice-sh.op' OR 1==1;


10 >> Password: Password123


Solved! Two Challenges.

Provoked Error

Login Admin

Contact

Reach out with questions or feedback anytime.

Email

Phone

me@tdashadow.com

+1-555-0199

© 2025. All rights reserved.