IMPORTANT:AttackDefense Labs is included with a Pentester Academy subscription! Upgrade Now to access over 1800+ Labs.

Already a Pentester Academy student? Your access will continue uninterrupted. Please use the same Google account to login here.

Not a Pentester Academy student? Try our Free Communitiy Labs

Challenge III

badge-api-security-advanced | Level: Easy  | Total Lab Runs: 0 | Premium Lab

Lab Scoreboard

A shopping cart application allows users to purchase laptops at low rates. The application makes use of JWT tokens for authorization purposes. With every product purchased, the user gets an invoice.

The application is still in the BETA phase so registrations are not accepted. Instead, a few selected individuals are provided access! Conclusively, the backend is SQLite-based due to the small size of the BETA members.

The application had suffered a breach the previous month and had tightened the security since then. Data retrieval is done with proper security practices to avoid any injection issues. But some artifacts of the breach might be present and could be of great value during this pentest exercise.

Objective: Leverage the misconfigurations on the backend server and retrieve the following:

  1. Flag retrieved from the exposed HTTP server

  2. Password for

  3. Flag retrieved after successful purchase by performing parameter tampering attack

  4. Password for user corey after retrieving all the invoices from the backend leveraging the lack of rate-limiting

  5. Flag present in the home directory of the compromised user, that is, corey


  • This lab is dedicated to you! No other users are on this network :)

  • Once you start the lab, you will have access to a Kali GUI instance.

  • Your Kali instance has an interface with IP address 192.X.Y.2. Run "ifconfig" to know the values of X and Y.

  • The shopping cart application should be running on port 5000 on the machine located at the IP address 192.X.Y.3.

  • Do not attack the gateway located at IP address 192.X.Y.1

    NOTE: This badge challenge is for evaluation, so we don't provide hints or explanations for this. Hence, contact us on support email only if you are facing a technical issue.

    1. Flag retrieved from the exposed HTTP server
    2. Password for
    3. Flag retrieved after a successful purchase
    4. Password for user corey
    5. Flag present in the home directory of the compromised user

    The following activities are strictly prohibited on this website unless otherwise explicitly stated as allowed in the mission statement:

    • Using automated scanners
    • Using brute force attacks
    • Denial of Service attacks
    • Attacking other student machines in challenges where you might achieve a shell on the vulnerable system
    • Attacking the lab infrastructure

    Users violating the above will be either temporarily or permanently banned from the website. 

    If you are unsure about an activity, then please contact support to confirm that it is allowed on our website.

    Technical Support for this Lab:

    There is a reason we provide unlimited lab time: you can take as much time as you need to solve a lab. However, we realize that sometimes hints might be necessary to keep you motivated!

    We currently provide technical support limited to:

    • Giving hints for a lab exercise
    • In rare circumstances, if you have totally given up (NO!!!) then tell you how to solve it. This will be limited to sharing the solution video or lab report
    • A lab exercise fails to load or has errors in it

    If you need technical support, please email  clearly mention the name and link of the lab exercise and other essential details. The more descriptive you are, the faster we can help you. We will get back to you within 24 hours or less. 

    For adminitrative queries, billing, enterprise accounts etc. please email