Während die EN-Normen 50128, 50129, 50126 und zuletzt EN 50657 einen starken Schwerpunkt auf die funktionale Sicherheitszertifizierung von COTS-basierten Systemen in der Eisenbahnindustrie legen, befassen sie sich nur teilweise mit IT Sicherheitsfragen. IT Sicherheit (Security) wird jedoch immer wichtiger, da geschlossene Systeme das Feld für vernetzte Umgebungen mit drahtgebundener und drahtloser Konnektivität räumen. IT Sicherheitsrelevante Systeme in Zügen und Signalanlagen müssen vor Cyber-Bedrohungen geschützt werden, um sowohl Integrität als auch Verfügbarkeit zu gewährleisten. Die IT Sicherheit kritischer Eisenbahnsysteme rückt daher in den Fokus von Entwicklern und Betreibern gleichermaßen. Eines der Hauptprobleme dabei ist, dass Reisende während ihrer gesamten Fahrt Konnektivität erwarten, sicherheitskritische Bahnsysteme aber in keiner Weise beeinträchtigt werden dürfen - weder versehentlich noch absichtlich. Andererseits kann es aus Kostengründen sinnvoll sein, dieselbe Hardware und dieselben Netze sowohl für kritische Anwendungen als auch für unkritische Kommunikation zu verwenden. Es geht darum, das richtige Gleichgewicht zu finden, ohne die Sicherheit von Passagieren und Gütern zu gefährden.
Ein vollständig integrierter Software-Framework für den sicheren Datenaustausch in kritischen Umgebungen könnte dieses Problem lösen. SYSGO hat ein solches Framework für die Automobilindustrie entwickelt, das als SACoP (Secure Automotive Connectivity Platform) bezeichnet wird. Diese Lösung kann jedoch auch als Vorlage für eine Lösung dienen, die eine sichere Kommunikation in Schienenfahrzeugen und bei der Streckensignalisierung ermöglicht. Die Plattform garantiert Informationssicherheit, indem sie die Datenübertragung durch strikte Kapselung und Trennung aller Kommunikationskanäle schützt. Ergänzt wird diese Partitionierung durch einen sicheren Boot-Prozess, ein integriertes Intrusion Detection System (System zur Erkennung von Eindringlingen oder Angriffen) und eine Firewall. Die Partitionierung führt außerdem zu einer minimalen Angriffsfläche und ermöglicht die Beschränkung des Zugriffs von Passagieren auf unkritische Anwendungen und Protokolle wie HTTP. Im Folgenden werden wir die Inhalte der SACoP-Plattform im Detail untersuchen und erörtern, ob die zugrunde liegenden Konzepte in einer Eisenbahnumgebung wiederverwendet werden können.
Die Konnektivitätsplattform nutzt die Hypervisor-Technologie des Echtzeitbetriebssystems (RTOS) PikeOS von SYSGO, mit der kritische und nicht kritische Infrastrukturen gleichzeitig in einem System ausgeführt werden können. Durch seine Ressourcen- und Zeitpartitionierung wurde PikeOS so konzipiert, dass es alle wesentlichen Anforderungen an Determinismus und Echtzeit, Security, Schutz und Virtualisierung erfüllt. Als Typ-1-Hypervisor läuft es direkt auf der eingebetteten Hardware und macht das Gesamtsystem so leistungsfähig wie möglich. Darüber hinaus unterstützt PikeOS zertifizierbare Multi-Core-Designs. Neben der strikten Trennung von Speicher- und I/O-Ressourcen beherrscht das Betriebssystem auch eine Form der Zeitpartitionierung, die auch höchsten Ansprüchen an die Echtzeitfähigkeit gerecht wird. Innerhalb eines frei definierbaren, sich wiederholenden Zyklus (auch Major Time Frame genannt) werden mehrere Zeitfenster definiert. Diesen Zeitfenstern werden ein oder mehrere Gastbetriebssysteme zugeordnet. Innerhalb eines Zeitfensters können den zugeordneten Betriebssystemen feste Prioritäten zugewiesen werden. Für Bahnanwendungen könnte die Zeitaufteilung um eine weitere Dimension und die Unterstützung von Mehrkernprozessoren erweitert werden. Damit ist es möglich, unterschiedliche Zeitpartitionierungsschemata auf verschiedenen Prozessorgruppen laufen zu lassen. Darüber hinaus können umfangreiche Einstellungen hinsichtlich des Cache-Verhaltens vorgenommen werden, um hardwarebedingte Störungen zwischen den Prozessorkernen zu minimieren. Softwareseitig werden im Betriebssystem u.a. lokale Sperren (fine-grained locking) eingesetzt, um ein Ablaufen der erwarteten Worst-Case-Ausführungszeit (WCET) aufgrund von Konflikten zwischen den Kernen zu verhindern. Die Multiprozessorunterstützung wurde bereits vom TÜV-SÜD nach EN 50128 und EN 50657 SIL 4 zertifiziert.
Partitionierung ist der Schlüssel
Durch die Nutzung der Hypervisor-Funktionalität in PikeOS zur Ausführung von Anwendungen in streng getrennten Partitionen können insbesondere sicherheitskritische Anwendungen in einem vorgegebenen Zeitrahmen unterbrechungsfrei laufen. Die Plattform kann den vorzertifizierten PikeOS-Separationskernel in der Version 4.2.3 (Build S5577 für ARMv7/8 & x86_64) nach dem IT Sicherheitsstandard (Security) Common Criteria EAL3+ nutzen und könnte für funktionale Sicherheit (Safety) bis SIL-4 zertifiziert werden. Dies bedeutet, dass für die Planung der Softwarearchitektur nur ein Hardwaresystem erforderlich ist, was die Entwicklungs- und Produktionskosten senkt und die Markteinführung beschleunigt. Die Plattform bietet ein flexibles Software-Framework, das den Kunden bei der Gestaltung ihrer Software-Architektur hilft, um die Kommunikation und Updates zu sichern.
Ein Gateway, das mehrere Protokolle (3G/4G/5G) unterstützt, ermöglicht eine Vielzahl von Anwendungen, wie z. B. Over-the-Air-Updates von Anwendungen, Konnektivität mit dem Cloud-Backend oder das Hochladen von Wartungsdaten. Software- und Firmware-Komponenten des gesamten Systems werden über eine sichere Kommunikation via TLS (FIPS-zertifiziert) aktualisiert. Alle Aktualisierungsdateien sind digital signiert, um Manipulationen sicher zu verhindern.
Intern ist ein für die Fahrgäste eingerichteter WLAN-Hotspot durch die Firewall der Plattform geschützt. Das interne Netzwerk ist getrennt und kann nur über sichere und überwachte Kanäle erreicht werden. Das Gateway unterstützt Virtual Local Area Networks (VLAN).
Fokus auf IT Sicherheit
Die Plattform verwendet einen sicheren Boot-Mechanismus. Die sichere Kommunikation wird durch eine Transport Layer Security (TLS) Bibliothek gewährleistet. Kryptografie und Speicherung werden durch ausführbare Binärdateien und Konfigurationsdateien unterstützt, die digital signiert und in einem sicheren Certified File System (CFS) gespeichert sind. Das Netzwerk-Intrusion-Detection-System (IDS) des Gateways befindet sich in einer separaten Partition, die den Netzwerkverkehr überwacht. Die Isolierung verschiedener Anwendungen in separaten Partitionen erhöht nicht nur die IT Sicherheit (Security), sondern vereinfacht auch die Lizenzverwaltung.
Einer der großen Vorteile der Virtualisierung ist, dass jederzeit neue Funktionen hinzugefügt werden können. Dies erfordert in der Regel die Kombination bestehender Softwarekomponenten mit völlig neuen und manchmal inkompatiblen APIs (Application Programming Interfaces). Es ist eine Herausforderung, eine stabile Softwarebasis aufrechtzuerhalten und gleichzeitig in der Lage zu sein, die Anforderungen der Endbenutzer zu erfüllen. An dieser Stelle kommt die Virtualisierung ins Spiel. Ein laufendes virtualisiertes System kann durch Hinzufügen einer beliebigen Anzahl von Partitionen mit Gastbetriebssystemen erweitert werden, ohne die Sicherheit zu beeinträchtigen. Die Plattform unterstützt die Integration verschiedener Gäste mit zusätzlichen Anwendungen, einschließlich PikeOS native, POSIX, Linux (generisch über Hardware-Virtualisierung), AGL (Automotive Grade Linux) und ELinOS, SYSGO's robuster Embedded Linux-Distribution.
Die Entwicklung von Embedded-Applikationen für ein partitioniertes System erfordert eine Cross-Toolchain, gut konzipierte und einfach zu bedienende Konfigurationstools, Remote-Debugging mit OS-Awareness (Thread-Status, virtuelle Adress-Mappings usw.), ein Target-Board, Remote-Applikationsbereitstellung und Timing-Analyse-Tools. Mit CODEO, einer Eclipse-basierten IDE (integrierter Entwicklungsumgebung), bietet SYSGO eine vollständige Umgebung für eingebettete Systeme, die den gesamten Entwicklungszyklus von frühen Simulations-/Emulationswerkzeugen bis hin zu Software-Aktualisierungsmechanismen für eingesetzte Systeme abdeckt.
Basierend auf der MILS-Architektur
PikeOS verwendet ein Security-by-Design-Konzept, das aus der Avionikindustrie stammt: Multiple Independent Levels of Security (MILS), das auf den kontrollierten Informationsfluss und die Ressourcennutzung zwischen Softwareanwendungen abzielt. MILS reduziert die Komplexität der Zertifizierung, fördert die Wiederverwendung und ermöglicht sichere Aktualisierungen von Cyberphysical Systems (CPS) während des gesamten Lebenszyklus, indem es eine zertifizierte Trennung der Anwendungen ermöglicht, d. h. wenn eine Anwendung innerhalb eines komplexen CPS ausfällt oder böswillig handelt, sind andere Anwendungen nicht betroffen.
Nach MILS werden die Systeme in drei horizontale Ebenen mit unterschiedlichen Rechten und Vertrauenswürdigkeitsstufen unterteilt. Die unterste Ebene ist die Hardware mit weiteren Plattform- und Sicherheitsmodulen. Ebene 2 enthält den Trennkern, der die gesamte Kommunikation im System steuert und den einzelnen Anwendungen Rechenzeit und Speicherzugriff zuweist. Nur er ist für den Zugriff auf die Hardwareverwaltung privilegiert und gilt als vertrauenswürdig im Hinblick auf die Sicherheit. Alle anderen Module der Systemsoftware der zweiten Ebene sind ebenfalls vertrauenswürdig, aber nicht privilegiert für den direkten Hardwareverwaltungszugriff. Sie dienen der Konfiguration und Organisation des Gesamtsystems und der Überwachung seiner Funktionalität. Alle Anwendungen, die im Benutzermodus laufen, gelten als nicht vertrauenswürdig und werden der dritten Ebene zugeordnet.
Das MILS-Konzept formuliert die konsistente und einheitliche Umsetzung mehrerer Sicherheitsrichtlinien für den Separation Kernel, um die Vertrauenswürdigkeit des Systems zu sichern und zu erhalten. Der Separation Kernel ist das Element, das die kompositorische IT Sicherheitszertifizierung ermöglicht. Der Separationskern selbst muss zertifiziert sein, um diese Sicherheitsrichtlinien mit der erforderlichen IT Sicherheit (z.B. Evaluation Assurance Levels von ISO/IEC 15408) durchsetzen zu können. Diese Sicherheitsrichtlinien des Separationskerns werden durch Sicherheitsfunktionen durchgesetzt, deren Implementierung auf ein absolutes Minimum reduziert ist, so dass ihre Bewertung und Zertifizierung möglich bleibt. Sie umfassen, sind aber nicht beschränkt auf
- Informationsfluss: Der Separationskernel muss den Informationsfluss zwischen Hardware, Systemsoftware und Anwendungen ermöglichen und kontrollieren;
- Datenisolierung: Der Separationskernel isoliert die jeder Anwendung zugewiesenen Speicherbereiche und Ressourcen;
- Saubere CPU-Register: Der Separationskernel löscht alle Einträge in den CPU-Registern, bevor eine andere Anwendung die CPU benutzen darf;
- Begrenzung von Schäden: Der Separationskernel begrenzt Störungen einer Anwendung auf ihre Partition. Alle anderen Anwendungen, die Systemsoftware und der Separationskernel selbst sind davon nicht betroffen.
Eine MILS-Plattform muss nicht umgehbar, auswertbar, immer aufrufbar und manipulationssicher (NEAT) sein, um das erforderliche hohe Maß an IT Sicherheit (Security) zu bieten.
MILS in Eisenbahnanwendungen
Das MILS-Konzept wurde zwar ursprünglich für militärische und avionische Anwendungen entwickelt und angewandt, eignet sich aber auch hervorragend für die Eisenbahnindustrie, insbesondere im Hinblick auf zertifizierungsfähige Systeme. Das von der EU geförderte Projekt certMILS, an dem SYSGO aktiv beteiligt ist, entwickelt derzeit eine Zertifizierungsmethode für komplexe, zusammensetzbare, sicherheitskritische Systeme, die in sich ständig weiterentwickelnden, feindlichen Umgebungen betrieben werden. Im Rahmen dieser Initiative entwickelt certMILS zusammensetzbare industrielle CPS-Piloten für Eisenbahnsysteme, zertifiziert die Sicherheit kritischer wiederverwendbarer Komponenten und gewährleistet die Sicherheitszertifizierung der Piloten durch Zertifizierungslabore in drei EU-Ländern unter Einbeziehung der Behörden. Bei der Entwicklung und Anwendung der Sicherheitszertifizierungsmethodik wird certMILS die bestehenden Sicherheitszertifizierungsprozesse respektieren und ergänzen.
Die Hauptziele des certMILS-Projekts sind die Übertragung des Know-hows der kompositorischen Sicherheitszertifizierung auf die Sicherheitszertifizierung und die Erschwinglichkeit der Zertifizierung von zusammengesetzten Systemen. Es ist außerdem speziell als europäisches Projekt konzipiert, um die Abhängigkeit von amerikanischen Technologien zu verringern. Ziel ist es, die wirtschaftliche Effizienz und die europäische Wettbewerbsfähigkeit der CPS-Entwicklung zu steigern und gleichzeitig die Wirksamkeit der Sicherheitszertifizierung von zusammengesetzten Systemen zu demonstrieren.
Eines der Hauptziele von certMILS ist die Anwendung relevanter Sicherheitsstandards im Eisenbahnbereich, um die Homogenisierung der Sicherheitsanforderungen zu fördern und den Kunden zu helfen, ein konformes Sicherheitsniveau in ihren Produkten zu gewährleisten. Genau wie im Bereich der Sicherheit besteht das Ziel darin, Leitlinien für Sicherheitsbausteine bereitzustellen, die über sichere Gateways für die Kommunikation in komplexe Systeme integriert werden können. Auf diese Weise kann die Integrität des Systems unter Sicherheitsgesichtspunkten gewährleistet werden. Darüber hinaus werden Sicherheitsgateways, die auf zertifizierten MILS-Plattformen basieren, modulare IT Sicherheit (Security) demonstrieren und hohe Sicherheitsstufen erreichen.
Sicherheit auf einer sicheren Plattform
Die diskutierte Plattform könnte auf die SAFe-VX-Plattform von SYSGO und Kontron angewendet werden. Die SAFe-VX Plattform unterstützt die schnelle Entwicklung und Zertifizierung von sicherheitskritischen Bahnsystemen und Applikationen. SAFe-VX besteht aus bewährter COTS-Hardware von Kontron, SYSGO's PikeOS und einer Sicherheitsbibliothek für die Kommunikation. Vervollständigt wird das Paket durch eine umfassende Toolchain inklusive Debugging, Tracing und Monitoring, die in die integrierte Entwicklungsumgebung CODEO eingebettet ist. Das Entwicklungssystem hat genau die gleichen Komponenten wie potenzielle Zielsysteme, so dass der Code direkt übertragen werden kann.
Bei der Hardware handelt es sich um einen Safety-critical Computer auf Basis von VPX-Modulen in einem 19-Zoll-Rack. Der VPX-Standard, auch bekannt als VITA46, hat seinen Ursprung im bewährten VMEbus-Standard und legt den Schwerpunkt auf eine erhöhte Leistung bei der Überbrückung zwischen Bussen. Die Grundkonfiguration besteht aus drei redundanten Prozessormodulen, die über einen Gigabit-Ethernet-Switch über die Backplane miteinander verbunden sind. Um u.a. Ausfälle durch gemeinsame Ursachen zu vermeiden, sind die Boards voneinander elektrisch isoliert. SAFe-VX weist keine singuläre Fehlerstelle auf. Die Architektur ist bis SIL4 zertifizierbar, ein Zertifizierungskit ist erhältlich.