NUMMER: | 211107 |
KÜRZEL: | SP |
MODULBEAUFTRAGTE:R: | DR.-ING. TIM BLAZYTKO |
DOZENT:IN: | |
FAKULTÄT: | Fakultät für Informatik |
SPRACHE: | Deutsch |
SWS: | 3 |
CREDITS: | 5 |
ANGEBOTEN IM: | jedes Sommersemester |
LERNFORM
Die Veranstaltung wird als Vorlesung mit integrierten Übungen abgehalten. In den Übungen werden Studierende existierende Protection-Mechanismen analysieren sowie Eigene designen, implementieren und attackieren. Die Nähe zur Praxis vermittelt ein tiefgreifendes Verständnis der einzelnen Konzepte und Werkzeuge.
LERNZIELE
Die Studierenden kennen verschiedene Konzepte, Techniken und Tools aus dem Bereich Software Protection. Dies beinhaltet sowohl Wissen über das Design und die Implementierung von Obfuskierungstechniken als auch die Sicherheitsanalyse gängiger Systeme. Die Studierenden lernen erweiterte Techniken zur Programmanalyse, mit welchen sie komplexe Protection-Mechanismen angreifen können. Sie sind in der Lage, verschiede Aspekte der Software Protection zu beschreiben und auf neue Problemstellungen anzuwenden.
INHALT
Unter Software Protection versteht man Maßnahmen, welche die Analyse bzw. das Reverse Engineering von Software erschweren. Solche Methoden finden sowohl Anwendung in kommerzieller Software, um Piraterie zu verhindern, als auch in Malware, um deren Funktionsweise zu verschleiern.In dieser Lehrveranstaltung lernen die Studierenden gängige Methoden der Software Protection kennen sowie Methoden, um diese zu brechen. Dazu designen und implementieren sie in praxisnahen Aufgaben erst ihre eigenen Protection-Mechanismen, welche sie im Anschluss brechen werden mit dem Ziel, diese wieder zu verbessern. Parallel dazu werden Schutzmechanismen aus der echten Welt analysiert, attackiert und diskutiert.
Dabei werden unter anderem die folgenden Themen und Techniken aus dem Bereich Software Protection behandelt:
- Opaque Predicates
- Control-flow Flattening
- Mixed Boolean-Arithmetic Expressions
- Virtual Machines
- Anti-Tamper
- Symbolische Ausfuehrung
- SMT Solving
- Programmsynthese
- Überblick zu existierenden Analysetools und Frameworks
VORAUSSETZUNGEN CREDITS
Bestandene Modulabschlussprüfung