Informations about the modules
Module (6 Credits)
Secure Software Systems
- Name in diploma supplement
- Secure Software Systems
- Responsible
- Admission criteria
- See exam regulations.
- Workload
- 180 hours of student workload, in detail:
- Attendance: 60 hours
- Preparation, follow up: 75 hours
- Exam preparation: 45 hours
- Duration
- The module takes 1 semester(s).
- Qualification Targets
Die Studierenden
- kennen die wichtigsten Klassen von Angriffstechniken und Abwehrmethoden im Bereich der Softwaresicherheit von der Applikationsebene bis zum Betriebssystem.
- besitzen fundierte Kenntnisse in der Entwicklung von Angriffstechniken auf Softwaresysteme.
- sind in der Lage, eigenständig Proof-of-Concept-Angriffe auf Softwaresysteme zu entwickeln.
- können konkrete Verfahren zur Härtung von Softwaresystemen gegen fortgeschrittene Softwareangriffe anwenden.
- kennen hardware-basierte Verfahren zur Durchsetzung von Softwaresicherheit.
- beherrschen die Konzepte von Softwarebasierten Angriffstechniken und Abwehrmethoden auf verschiedenen Rechnerplattformen.
- kennen die aktuelle Forschung und Problemstellungen bezüglich der Entwicklung von sicheren Softwaresystemen.
- Module Exam
Zum Modul erfolgt eine modulbezogene Prüfung in der Gestalt einer Klausur (in der Regel: 90-120 Minuten) oder mündlichen Prüfung (in der Regel: 20-40 Minuten); die konkrete Prüfungsform (Klausur oder mündliche Prüfung) wird in der ersten Woche der Vorlesungszeit von dem zuständigen Dozenten festgelegt.
- Usage in different degree programs
- Elements
Lecture (3 Credits)
Secure Software Systems
- Name in diploma supplement
- Secure Software Systems
- Organisational Unit
- Lecturers
- SPW
- 2
- Language
- German
- Cycle
- winter semester
- Participants at most
- no limit
- Preliminary knowledge
Grundlegende Kenntnisse in Programmierung und Software Engineering
- Abstract
In dieser Vorlesung erhalten die Studenten einen Überblick über aktuelle Forschung, Angriffstechniken und Abwehrmethoden im Bereich der Software- und Systemsicherheit. Es werden Sicherheitsprobleme und Schutztechnologien auf Applikations- und Betriebssysteme für unterschiedliche Rechnerarchitekturen (Desktop PCs, mobile und eingebettete Systeme) analysiert. Ein besonderer Fokus dieser Vorlesung ist die Verwundbarkeit von Softwaresystemen gegenüber Laufzeitangriffen (Exploits). Ziel der Vorlesung ist sowohl das Verständnis von modernen, praktischen Angriffstechniken gegen Softwaresysteme als auch die Entwicklung und Anwendung von Sicherheitstechnologien für Softwaresysteme.
- Contents
- Konventionelle und fortgeschrittene Software Exploittechniken (Buffer Overflow, Return-Oriented Programming)
- Entwicklung von Sicherheitstechnologien zur Detektion und Prävention von Software Exploits (Programmfluss-Integrität, Speicherrandomisierung)
- Software Fault Isolation und Application Sandboxing
- Betriebssystemsicherheit und Zugriffsmodelle mit praktischen Beispielen anhand von Sicherheitsarchitekturen in Multics, Android und Windows
- Trusted Computing Konzepte
- Hardware-basierte Konzepte zur Unterstützung von Softwaresicherheit
- Literature
- T. Jaeger: Operating System Security, Morgan & Claypool, 2008
- C. Anley, J. Heasman, F. Lindner, G. Richarte: The Shellcoder's Handbook: Discovering and Exploiting Security Holes, Wiley, 2007
- L. Davi: Building Secure Defenses Against Code-Reuse Attacks, Springer, 2015
- R. Anderson. Security Engineering: A Guide to Building Dependable Distributed Systems, Wiley, 2008
- Aktuelle wissenschaftliche Publikationen von einschlägigen Sicherheitstagungen (werden in der Vorlesung bekannt gegeben)
- Participants
Exercise (3 Credits)
Secure Software Systems
- Name in diploma supplement
- Secure Software Systems
- Organisational Unit
- Lecturers
- SPW
- 2
- Language
- German
- Cycle
- winter semester
- Participants at most
- no limit
- Preliminary knowledge
siehe Vorlesung
- Abstract
Es werden sowohl praktische als auch theoretische Übungen durchgeführt. In den praktischen Übungen werden die Teilnehmer am Beispiel von verwundbaren Softwaresystemen die Anwendung von Exploittechniken kennenlernen. Zum Beispiel werden die Teilnehmer Proof-of-Concept Exploits auf mobilen Android Systemen selbstständig entwickeln und die Anwendung und Konfiguration von Sicherheitstechnologien zur Detektion dieser Angriffe kennenlernen. Die theoretischen Übungen beinhalten vertiefende Aufgaben zum Stoff der Vorlesung und Analysen von aktuellen wissenschaftlichen Publikationen im Bereich der Softwaresicherheit.
- Contents
siehe Vorlesung
- Literature
siehe Vorlesung
- Participants