Lab info



Lab author
Challenge
Getting Started in the Lab Environment
Here are the initial instructions and explanation of the lab environment. Read this while your environment is busy creating itself from nothing. Yes, this violates physics; we know. How fun!
Challenge
Exploiting a simple command injection vulnerability
In this challenge, you will interface with a web API and exploit a simple command injection vulnerability. You will execute commands on a remote system via the web API.
Challenge
Bypassing a command injection blocklist
In this challenge, you will encounter a naive blocklist which will prevent you from using the simple command injection approach taken in the previous challenge. However, you will learn that there are a number of different ways to achieve the same command injection result which can be used to bypass a naive blocklist. Furthermore, you will learn how to execute commands with spaces, even when spaces are not directly permitted as an input.
Challenge
The Last Challenge
Welcome to the final challenge! This is your last chance to experiment in the environment. Clicking Finish Lab will end this little world that flittered into existence just for you.
Provided environment for hands-on practice
We will provide the credentials and environment necessary for you to practice right within your browser.
Guided walkthrough
Follow along with the author’s guided walkthrough and build something new in your provided environment!
Did you know?
On average, you retain 75% more of your learning if you get time for practice.
Recommended prerequisites
- Linux Command Line Familiarity
- Interfacing with a web API