Software Vulnerabilities

How vulnerabilities in code become attack vectors — from memory corruption to logic flaws.

The code layer

Security controls are only as strong as the software that implements them. A single unchecked buffer, a mishandled pointer, or a logic error in access control can give an attacker a foothold that bypasses every perimeter defense.

This module explores software-level vulnerabilities: what causes them, how attackers exploit them, and how defenders prevent them. We start with the classic buffer overflow — still one of the most impactful vulnerability classes decades after it was first described — and expand from there.