Buffer Overflows
Classic exploits where you overwrite memory to hijack execution flow. Often used to:
- Overwrite
return addresseson the stack - Execute shellcode
- Gain arbitrary code execution
Format String Exploits
Occur when printf and friends are misused. Attackers can:
- Read arbitrary memory
- Write to arbitrary memory locations
- Escalate privileges or leak secrets
Use-After-Free & Heap Exploits
Memory management bugs on the heap can allow attackers to:
- Corrupt data structures
- Overwrite function pointers
- Trigger arbitrary code execution
Return-Oriented Programming (ROP)
Advanced technique to bypass NX/DEP protections. Attackers chain "gadgets" to:
- Call system functions
- Manipulate memory
- Gain full control of the program
Exploitation Tips
- Always analyze the binary with
gdborpwndbg - Understand the calling conventions and memory layout
- Practice on CTF-style challenges
- Read write-ups and learn from them