Languages › C
C
RoadmapThe language under everything — and behind most memory-corruption bugs.
Learning Path Available — Lessons Currently Being Developed
Overview
C is the foundation of operating systems, network stacks, and the tooling everyone else builds on. For a security practitioner, C is the language of memory: buffer overflows, use-after-free, and the exploit primitives that turn a crash into code execution all live here. Learning C is learning how software actually breaks.
Why learn C
- Most kernels, libraries, and daemons are written in C — to find their bugs you must read it.
- Memory-corruption vulnerabilities are C bugs at heart.
- It is the prerequisite for serious binary exploitation and reverse engineering.
Security applications
- Buffer overflow and memory-corruption analysis
- Binary exploitation and shellcode
- Reverse engineering compiled software
- Writing custom low-level tooling
- Kernel and driver security review
Planned curriculum
- Pointers and memory layout
- The stack and the heap
- Buffer overflows from first principles
- Format string vulnerabilities
- Use-after-free and double-free
- Reading disassembly alongside source
- Writing exploit primitives
- Defensive coding and mitigations
This path is on the roadmap. The four live courses (Python, JavaScript, Bash, Regex) will teach you most of what carries over.