Memory Corruption & ROP Fundamentals
Understand how return-oriented programming defeats NX and why memory-safety defenses matter — on a teaching binary you compile yourself.
One-time payment · lifetime access · lessons, labs, exam and certificate included · no subscription.
About this course
This advanced course explains how memory-corruption exploitation actually works, so you can understand and defend against it. You compile your own deliberately vulnerable teaching program and use it to learn why jumping straight to a target function fails, how the x86-64 calling convention passes arguments in registers, and what a ROP gadget is. You find a pop-rdi-ret gadget with objdump and nm, assemble a return-oriented chain in Python, and see it call a function with a value you chose. Further lessons explain why NX and DEP killed classic shellcode, how ASLR and PIE force the leak-compute-ROP workflow, and the ret2libc concept behind a shell. Every exercise runs on a binary you build and own, for legal learning and defense only.