Anfängerpraktikum (BSc Informatik) - Binary Hacking

Kursübersicht

Hacking, Cracking, Freaking, Exploit. Diese Begriffe tauchen häufig im Kontext von Software in Filmen, Büchern und Medienberichten auf, doch was bedeuten sie eigentlich? Das Verhalten einer Software ist leider nicht trivial voraussagbar. Nicht vorgesehene Verhalten können, im besten Fall von neugieriegen Usern aber auch im schlechtesten Fall von böswilligen Akteuren, ausgenutzt werden, um beispielsweise Schutzmeachanismen zu umgehen, oder die Kontrolle über ein Rechnersystem zu erlangen. Ziel dieses Praktikums ist es ein wenig licht auf die Techniken zu werfen welche Hacker oft ausnutzen, um unbeasichtigtes Verhalten in Computerprogrammen zu finden und auszulösen. Dabei sollen neben den eigentlichen Angriffen auch Abwehrmechanismen gegen jene vorgestellt werden.

Dozent

Inhalte

  • Reverse Engineering von Binärcode
  • Dynamische Analyse mit Debugging Tools wie GDB
  • Exploit Entwicklung zu häufigen Schwachstellen wie:
    • Stack/Heap Buffer Overflow
    • Format String Vulnerabilities
    • Function Pointer Hijacking

Voraussetzungen

  • Gute Kenntnisse in C, Betriebssyteme und Netzwerke
  • Grundkenntisse Rechnerarchitektur (x86)
  • Erfahrung mit Debuggern oder Reversing Tools ist hilfreich, aber nicht zwingend notwendig
  • Ebenso hilfreich sind Assembly Kenntnisse (lesen), aber auch keine zwingende Voraussetzung

Hinweise

Anfängerpraktikum BSc Informatik:

  • 6CP (2 + 4 ÜK)
  • 180h (165h Einarbeitung anhand der Literatur und Vorbereitung mit dem Betreuer + 15 Präsenzstunden)
  • Prüfung besteht aus einer Presentation (Postersession) und einem Report (Poster + Write Up) plus einem dokumentierten Exploitprogramm.