Wintersemester 20/21

PG: WAT - WebAssembly Analysis Toolkit (WAT)

PG: WAT - WebAssembly Analysis Toolkit (WAT)

Type of courseProjektgruppe
LecturerProf. Dr.-Ing. Lucas Vincenzo Davi
ContactTobias Cloosters, M.Sc.
TermWinter Semester 2020/2021
Timenach Absprache
Roomnach Absprache
Start2nd Nov 2020
LanguageGerman/English
  • Fehler in WebAssembly erkennen
  • Automatisierte Analyse von WebAssembly-Anwendungen
  • Wissenschaftliches Arbeiten und Schreiben
Reverse Engineering Software Systems

Reverse Engineering Software Systems

Type of courseVorlesung mit integrierter Übung
LecturerProf. Dr.-Ing. Lucas Vincenzo Davi
Contact

Prof. Dr.-Ing. Lucas Vincenzo Davi

David Paaßen, M.Sc.

TermWinter Semester 2020/2021
TimeMo, 10:00-14:00 Uhr
RoomOnline Lehre
Start2nd Nov 2020
End8th Feb 2021
LanguageGerman/English
MoodleLecture in Moodle
LSFLecture in LSF

In dieser Vorlesung mit integrierter Übung sollen die Studenten lernen Computerprogramme auf Binärebene (ohne vorhandenen Quellcode) zu analysieren und ggf. die Programmlogik zu ändern. Dabei werden im Vorlesungsteil die notwendigen theoretischen Inhalte vermittelt, welche anschließend im praktischen Teil der Übung angewendet werden sollen. Ein besonderer Fokus liegt dabei auf Intel x86 basierten Systemen auf denen die meisten klassischen Anwendungen lauffähig sind. Zusätzlich werden auch gängige Fehler in Programmen erläutert und analysiert wieso diese für Angriffe ausgenutzt und vermieden werden können. Ziel der Vorlesung ist es, dass die Studenten ein grundlegendes Verständnis über die Möglichkeiten im Bereich Reverse-Engineering haben und dort bewährte Tools einsetzen können.

  • Eldad Eilam: Reversing: Secrets of Reverse Engineering. Wiley, 2005
Secure Software Systems (Sichere Software Systeme)

Secure Software Systems (Sichere Software Systeme)

Type of courseVorlesung
LecturerProf. Dr.-Ing. Lucas Vincenzo Davi
Contact

Prof. Dr.-Ing. Lucas Vincenzo Davi

Dr. Michael Rodler

TermWinter Semester 2020/2021
TimeDo, 12 - 14 Uhr
RoomVirtuell
Start5th Nov 2020
End11th Feb 2021
LanguageGerman/English
MoodleLecture in Moodle
LSFLecture in LSF

In dieser Vorlesung erhalten die Studierenden einen Überblick über aktuelle Forschung, Angriffstechniken und Abwehrmethoden im Bereich der Software- und Systemsicherheit. Es werden Sicherheitsprobleme und Schutztechnologien auf Applikations- und Betriebssystemebene 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. Die Vorlesung umfasst folgende Themenschwerpunkte:

  • 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

Die Studierenden kennen die wichtigsten Klassen von Angriffstechniken und Abwehrmethoden im Bereich der Softwaresicherheit von der Applikationsebene bis zum Betriebssystem. Sie besitzen fundierte Kenntnisse in der Entwicklung von Angriffstechniken auf Softwaresystemen und sind in der Lage konkrete Verfahren zur Härtung von Softwaresystemen gegen fortgeschrittene Softwareangriffe anzuwenden. Sie kennen hardware-basierte Verfahren zur Durchsetzung von Softwaresicherheit und kennen die aktuelle Forschung und Problemstellungen bezüglich der Entwicklung von sicheren Softwaresystemen. Zusätzlich beherrschen sie die Konzepte von Softwarebasierten Angriffstechniken und Abwehrmethoden für verschiedenen Rechnerplattformen.

  • W. Stallings, L. Brown: Computer Security: Principles and Practice, Prentice Hall, 2014
  • M. Bishop: Computer Security: Art and Science, Pearson Education, 2015
  • 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)
  • W. Stallings, L. Brown: Computer Security: Principles and Practice, Prentice Hall, 2014
  • M. Bishop: Computer Security: Art and Science, Pearson Education, 2015
  • 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)
Übung: Secure Software Systems (Sichere Software Systeme)

Übung: Secure Software Systems (Sichere Software Systeme)

Type of courseÜbung
LecturerProf. Dr.-Ing. Lucas Vincenzo Davi
Contact

