WCU / Cybersecurity
~/CSC 472/Class 08/KP 01
Class 08 · KP 01 / 20

The Modern Defense Stack

  • In Class 03—05 we saw classic stack smashing: overwrite a return address, jump to shellcode on the stack.
  • Modern systems break that in two independent ways:
  • NX (No-eXecute / DEP): the stack and heap are not executable. Injected shellcode simply will not run.
  • ASLR: the addresses of the stack, heap, and shared libraries (libc) are randomized on every run. You do not know where anything is.
  • A single memory-corruption bug rarely buys you a shell anymore. You must chain primitives.
Key Takeaway

Real exploits are pipelines: first defeat ASLR, then hijack control flow. We study the chain to understand how to break it.