Projekt läuft · IT-Sicherheit
Cyber
Wir suchen die schwachen Stellen in den Bordnetzen von Schiffen und bauen die Abwehr.
- die Geschwindigkeit einer NMEA-0183-Leitung
- 4800 bit/s
- höchstens in einem Satz
- 82 Zeichen
- Authentifizierung im Protokoll
- Keine
- der Test von Angriff und Abwehr am Brückensimulator
- April 2026
Für alle, die kommen aus Informatik, Ingenieurwesen, Telekommunikation
Das Brückennetz
Auf einem Schiff sprechen Kreiselkompass, GPS, elektronische Seekarte und Autopilot über den Standard NMEA 0183 miteinander, der in der internationalen Norm IEC 61162-1 heißt. Ein Gerät spricht, alle anderen hören zu: Textsätze, eine Zeile nach der anderen, mit 4800 Bit pro Sekunde.
Auf neueren Schiffen laufen dieselben Sätze über Ethernet, in UDP-Paketen an das ganze Netz. Das Protokoll hat aber keine Authentifizierung: wer einen Satz bekommt, kann nicht wissen, wer ihn geschrieben hat. Eine Studie der Universität Genua von 2023 hat gezeigt, dass ein Programm im Brückennetz falsche Sätze des Kompasses oder des AIS einschleusen kann, und die Geräte nehmen sie an.
- 01
Kreiselkompass
Er schickt den wahren Kurs, also wohin der Bug im Verhältnis zum Norden zeigt: Satz HDT.
- 02
GPS
Es schickt Position, Zeit und Signalqualität: Satz GGA.
- 03
Seekarte
Sie bringt Position, Kurs und die anderen vom AIS gesehenen Schiffe zusammen.
- 04
Autopilot
Er hält den Kurs, indem er das Ruder bewegt, und vertraut dem Kurs, den er bekommt.
Wie ein Satz aufgebaut ist
Jeder Satz beginnt mit $, dann zwei Buchstaben für den Sprecher und drei für die Satzart, dann die Felder, durch Kommas getrennt. Am Ende ein Sternchen und die Prüfsumme: zwei Hexadezimalziffern, das XOR aller Zeichen zwischen $ und *. Sie findet Übertragungsfehler, keine Täuschungen: wer einen falschen Satz schreibt, rechnet auch die richtige Prüfsumme aus.
$GPGGA,100008.83,4419.699,N,00858.415,E,1,01,0.9,18.000,M,0.000,M,,0000*64
$GP GGA GPS, Positionssatz
100008.83 UTC-Zeit, 10:00:08,83
4419.699,N Breite 44° 19,699′ Nord
00858.415,E Länge 8° 58,415′ Ost
1 Qualität: GPS-Fix
01 genutzte Satelliten
0.9 horizontale Genauigkeit, HDOP
18.000,M Höhe der Antenne in Metern
*64 Prüfsumme
def pruefsumme(satz):
koerper = satz[1:satz.index('*')]
x = 0
for zeichen in koerper:
x ^= ord(zeichen)
return f'{x:02X}'
pruefsumme('$IIXDR,A,0.0,D,PTCH,A,0.1,D,ROLL,C,0.0,C,AirTemp*05') # '05'
Der Angriff
Im Test schickt ein Rechner am Brückennetz falsche Kurssätze, als wäre er der Kreiselkompass, und viel öfter als dieser. Wer zuhört, behält den zuletzt angekommenen Satz, also gewinnt fast immer der falsche. Der Autopilot korrigiert den Kurs auf einen falschen Kurs, und die Seekarte zeigt nichts Auffälliges.
Das ist keine Theorie. 2013 hat eine Gruppe der University of Texas mit Erlaubnis des Reeders eine 65-Meter-Yacht vor der italienischen Küste mit falschen GPS-Signalen vom Kurs gebracht: die Karte zeigte eine gerade Linie. 2017 hat im Schwarzen Meer das GPS eines Schiffes es an Land gesetzt, in der Nähe eines Flughafens; nach Angaben des Kapitäns hatten mehr als 20 Schiffe in der Gegend dasselbe Problem. 2019 hat der C4ADS-Bericht 9.883 Verdachtsfälle von GPS-Fälschung gezählt, die 1.311 zivile Schiffe betroffen hatten.
| HDT | wahrer Kurs | vom Kreiselkompass: das Ziel des Angriffs |
|---|---|---|
| GGA | GPS-Position | Zeit, Breite, Länge, Höhe |
| ZDA | Datum und Uhrzeit | mit der Zeitzone |
| XDR | Sensoren | Nicken, Rollen, Lufttemperatur |
| VDM | AIS | die anderen Schiffe: Position, Geschwindigkeit, Kurs |
Die Abwehr
Die Abwehr ist ein Brückenprogramm zwischen zwei Teilen des Netzes. Es leitet die echten Sätze weiter und hält die auf, die von der falschen Seite kommen: Kurs und GPS dürfen nur von den richtigen Geräten kommen. Der Verkehr läuft in UDP-Paketen, und die Regeln lassen sich ändern, während das System läuft.
> set block heading eingehende Kurssätze blockieren
> set block gps in eingehende GPS-Daten blockieren
> set allow all alles durchlassen
Die Regeln
Seit 2021 verlangt die Internationale Seeschifffahrtsorganisation, dass IT-Risiken in die Sicherheitssysteme der Reedereien aufgenommen werden. Ihre Leitlinien ordnen die Arbeit in der Fassung von 2025 in sechs Funktionen.
Für viele neue Schiffe, bestellt ab dem 1. Juli 2024, sind die Regeln IACS E26 und E27 verbindlich: die erste für das ganze Schiff, vom Entwurf bis zum gesamten Einsatz; die zweite für jedes Bordsystem, in der Verantwortung der Lieferanten.
- 01
Steuern
Rollen, Verantwortung und Regeln der Reederei.
- 02
Erkennen, was da ist
Welche Systeme an Bord sind und welche Risiken sie bringen.
- 03
Schützen
Eigene Zugangsdaten, geänderte Passwörter, getrennte Netze.
- 04
Aufspüren
Schnell merken, dass etwas nicht stimmt.
- 05
Reagieren
Was während eines Angriffs zu tun ist.
- 06
Wiederherstellen
Zurück zur Fahrt kommen und die Ursachen verstehen.
Wo wir stehen
- 2025Wir haben festgelegt, wie ein Angriff mit falschen GPS-Signalen ablaufen würde, und die ersten Schwachstellen gefunden.
- 17. April 2026Wir haben Angriff und Abwehr am Brückensimulator der Universität Genua ausprobiert.
- HeuteWir arbeiten an der Abwehr.
Fotos
Videos
Menschen im Projekt
Mit wem wir es machen
Quellen
- IEC 61162-1 und IEC 61162-450; gpsd, NMEA Revealed.
- Longo, Russo, Armando und Merlo, Attacking (and Defending) the Maritime Radar System, IEEE Transactions on Information Forensics and Security, 2023.
- Bhatti und Humphreys, Hostile Control of Ships via False GPS Signals, NAVIGATION, 2017.
- C4ADS, Above Us Only Stars, 2019.
- IMO, MSC-FAL.1/Circ.3, Fassung 3, 2025; Resolution MSC.428(98).
- IACS, Unified Requirements E26 und E27.
- Präsentation beim Deep-Tech Showcase, Palazzo della Borsa, 21. April 2026.
Willst du mitarbeiten?
Du brauchst keine Erfahrung und keinen Lebenslauf. Schreib uns: wir laden dich zum nächsten Treffen ein, dort lernst du das Team kennen.
