The Vulnerability Classes We Will Study
A roadmap of bug classes, roughly in the order we attack them:
- Stack buffer overflow — overwrite the return address.
- Shellcode — inject and execute your own machine code.
- Format string — arbitrary read/write via
printffamily misuse. - ROP / ret2libc — reuse existing code when injection is blocked.
- Information leaks + GOT overwrite — multi-stage exploits that defeat randomization.
- Heap corruption — use-after-free, tcache poisoning.
- Kernel exploitation — a kernel use-after-free.
Key Takeaway
Each class corresponds to a lab. Together they trace the real history of exploitation and defense.