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

Fix the App: Django WebApp II

private-fix-the-code-webapps | Level: Easy  | Total Lab Runs: 0 | Premium Lab

Lab Scoreboard

DevOps practices are to combine software development (Dev) and IT operations (Ops) in order to improve the delivery process. DevOps pipelines are chained tasks and components that run in a sequence to cover different phases of software compilation, packaging, automated testing, and test deployment.  

In this lab, we have a DevSecOps pipeline for a Django web application. The pipeline consists of the following components (and tasks):

  • VS Code Server (For pulling, modifying, and pushing the code)

  • GitLab server (For hosting code)

  • Jenkins server (For integrating). Different phases and components used:

    • Build:                         Django

    • Code testing:            Django

    • Test Deployment:     Ansible

    • Dynamic Testing:      Selenium

  • Test server (For test deployment)

  • Archery Sec server (For Vulnerability management)

It is suggested to play the DevOps focused lab before playing this lab.

DevSecOps refer to introducing security in different stages of the DevOps process. This is done to catch the vulnerabilities/insecurities as soon as possible in the pipeline. In this lab, the pipeline consists of the following components (and tasks):

  • Automated Code Review:                    DevSkim

  • Sensitive Information Scan phase:      Truffle Hog

  • Software Component Analysis:            Safety

  • Static Code Analysis:                           Bandit

  • Dynamic Application Security Testing: OWASP ZAP 

  • Compliance as Code:                           Inspec


Objective: Fix the Issues in the stages of the pipeline and collect all the flags!


  • The GitLab server is reachable with the name 'gitlab'

  • Gitlab credentials:





  • The Archery server is reachable by the name "archerysec"

  • ArcherySec credentials:





1. Flag
2. Flag
3. Flag
4. Flag
5. Flag

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