A vulnerability is a bug or weakness inside an application that can be exploited or abused by an attacker to perform unauthorized actions. There are various types of vulnerabilities, all of which are caused mainly by insecure coding practices or mistakes. Particular attention should be taken when processing any input controlled by the end user, including environment variables and dependency modules. In this section, we will explore the most common cases and learn how attackers can leverage them.
There are many types of vulnerabilities that are being exploited in the wild. We will take a look at the most common ones and learn how an attacker can take advantage of them.