Topic: Absicherung der automatischen Knotenerkennung in verteilten Odysseus-Systemen

Topic: Absicherung der automatischen Knotenerkennung in verteilten Odysseus-Systemen

Personal details

Title Absicherung der automatischen Knotenerkennung in verteilten Odysseus-Systemen
Description

Hintergrund

Odysseus ist ein erweiterbares Datenstrommanagementsystem, mit dem kontinuierliche Anfragen auf Datenströmen formuliert und ausgeführt werden können. Neben der Ausführung auf einem einzelnen System unterstützt Odysseus auch verteilte Szenarien, in denen mehrere Odysseus-Knoten gemeinsam zur Anfrageverarbeitung genutzt werden können.

In einem solchen verteilten System müssen Knoten einander zunächst finden und sich gegenseitig bekannt machen. Dafür existieren in Odysseus verschiedene Discovery-Mechanismen, unter anderem über Broadcast, Multicast und explizite IP-Listen. Sobald ein anderer Knoten gefunden wird, kann dieser dem Netzwerk hinzugefügt und anschließend für verteilte Anfrageverarbeitung, Operatorplatzierung oder Datenweiterleitung verwendet werden.

Dieses Vorgehen ist für lokale Testumgebungen, Demonstratoren und geschlossene Laborumgebungen sehr komfortabel. Aus Sicherheitssicht ergibt sich jedoch ein Problem: Ein per Broadcast oder Multicast entdeckter Knoten ist nicht automatisch vertrauenswürdig. Ohne zusätzliche Schutzmechanismen könnte sich ein fremder oder kompromittierter Knoten als Odysseus-Knoten ausgeben und Teil des verteilten Systems werden.

Ziel dieser Abschlussarbeit ist es daher, bestehende Discovery- und Registrierungsmechanismen in Odysseus zu analysieren und Konzepte zu entwickeln, mit denen die automatische Knotenerkennung sicherer gestaltet werden kann.

Ziel der Arbeit

Ziel der Arbeit ist die Konzeption, prototypische Umsetzung und Evaluation eines Sicherheitskonzepts für die automatische Registrierung von Knoten in einem verteilten Odysseus-System.

Dabei soll insbesondere untersucht werden, wie Discovery-Mechanismen wie Broadcast und Multicast weiterhin genutzt werden können, ohne dass gefundene Knoten automatisch als vertrauenswürdig gelten. Stattdessen soll ein mehrstufiges Verfahren entstehen, bei dem Discovery, Authentifizierung, Autorisierung und Aktivierung eines Knotens klar voneinander getrennt werden.

Ein möglicher Ansatz besteht darin, Discovery-Nachrichten kryptographisch abzusichern, beispielsweise durch signierte Nachrichten, Shared Secrets, Challenge-Response-Verfahren oder Zertifikate. Darüber hinaus kann untersucht werden, wie Knotenidentitäten, Cluster-Zugehörigkeit, Rollen und Berechtigungen modelliert und geprüft werden können.

Mögliche Fragestellungen

Im Rahmen der Arbeit können unter anderem folgende Fragen betrachtet werden:

  • Welche Angriffs- und Fehlkonfigurationsszenarien ergeben sich durch automatische Knotenerkennung per Broadcast oder Multicast?
  • Wie kann verhindert werden, dass sich beliebige Systeme als Odysseus-Knoten ausgeben?
  • Wie lassen sich Discovery und Vertrauensentscheidung architektonisch sauber trennen?
  • Welche Rolle können Cluster-IDs, Node-IDs, Shared Secrets, Zertifikate oder Join-Token spielen?
  • Wie kann ein gefundener Knoten zunächst als „nicht vertrauenswürdig“ behandelt und erst nach erfolgreicher Prüfung aktiviert werden?
  • Welche Autorisierungsmodelle sind für Odysseus-Knoten sinnvoll?
  • Wie kann die Lösung so gestaltet werden, dass sie sowohl für einfache lokale Testumgebungen als auch für produktivere Szenarien nutzbar bleibt?
  • Welche Auswirkungen haben zusätzliche Sicherheitsmechanismen auf Konfiguration, Bedienbarkeit, Fehlersuche und Laufzeitverhalten?
Home institution Department of Computing Science
Associated institutions
Type of work practical / application-focused
Type of thesis Bachelor's or Master's degree
Author Dr. Marco Grawunder
Status available
Problem statement

Aufgabenstellung

Im ersten Schritt soll der bestehende verteilte Ansatz von Odysseus analysiert werden. Dabei sollen insbesondere die vorhandenen Mechanismen zur Knotenerkennung und Registrierung betrachtet werden. Relevante Kommunikationswege, Nachrichtenformate und Zustände eines Knotens sollen identifiziert und dokumentiert werden.

Anschließend sollen mögliche Bedrohungen und Schwachstellen systematisch beschrieben werden. Dazu gehören beispielsweise gefälschte Discovery-Nachrichten, versehentliche Kopplung verschiedener Cluster, Replay-Angriffe, unautorisierte Knoten, unzureichend abgesicherte REST- oder WebSocket-Verbindungen sowie fehlende Trennung zwischen Erkennung und Vertrauensentscheidung.

Auf Basis dieser Analyse soll ein Sicherheitskonzept entworfen werden. Dieses kann beispielsweise folgende Bestandteile enthalten:

  • Einführung einer expliziten Cluster-ID
  • kryptographische Absicherung von Discovery-Nachrichten
  • Schutz gegen Replay-Angriffe durch Timestamp und Nonce
  • aktiver Handshake nach der Discovery
  • Unterscheidung verschiedener Vertrauenszustände eines Knotens
  • Allowlist oder Trust Store für bekannte Knoten
  • Rollen- oder Capability-Modell für Odysseus-Knoten
  • konfigurierbare Sicherheitsmodi für Entwicklung, Test und produktivere Umgebungen
  • Protokollierung sicherheitsrelevanter Ereignisse

