NUMMER: | 211015 |
KÜRZEL: | PA |
MODULBEAUFTRAGTE:R: | Prof. Dr. Kevin Borgolte |
DOZENT:IN: | Prof. Dr. Kevin Borgolte |
FAKULTÄT: | Fakultät für Informatik |
SPRACHE: | Deutsch |
SWS: | 4 SWS |
CREDITS: | 5 CP |
ANGEBOTEN IM: | jedes Sommersemester |
LINK ZUM MOODLE-KURS
Hier entlang.
LERNFORM
Vorlesung und Übungen
LERNZIELE
Die Studierenden kennen verschiedene Konzepte, Techniken und Tools aus dem Bereich der Programmanalyse. Dies beinhaltet den Überblick über verschiedene Konzepte aus dem Bereich Reverse Engineering sowie Binäranalyse. Die Studierenden haben grundlegendes Verständnis von sowohl statischen als auch dynamischen Methoden zur Analyse eines gegebenen Programms. Sie sind in der Lage, verschiedene Aspekte der Programmanalyse zu beschreiben und auf neue Problemstellungen anzuwenden.
INHALT
In der Vorlesung werden unter anderem die folgenden Themen und Techniken aus dem Bereich der Programmanalyse behandelt:- Statische und dynamische Analyse von Programmen
- Analyse von Kontroll- und Datenfluss
- Symbolische Ausführung
- Taint Tracking
- Binary Instrumentation
- Program Slicing
- Überblick zu existierenden Analysetools
Daneben wird im ersten Teil der Vorlesung eine Einführung in x86/x64 Assembler gegeben sowie die grundlegenden Techniken aus dem Themenbereich Reverse Engineering vorgestellt. Begleitet wird die Vorlesung von Übungen, in denen die vorgestellten Konzepte und Techniken praktisch eingeübt werden.
VORAUSSETZUNGEN CREDITS
Bestandene Modulabschlussprüfung
EMPFOHLENE VORKENNTNISSE
Erfahrung in systemnaher Programmierung, Assembler sowie Programmieren in C sind hilfreich für das Verständnis der vermittelten Themen. Vorkenntnisse aus den Vorlesungen Systemsicherheit/Betriebssystemsicherheit sind hilfreich aber nicht notwendig zum Verständnis der Themen.