Prof. Dr.-Ing. Lucas Vincenzo Davi

Dr. Michael Rodler

TermWinter Semester 2020/2021
TimeDo, 14 - 16 Uhr
RoomVirtuell
Start5th Nov 2020
End11th Feb 2020
LanguageGerman/English
MoodleLecture in Moodle
LSFLecture in LSF

Theoretische und praktische Übungen zur Vorlesung Secure Software Systems.

Masterprojekt Sichere Software Systeme

Masterprojekt Sichere Software Systeme

Type of courseMasterprojekt
LecturerProf. Dr.-Ing. Lucas Vincenzo Davi
ContactProf. Dr.-Ing. Lucas Vincenzo Davi
TermWinter Semester 2017/2018
Timenach Absprache
Roomnach Absprache
LanguageGerman/English
LSFLecture in LSF

Das Masterprojekt Sichere Software Systeme konzentriert sich auf aktuelle Forschungsthemen im Bereich der anwendungsorientierten IT-Sicherheit. Bei Interesse an einem Masterprojekt wenden Sie sich an Prof. Davi, um einen persönlichen Termin zu vereinbaren.

Bachelorprojekt Sichere Software Systeme

Bachelorprojekt Sichere Software Systeme

Type of courseBachelorprojekt
LecturerProf. Dr.-Ing. Lucas Vincenzo Davi
Contact

Prof. Dr.-Ing. Lucas Vincenzo Davi

Dr. Michael Rodler

Dr. Sebastian Surminski

TermSummer Semester 2018
Timenach Absprache
Roomnach Absprache
LanguageGerman/English
LSFLecture in LSF

Das Bachelorprojekt Sichere Software Systeme konzentriert sich auf aktuelle Forschungsthemen im Bereich der anwendungsorientierten IT-Sicherheit. Bei Interesse an einem Bachelorprojekt wenden Sie sich an Prof. Davi, um einen persönlichen Termin zu vereinbaren. Basierend auf Ihren Interessen, Vorkenntnissen und unseren aktuellen Forschungsthemen, werden wir dann gemeinsam ein Thema für Sie auswählen.

Seminar Secure Software Systems

Seminar Secure Software Systems

Type of courseSeminar
LecturerProf. Dr.-Ing. Lucas Vincenzo Davi
Contact

David Paaßen, M.Sc.

Dr. Sebastian Surminski

TermWinter Semester 2020/2021
Timenach Absprache
Roomnach Absprache
LanguageEnglish
MoodleLecture in Moodle
LSFLecture in LSF

Themen und Termine für Seminararbeiten werden individuell vergeben. Unten finden Sie aktuelle Themen sowie die Kontaktperson. Bei Interesse vereinbaren Sie bitte einen Termin mit dem jeweiligen Mitarbeiter.

Directed fuzzing – Kontakt: Paaßen, David david.paassen (at) uni-due.de

Fuzzing is one of the most efficient ways to automatically find bugs in software. A fuzzer generates data which is subsequently used as input for a program under test. If the fuzzers detects any unwanted behavior (e.g., a crash) the input is saved to be able to find the root cause of the problem. Directed fuzzers try to focus their efforts on the parts of the program which are more likely to contain bugs and vulnerabilities. The goal of the seminar is to provide an overview of directed fuzzing approaches published in academic literature and compare the different existing approaches to find similarities and differences.

Seminar: Remote Attestation – Kontakt: Surminski, Sebastian sebastian.surminski (at) uni-due.de

Remote attestation is the verification of the correct operation of a remote system by an external entity. This is often applied, but not limited to embedded devices. For example, remote attestation can be used to ensure that a security-relevant on-site device is not tampered by a remote attacker. Remote attestation can cover different types of integrity, e.g. static code integrity and correct execution, i.e., run-time integrity. In this seminar, we investigate different aspects of remote attestation. Students read several papers covering a specific aspect of remote attestation and summarize them in a seminar paper, focusing on the differences between the proposed solutions in these papers. Goal of the seminar is to enable students to read scientific literature, line out the problem, and summarize the findings.

Die Studierenden lernen Methoden des wissenschaftlichen Arbeitens und sind in der Lage eigenständig ein Themengebiet auf Basis von wissenschaftlichen Veröffentlichungen zu erarbeiten. Durch die Seminararbeit lernen die Studierenden ein wissenschaftliches Thema zusammenzufassen sowie wissenschaftliche Publikationen zu systematisieren und bewerten. Die Studierenden üben die Präsentation über ein wissenschaftliches Themengebiet in Form der Abschlusspräsentation.