This is the repository where the materials for the Operating Systems: Design and Security Lab can be found.
In the lab we will touch on several subjects and exploitation techniques also explained in the course, such as:
- Virtual Memory
- Buffer Overflows
- Shellcoding
- Return 2 Libc
- Return Oriented Programming
- Address Space Layout Randomization & PIE
- Stack Canaries
- Data-Only Attacks
- Function Oriented Programming and Counterfeit Object Oriented Programming
- Intel CET
- Use-After-Free
- Double Free
- Other fun stuff
Each lab has a directory containing a README.md
. Those will explain important concepts, ask helpful questions and offer you exercises.
We will use the READMEs as support for the lab, but will also probably use the whiteboard and slides from .hidden presentations to explain various concepts.
Since this is the first year this lab runs in this format, there was no time to prepare an in-depth point system. Additionally, the labs are created and adjusted throughout the semester.
Because of these reasons, the labs will each have a flat 7 points. The points are equally divided between the exercises.1 This might not be completely fair, as some labs/exercises are harder and others are easier. I welcome suggestions for next years.
You also get one extra point for free, so you can achieve a total of 50 points.
If you spot a mistake, be it either technical or spelling, please open a pull request to fix it, or at least open an issue.
I also welcome any feedback, discussions or suggestions to improve the lab. Let the PRs rain.
Footnotes
-
With the exception of Lab 7, which is special. ↩