1. tooling
  2. buffer overflows
  3. shellcode
  4. format strings