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

DevSecOps Pipeline: Java Webapp

private-pipeline-basics-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 simple DevOps pipeline for a sample Java-based web application. The pipeline consists of the following components (and tasks):

  • Kali machine  (For pulling, modifying, and pushing the code)
  • GitLab server (For hosting code)
  • Jenkins server (For integrating). Different phases and components used:
    • Build:                         Maven
    • Code testing:            Maven
    • Test Deployment:     Ansible
    • Dynamic Testing:      Selenium
  • Test server (For test deployment)

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):

  • Sensitive Information Scan phase:       Talisman
  • Software Component Analysis:            OWASP dependency check
  • Dynamic Application Security Testing: OWASP ZAP 
  • Vulnerability Assessment:                     OpenVAS

Objective: Run the pipeline and observe/understand the DevSecOps process!


Instructions:

  • The GitLab server is reachable with the name 'gitlab'
  • Gitlab credentials:
UsernamePassword
rootwelcome123
  • The Jenkins server is reachable with the name 'jenkins'
  • Jenkins credentials:
UsernamePassword
adminwelcome123
  • The test deployment server is reachable by the name "test-server"
  • Test server SSH credentials:
UsernamePassword
tomcatpassword1

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  attackdefense@pentesteracademy.com  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 feedback@binarysecuritysolutions.com