FT-Seminar: "IT-Sicherheit in Anwendungen: Risiken, Bedrohungen und Schwachstellen"

IT-Sicherheitsrisiken, -bedrohungen und -schwachstellen realitätsnah erleben!

Du hast die Chance, Hintergründe von Sicherheitsvorfällen zu analysieren und Lösungen zu identifizieren, die die Softwareentwicklung sicherer machen!

Im Frühjahrstrimester (FT) bietet die Professur für IT-Sicherheit von Software und Daten das Seminar zum Themengebiet "IT-Sicherheit in Anwendungen: Risiken, Bedrohungen und Schwachstellen" an.

Das Seminar kann von Bachelor- und Masterstudierenden belegt und in Englisch oder Deutsch bearbeitet werden.

Lernziele

  • Kennenlernen aktueller Risiken, Schwachstellen und Bedrohungen im Bereich der IT-Sicherheit von Software und Daten.
  • Praktisches Verständnis für die Risiken, Schwachstellen und Bedrohungen entwickeln, die zu Sicherheitsvorfällen führen.
  • Erstellung eines Überblicks über aktuelle Herausforderungen und Lösungsmöglichkeiten zur sicheren Gestaltung der Softwareentwicklung (themenbezogen) auf Basis einer Literaturrecherche.
  • Präsentation wissenschaftlicher Arbeiten sowie aktive Teilnahme an wissenschaftlichen Diskussionen.
  • Erstellung einer wissenschaftlichen Ausarbeitung (korrektes Zitieren, formale Gestaltung, sprachlicher Ausdruck etc.).

Ablauf

  1. Vorbereitungsphase: Themen werden gesammelt und auf dieser Seite veröffentlicht. Studierende melden sich per E-Mail (laura.stojko@unibw.de) an und können einen Themenwunsch (bis zu 2 Themen) angeben.
  2. Präsenz - Kick-Off: Zu Beginn des Trimesters (23.04.2026, 17 Uhr) findet eine Kick-Off-Veranstaltung zur Themenvorstellung und -vergabe statt. Die Bearbeitungszeit beträgt 10 Wochen und beginnt mit diesem Termin.
  3. Arbeitsphase: Einarbeitung in das Thema, Erarbeitung eines Themenüberblicks (Motivation, praktische Beispiele, Vergleiche mit bekannten Konzepten)
  4. Präsenz in Arbeitswoche 3/4: Zwischenpräsentation mit Themenüberblick und Bearbeitungsplan 
  5. Arbeitsphase: Analyse des Sicherheitsrisikos, der Schwachstelle oder Bedrohung, Recherche zu geeigneten Lösungsmöglichkeiten
  6. Präsenz in Arbeitswoche 6/7: Zwischenpräsentation zum aktuellen Stand ("Inwiefern trägt das eigene Thema zu sicherer Software bei?")
  7. Arbeitsphase: Bewertung der identifizierten Lösungsmöglichkeiten, Ausarbeitung
  8. Präsenz in Arbeitswoche 9: Vorstellung der Arbeit als Poster in der Abschlusspräsentation
  9. Arbeitsphase: Finalisierung der Ausarbeitung und Abgabe

Angebotene Themen im FT26

1. Sichere Nebenläufigkeit in Rust

Ziele:

  • Einarbeitung in sichere Konzepte zur Nebenläufigkeit in Rust
  • Gegenüberstellung der Konzepte mit typischen Bedrohungen (z.B. Race Conditions, Deadlocks usw.).
  • Analyse der Funktionsweise zentraler Konzepte (Threads, Message-Passing, Futures + Runtime wie Tokio etc.)
  • Ausarbeitung aussagekräftiger Code-Beispiele in Rust zur Unterstützung der Argumentation
  • Vergleich mit ein bis zwei populären Programmiersprachen (z.B. C, Java, Scala, Python etc.)
  • Diskussion der Grenzen der Ansätze

2. Mathematical Provers for Guaranteeing Secure Software with Rust

Rust bietet als Programmiersprache viele Vorteile, da sie statische Typprüfungen zur Kompilierzeit durchführt und als besonders speichersicher gilt, wodurch zahlreiche Fehler bereits frühzeitig erkannt und verhindert werden. Ein weiteres zentrales Gebiet der Softwaresicherheit ist die formale Verifikation von Programmcode.
Durch mathematische Beweise von Programmeigenschaften könnten bestimmte Sicherheits- und Korrektheitseigenschaften garantiert werden.

Ziel dieses Themas ist es, zu untersuchen, inwiefern Rust mit Ansätzen der formalen Verifikation kombiniert werden kann und welchen Beitrag dies zur Entwicklung sicherer Software leisten kann.

Ziele:

  • Überblick über typische Programmierschwachstellen in Rust trotz moderner Sicherheitsmechanismen 
  • Einführung in Ansätze der formalen Verifikation und mathematische Beweissysteme für Software
  • Analyse aktueller Werkzeuge und Ansätze zur formalen Verifikation von Rust-Code
  • Bewertung des aktuellen Stands der Forschung (2026) zur Kombination von Rust und formaler Verifikation
  • Demonstration ausgewählter Ansätze anhand kleiner Code-Beispiele oder Experimente

3. Nutzersegmentierung mit Clustering in scikit-learn: Chancen und Risiken

Clustering-Verfahren werden häufig eingesetzt, um Daten automatisch zu gruppieren, beispielsweise zur Nutzersegmentierung oder Personalisierung. Bibliotheken wie scikit-learn stellen hierfür verschiedene Algorithmen bereit, etwa K-Means, DBSCAN oder hierarchisches Clustering.
Die Ergebnisse solcher Verfahren hängen jedoch stark von der Datenrepräsentation, der Vorverarbeitung und möglichen Veränderungen der Eingabedaten ab. In datengetriebenen Anwendungen können daraus Risiken entstehen, etwa durch manipulierte Datenpunkte, instabile Cluster oder mögliche Rückschlüsse auf sensible Nutzereigenschaften.
Ziele:

  • Einarbeitung in Clustering-Verfahren mit scikit-learn (für MovieLens-Dataset) (z. B. K-Means, DBSCAN, Hierarchical Clustering)
  • Analyse typischer Herausforderungen bei der automatischen Gruppierung von Daten
  • Untersuchung, wie Veränderungen der Eingabedaten, Ausreißer oder manipulierte Datenpunkte die Clusterbildung beeinflussen können
  • Ausarbeitung aussagekräftiger Python-Beispiele zur Demonstration solcher Effekte
  •  Diskussion möglicher Risiken und Grenzen automatischer Nutzersegmentierung

 

Weitere Themen folgen in Kürze. Gerne können auch eigene Themen vorgeschlagen werden.