Learn about the impact of stack buffer overflows
Introduction
Introduction: "Smashing the stack"
Docker Setup
Frame Layout
Stack Buffer Overflow
Redirect control flow
Answers to exercises
Next Steps
Learn about the impact of stack buffer overflows
Who is this for?
This is an advanced topic for software developers interested in understanding how memory vulnerability-based exploits work on AArch64 and how to defend against them.
What will you learn?
Upon completion of this Learning Path, you will be able to:
- Analyze the stack frame layout to derive which field in user input overwrites the return address stored on the stack.
- Build a basic end-to-end exploit by changing the return address to an attacker-controlled value.
Prerequisites
Before starting, you will need the following:
- An Arm computer running linux with Docker installed.
- Some familiarity with reading and writing basic C code and AArch64 assembly code.
- Some familiarity with running linux command line commands.
- Some familiarity with using a gdb debugger.