← Back to list

OWASP JUICE SHOP Detailed Writeup Part-1

hello Everyone this is 0xcybersoldier

0xcybersoldier · 2026-09-15 19:08 · 1 claps · 4.2 min read
#owasp #owasp-juice-shop #api-security #pentesting #ctf
Open on Medium ↗
Wiki topics: 🔒 · Cybersecurity

OWASP JUICE SHOP Detailed Writeup Part-1

hello Everyone this is 0xcybersoldier

today we will solve a first 5 challneges based on

https://pwning.owasp-juice.shop/companion-guide/latest/appendix/solutions.html#_challenges

its an official website solitions for owasp juice shop but the quesiton why there is no detialed writeup for this , so i just had an idea for this and i will as series in Medium , every part will have 5 challenges , until we finish 116 challenge , so let`s start .

Note: the series for version owasp juice shop v20.2.0 which its the latest based on date while writing this 15/9/2026

Challnege 1 : Access a confidential document

firstly after visiting webite in http://localhost:3000/

then using any tool to fuzz the subdirectories for website

i suggest feroxbuster

until we see ftp that`s hidden direcotory lisiting

and solving this by visitin gthis url

http://localhost:3000/ftp/legal.md

Challenge2: Close multiple “Challenge solved”-notifications in one go

when solving 2 challenegs or more il raise notifications of solved challneges , the idea of callenege there hidden hostkeys dealing with website

like in the screenshot and will solved the challenge

Challenge3: Find the carefully hidden ‘Score Board’ page

by do the following

1- press F12 on keyboard or go to DevTools in broswer i using right now google chrome

2- go to sources

3- look at main.js or type on filter “main.js” to see it quickly

4- there is like Curly Brackets / Braces {} which pretty-print in bottom left corner of code in the right

5- click any line of code and then search by clicking on keyboard in CTRL+F and type Score-Board

and you see it and click until you find the path

and the link is

http://localhost:3000/#/score-board

Challenge 4: Find the endpoint that serves usage data to be scraped by a popular monitoring system

and this we will use a docuemtnation of technology used in website of juice shop

by using this URL

[embed]First steps with Prometheus | Prometheus Prometheus project documentation for First steps with Prometheusprometheus.io

and find it /metrics we will see it

then use the Endpoint the http://localhost:3000/metrics

The Core Concept: Information Disclosure via Monitoring

In modern software development, teams use monitoring systems like Prometheus to track the health of their applications. Prometheus works by “scraping” (pulling) data from a specific URL on the web server.

By default, Prometheus looks for a path called **/metrics**.

When a developer forgets to secure or hide this path, anyone on the internet can access it. This leads to a vulnerability known as Information Disclosure. While it doesn’t directly give an attacker control over the server, it leaks critical blueprints of the system, such as:

  • Memory and CPU usage
  • Database connection statuses
  • Total numbers of HTTP requests and error rates
  • Internal system architectures

Challenge 5 : Follow the DRY principle while registering a user

The Core Concept: Broken Client-Side Validation

When you sign up for a website, the form usually asks you to type your password twice to ensure you didn’t make a typo.

A lazy or flawed implementation might only check if Password == Repeat Password while you are typing in the Repeat Password field. If a developer forgets to trigger that same check when the original Password field changes, the system can be tricked.

By bypassing this check on the front-end, an attacker can submit a form where the two passwords do not actually match. If the back-end server also lacks proper validation, the user accounts get registered with broken data

so lets solve it

when visiting http://localhost:3000/#/register

and filling all required inputs except the password and repeat password

and typing for example “12345” in password input and repeat password

and it success bypass the validation and just delete “12345” in password (not repeate password ) and type any 5 somthing , for example “abcde”

it will still bypassed the validation of repeated password !!!

and then submit register it will success

Before Ending of PART 1

I really thanks to any reading this article and don`t forget follow me and subscribe my email news to delevering you the latest article

thanks for reading

Best Regards

0xcybersoldier


메타데이터
post_id
47002bcda7ef
slug
owasp-juice-shop-detailed-writeup-part-1-47002bcda7ef
url
https://medium.com/@0xCyberSoldier/owasp-juice-shop-detailed-writeup-part-1-47002bcda7ef
canonical_url
https://medium.com/@0xCyberSoldier/owasp-juice-shop-detailed-writeup-part-1-47002bcda7ef
author_url
https://medium.com/@0xCyberSoldier
status
ok
fetched_at
2026-09-16 09:48:21