Intro to reverse engineering and software exploitation
This is the training material that i used to train the participants of the CyberChallenge.it 2020 contest of the Marche Polytechnic University on reverse engineering and software exploitation.
Lessons
Lesson 1
Lesson PDF file: Lesson 1 - Intro to PWN e Reverse engineering.pdf
Proposed challenges: Lesson 1 CTFs folder
Topics
- Introduction to the C language
- x86 architecture registers
- Assembly language
- System calls
- Ghidra
- Structure of an executable file
- Sections of an executable file
- Stacks
- Stack overflows
- Introduction to reverse engineering
- Static and dynamic analysis
Lesson 2
Lesson PDF file: Lesson 2 - Intro to PWN e Reverse engineering.pdf
Proposed challenges: Lesson 2 CTFs folder
Topics
- Lesson 1 review
- Introduction to Software exploitation
- Address Space Layout Randomization (ASLR)
- Buffer overflow
- Global Offset Table (GOT)
- Stack canary
- Return Oriented Programming (ROP)
- Buffer overflow attack techniques
Lesson 3
Lesson PDF file: Lesson 3 - Intro to PWN e Reverse engineering.pdf
Proposed challenges: Lesson 3 CTFs folder
Topics
- Lesson 2 review
- Format String Exploit