In this practical course, the students deal with different aspects of (mobile and IoT) system security. The projects target operating system security in general. They comprise the following areas:
- System programming in general
- Design and implementation of selected software attacks
- Design and implementation of secure applications
- Modifications of and Experiments with Linux kernel based systems
Students who want to participate in the course should
- have solid knowledge of OS concepts/architectures
- be familiar with programming and debugging in C/C++
Actual programming experience on low-level system components or embedded platforms on the OS-level are not a prerequisite, but definitively an advantage.
The programming tasks are solved in teams of 2-3 students. At the beginning of the course, a kick-off lab-session is given to present the topics. The participants are required to form teams of 2-3 students.
At the midterm of the semester, each team has to hand in a short progress report and at the end of the semester a concluding lab-session is held in which every team has to shortly present its work/results.