Im praktischen Teil soll ein ausgewählter Teil des Konzepts prototypisch in Odysseus umgesetzt werden. Dabei kann der Fokus je nach Umfang der Arbeit auf einem klar abgegrenzten Teilbereich liegen, beispielsweise auf signierten Discovery-Nachrichten, einem Challenge-Response-Handshake oder einer Zustandsmodellierung für gefundene und autorisierte Knoten.

Abschließend soll die Lösung evaluiert werden. Dabei können sowohl funktionale Tests als auch Sicherheitsbetrachtungen und Messungen des zusätzlichen Aufwands durchgeführt werden. Relevant sind insbesondere Fragen nach Bedienbarkeit, Konfigurationsaufwand, Kompatibilität mit bestehenden Mechanismen und Auswirkungen auf die automatische Knotenerkennung.

Erwartete Ergebnisse

Erwartet werden:

  • eine Analyse der bestehenden Discovery- und Registrierungsmechanismen in Odysseus
  • eine strukturierte Betrachtung möglicher Bedrohungen und Angriffsszenarien
  • ein Konzept zur abgesicherten Aufnahme von Knoten in ein verteiltes Odysseus-System
  • eine prototypische Implementierung eines ausgewählten Sicherheitsmechanismus
  • eine Evaluation der Lösung
  • eine schriftliche Ausarbeitung mit Bewertung der Ergebnisse und möglicher Erweiterungen

Mögliche Bachelorarbeit

Im Rahmen einer Bachelorarbeit kann der Fokus auf einem klar abgegrenzten Sicherheitsmechanismus liegen. Denkbar wäre beispielsweise die Erweiterung der Discovery-Nachrichten um eine Cluster-ID sowie eine HMAC-basierte Signatur mit Timestamp und Nonce.

Dabei würde untersucht, wie Broadcast- oder Multicast-Nachrichten abgesichert werden können, sodass nur Knoten mit einem gemeinsamen Secret gültige Discovery-Nachrichten erzeugen können. Zusätzlich könnte ein einfacher Zustandsautomat eingeführt werden, der zwischen gefundenen, geprüften und aktivierten Knoten unterscheidet.

Der Schwerpunkt der Bachelorarbeit läge damit auf:

  • Analyse des bestehenden Discovery-Ablaufs
  • Entwurf eines einfachen Bedrohungsmodells
  • Erweiterung des Discovery-Protokolls um Sicherheitsinformationen
  • Implementierung einer HMAC-basierten Prüfung
  • Schutz gegen einfache Replay-Angriffe
  • prototypische Integration in Odysseus
  • funktionale Evaluation in einer kleinen Testumgebung

Erweiterung für eine Masterarbeit

Im Rahmen einer Masterarbeit kann das Thema deutlich umfassender betrachtet werden. Zusätzlich zur Absicherung der Discovery-Nachrichten kann ein vollständigeres Sicherheitsmodell für verteilte Odysseus-Knoten entworfen werden.

Mögliche Erweiterungen sind:

  • gegenseitige Authentifizierung der Knoten über mTLS
  • Zertifikats- oder Fingerprint-basierte Knotenidentitäten
  • Join-Token für die kontrollierte Aufnahme neuer Knoten
  • Rollen- und Rechtekonzept für unterschiedliche Knotentypen
  • Policy-basierte Entscheidung, ob ein Knoten dem Cluster beitreten darf
  • Revocation-Mechanismen für nicht mehr vertrauenswürdige Knoten
  • Absicherung der anschließenden REST- und WebSocket-Kommunikation
  • Vergleich verschiedener Sicherheitsvarianten hinsichtlich Sicherheit, Aufwand und Nutzbarkeit
  • umfassendere Evaluation mit mehreren Knoten, Fehlerszenarien und Angriffsversuchen

Der Fokus einer Masterarbeit läge damit stärker auf einem vollständigen Architekturkonzept und einer differenzierten Bewertung verschiedener Sicherheitsansätze. Neben der prototypischen Implementierung sollte insbesondere untersucht werden, wie sich ein solches Sicherheitsmodell sinnvoll in die bestehende Odysseus-Architektur integrieren lässt, ohne die Nutzbarkeit in Forschung, Lehre und Demonstratoren unnötig einzuschränken.

Voraussetzungen

Hilfreich sind Kenntnisse in Java sowie ein grundlegendes Verständnis verteilter Systeme. Kenntnisse in Netzwerken, REST, WebSockets, Authentifizierung, TLS oder kryptographischen Verfahren sind von Vorteil, können aber im Rahmen der Arbeit vertieft werden.

Mögliche Einstiegspunkte

Als Einstieg in die Arbeit bieten sich insbesondere folgende Teilaspekte an:

  • Analyse der aktuellen Node-Discovery in Odysseus
  • Untersuchung typischer Sicherheitsprobleme bei Broadcast- und Multicast-basierten Discovery-Verfahren
  • Entwurf eines erweiterten Discovery-Nachrichtenformats
  • Implementierung einer einfachen Signaturprüfung
  • Modellierung von Zuständen wie DISCOVERED, AUTHENTICATED, AUTHORIZED und ACTIVE
  • Aufbau einer kleinen Testumgebung mit mehreren Odysseus-Knoten
  • Dokumentation möglicher Angriffs- und Fehlkonfigurationsszenarien
Requirement
Created 16/09/26

Study data

Departments
Degree programmes
  • Bachelor's Programme Business Informatics
  • Master's Programme Computing Science
  • Bachelor's Programme Computing Science
  • Master's Programme Business Informatics
Assigned courses
Contact person