252-1414-00L  System Security

SemesterAutumn Semester 2022
LecturersS. Capkun, S. Shinde
Periodicityyearly recurring course
Language of instructionEnglish


AbstractThe first part of the course covers general security concepts and hardware-based support for security.
In the second part, the focus is on system design and methodologies for building secure systems.
Learning objectiveIn this lecture, students learn about the security requirements and capabilities that are expected from modern hardware, operating systems, and other software environments. An overview of available technologies, algorithms and standards is given, with which these requirements can be met.
ContentThe first part of the lecture covers hardware-based security concepts. Topics include the concept of physical and software-based side channel attacks on hardware resources, architectural support for security (e.g., memory management and permissions, disk encryption), and trusted execution environments (Intel SGX, ARM TrustZone, AMD SEV, and RISC-​V Keystone).

In the second part, the focus is on system design and methodologies for building secure systems. Topics include: common software faults (e.g., buffer overflows, etc.), bug-​detection, writing secure software (design, architecture, QA, testing), compiler-​supported security (e.g., control-​flow integrity), and language-​supported security (e.g., memory safety).

Along the lectures, model cases will be elaborated and evaluated in the exercises.