Introduction
In this lab, you will explore two fundamental security concepts: input validation and code integrity. Input validation is the practice of ensuring that any input a program receives is safe and well-formed before it is processed. This is a critical defense against a wide range of attacks, including command injection. Code integrity involves verifying that your application code has not been altered or corrupted by an unauthorized party.
You will learn these concepts through a hands-on approach. First, you will create a simple shell script that is intentionally vulnerable to command injection. Next, you will exploit this vulnerability to understand the risk. Then, you will secure the script by implementing proper input sanitization. Finally, you will learn how to use cryptographic hashes to verify the integrity of your script, ensuring it hasn't been tampered with.



