Skip to content

Commit abc6bea

Browse files
Merge branch 'main' of github.com:SecureFromScratch/Workshops
2 parents 2ff482a + f039579 commit abc6bea

3 files changed

Lines changed: 79 additions & 3 deletions

File tree

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# See others' Orders
2+
- Open the developer tool bar network tab
3+
- Go to your basket
4+
- Check carefully the request
5+
- Edit and resend the request so you will be able to get someone else's basket and resend
6+
- Check the network tab again
7+
8+
9+
## How edit and resend requests
10+
11+
### In Chrome DevTools
12+
13+
1. Open **Network** tab.
14+
2. Find the request you want to modify.
15+
3. Right-click it → **Copy → Copy as fetch**.
16+
4. Go to the **Console**, paste it, edit any part (URL, headers, body), and press **Enter** to resend.
17+
18+
### In Firefox Developer Tools
19+
20+
1. Open **Network** tab.
21+
2. Right-click the request → **Edit and Resend** (directly available).
22+
3. Modify any header, method, or body.
23+
4. Click **Send**.
24+
25+
26+
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Finding the scoreboard
2+
3+
## Expected result / verification
4+
Gain access to the scoreboard
5+
6+
## Hints
7+
- Use the Pretty Print ({}) function in Sources to make minified JS readable.
8+
- Search entire sources for keywords rather than scanning files manually.
9+
10+
## Steps (exact DevTools actions)
11+
- View Page Source (right-click → View Page Source) and search for keywords like "score", "admin", or "hidden".
12+
- Elements: inspect the DOM for hidden links or HTML comments that contain route hints.
13+
- Sources: open bundled JS files and search (Ctrl+F) for strings like "scoreboard"
14+
- Console: construct the discovered path (e.g., `/scoreboard`) and navigate `window.location="/scoreboard"` or fetch it via `fetch("/scoreboard")` to view content.
15+
- If the route is guarded by client checks, inspect the guard logic in Sources and try modifying client state (localStorage/cookie) accordingly.
16+
17+
## final Solution
18+
http://localhost:3000/#/score-board
19+
20+
21+

hacking/devtools/welcome.md

Lines changed: 32 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,42 @@
33
This lab is designed for **hands-on exploration of OWASP Juice Shop using only the browser’s Developer Tools** — no scanners, scripts, or external tools.
44
Students will learn how attackers uncover client-side weaknesses through **source inspection, network tracing, storage analysis, and live code manipulation** directly within DevTools.
55

6+
Refer to juice shop repo for installation: [Juice Shop Repo](https://github.com/juice-shop/juice-shop)
7+
68
# The challanges
7-
- Find the scoreboard
8-
- Try to change others' orders
9-
- Bypass the authentication by modifying in-memory state or calling exposed functions
9+
- Scoreboard - gain access to the scoreboard
10+
- View others' orders
11+
- Access the admin pabel
1012
- Manipulate authentication tokens stored on the client to change privileges or view protected content.
1113
- XSS - Find a place where user input is reflected into the DOM without sanitization and achieve JS execution in the page context.
1214

15+
## General Hints
16+
- View source
17+
- Check the cookies
18+
- Inspect the local stroage
19+
- Check the source control
20+
- Check the console
21+
- Check the netwrok tab
22+
- Debug (in the browser)
23+
- Use the Pretty Print ({}) function in Sources to make minified JS readable.
24+
25+
## How edit and resend requests
26+
27+
### In Chrome DevTools
28+
29+
1. Open **Network** tab.
30+
2. Find the request you want to modify.
31+
3. Right-click it → **Copy → Copy as fetch**.
32+
4. Go to the **Console**, paste it, edit any part (URL, headers, body), and press **Enter** to resend.
33+
34+
### In Firefox Developer Tools
35+
36+
1. Open **Network** tab.
37+
2. Right-click the request → **Edit and Resend** (directly available).
38+
3. Modify any header, method, or body.
39+
4. Click **Send**.
40+
41+
1342
# Solutions
1443
In the next pages will show the solution one after anohter
1544

0 commit comments

Comments
 (0)