mediumFreeropbinary-exploitationexploitation
Course

Introduction to Return Oriented Programming

Learn the fundamentals of Return-Oriented Programming and modern binary exploitation through practical, exploitation-focused modules.

10
Modules
10
Lectures
9
Hands-on labs
3h
Of material

About this course

Learn the fundamentals of Return-Oriented Programming and modern binary exploitation through practical, exploitation-focused modules.

Syllabus

10 modules, 10 lectures and 9 hands-on challenges.

  1. Stack Alignments and Stack Working

    Understand stack structure, calling conventions, and how stack alignment affects exploitation.

    • Stack Alignments and Stack Working

    1 hands-on challenge

  2. Return to Shellcode

    Review classic shellcode execution and learn conditions for successful return-to-shellcode.

    • Return to Shellcode

    1 hands-on challenge

  3. Gadget Analysis and Finding Gadgets

    Learn to identify, analyze, and select effective ROP gadgets.

    • Gadget Analysis and Finding Gadgets
  4. ret2win

    Use ROP to reach hidden or privileged win functions in binaries.

    • ret2win

    1 hands-on challenge

  5. ret2system

    Leverage system() to execute commands via crafted ROP chains.

    • ret2system

    1 hands-on challenge

  6. ret2gets

    Extend control over memory and input using ret2gets patterns.

    • ret2gets

    1 hands-on challenge

  7. ret2libc

    Reuse existing libc functions and data for powerful, reliable exploits.

    • ret2libc

    1 hands-on challenge

  8. Out-of-Bounds and Arbitrary Writes

    Explore out-of-bounds primitives and their use in corrupting control data.

    • Out-of-Bounds and Arbitrary Writes

    1 hands-on challenge

  9. Stack Pivoting

    Learn to pivot the stack to attacker-controlled memory regions.

    • Stack Pivoting

    1 hands-on challenge

  10. Canary Bypass and Master Canary Overwrite

    Understand stack canaries and techniques to bypass or overwrite them.

    • Canary Bypass and Master Canary Overwrite

    1 hands-on challenge

Part of

This course is a leg of a longer track.

  • The Pwny way.

10 modules about 3 hoursOpened from your Arena account

Take Introduction to Return Oriented Programming

Create an account to open the lectures and launch this course's labs in the browser.

Create a free account