Softwaresicherheit durch Partitionierung

Separation Kernels für Industriesteuerungen

30. Mai 2023, 6:00 Uhr | Von Franz Walkembach
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 1

Selektive Neuzertifizierung nach Software-Upgrade

Konzepte, die auf einem separaten Kernel basieren, ermöglichen nicht nur ein sehr hohes Maß an Sicherheit, sondern können auch die Zertifizierung deutlich vereinfachen und damit erhebliche Kosten einsparen. Gerade im Bereich der Security birgt die Änderung bestimmter Eigenschaften eines Systems das Risiko, dass die Sicherheitsannahmen außer Kraft gesetzt werden und das System unsicher wird. Bei einem Feldgerät ist dies der Fall, wenn durch ein Software-Upgrade ein zusätzlicher, von außen gesteuerter Dienst installiert wird. In der Regel muss in einem solchen Fall das gesamte Gerät neu zertifiziert werden, einschließlich der Teile, die sich nicht geändert haben. Diese Tatsache erschwert die Entwicklung von Geräten, die sich wirtschaftlich an neue Fertigungsbedingungen anpassen lassen.

Die Partitionierung der Gerätesoftware nach den Regeln eines zertifizierten Trennungskerns ermöglicht eine selektive Neuzertifizierung nur der Partition, die von der Aktualisierung betroffen ist. Die anderen Partitionen bleiben unverändert, und die strikte Trennung gewährleistet, dass ihre Sicherheitsvoraussetzungen gleich bleiben. Darüber hinaus kann der Separationskernel einen sicheren Aktualisierungsmechanismus mit kryptografischer Signatur, Transportverschlüsselung und anderen Funktionen bieten.

passend zum Thema

Nicht vertrauenswürdiger Code und Legacy-Anwendungen

Bei Fertigungsaufträgen, bei denen kein starkes Vertrauensverhältnis zwischen Kunde und Hersteller besteht, müssen in der Fertigung zusätzliche Vorkehrungen getroffen werden, um die IT-Sicherheit während des Prozesses zu gewährleisten. Beispielsweise könnte ein »Möchtegernkunde« versuchen, Geräte auf der Feldebene mithilfe von manipuliertem Fertigungscode mit Malware zu infizieren. Von dort aus könnte der Angreifer versuchen, die Produktion zu sabotieren oder die Infektion auf andere Teile des Netzwerks, wie z. B. das MES (Manufacturing Execution System), zu übertragen, um an vertrauliche Informationen zu gelangen. In solchen Konstellationen ist es daher eine gute Idee, den Fertigungscode des Kunden innerhalb einer oder mehrerer Partitionen zu isolieren, um zu verhindern, dass er Vertrauensgrenzen überschreitet und seine Privilegien erweitert. Dies geschieht, indem die Fähigkeit der nicht vertrauenswürdigen Partition einschränkt wird, mit anderen Partitionen auf demselben Gerät oder mit dem Netzwerk und/oder Feldbus zu kommunizieren.

Auch ältere Anwendungen können durch Partitionierung in ein neues Softwarekonzept integriert werden. Bei solchen Anwendungen wurde der Code oft nur mit Blick auf die funktionale Sicherheit geschrieben und hält einer Sicherheitsbewertung nicht stand. Ein Separationskernel kann solche Anwendungen vollständig kapseln und sie von außerhalb der Gerätegrenzen oder aus der Perspektive anderer Partitionen auf demselben Gerät unsichtbar machen. Zu diesem Zweck wird ein sicheres Gateway mit einer Firewall und einem Intrusion Detection System eingerichtet, und die Legacy-Anwendung kommuniziert mit dem Gateway nur über spezielle, überwachte Kommunikationskanäle.

Für Legacy-Anwendungen spielt es keine Rolle, ob sie zuvor ohne Betriebssystem (Bare Metal) liefen oder ein Betriebssystem verwendeten. Dadurch können Gastbetriebssysteme im Paravirtualisierungs- oder Hardwarevirtualisierungsmodus ausgeführt werden, wobei die Echtzeitfähigkeit erhalten bleibt. So bleibt der Betreiber unabhängig von nicht mehr vorhandenen Hardwareplattformen.

PikeOS – Betriebssystem mit Separationskernel

Der Separation Kernel von PikeOS unterstützt eine breite Palette von Mikroprozessoren und bietet Schnittstellen für eine Vielzahl von Gastbetriebssystemen
Bild 3. Der Separation Kernel von PikeOS unterstützt eine breite Palette von Mikroprozessoren und bietet Schnittstellen für eine Vielzahl von Gastbetriebssystemen. Er bietet zudem ein integriertes Linux-Gastbetriebssystem, um Linux- oder andere Open-Source-Funktionen wie Netzwerk, GUI oder Webserver auszuführen
© Sysgo

PikeOS von Sysgo (Bild 3) unterstützt eine breite Palette von Mikroprozessoren und bietet Schnittstellen für eine Vielzahl von Gastbetriebssystemen. Der Separations-kernel verfügt über ein integriertes Linux-Gastbetriebssystem zur Einbindung von Linux oder anderen Open-Source-Funktionen wie Netzwerk, GUI oder Webserver.

Proprietäres geistiges Eigentum, Echtzeitfunktionen und sicherheitskritische Anwendungen laufen in separaten Partitionen. Anwendungen mit unter-schiedlichen Kritikalitäts- und Sicherheits-stufen werden sicher in separate Partitionen getrennt und separat zertifiziert. Da es sich bei PikeOS um eine europäische Technik handelt, unterliegt es keinen Exportbeschränkungen und kann daher weltweit eingesetzt werden.

 

Der Autor

 

Franz Walkembach von Sysgo
Franz Walkembach von Sysgo.
© Sysgo

Franz Walkembach

leitet als Vice President Marketing & Alliances die Marketing- und Partnermanagementaktivitäten bei Sysgo. Er hat mehr als dreißig Jahre Erfahrung in der Entwicklung eingebetteter Systeme, hauptsächlich in den Bereichen Automobil-OEM, Aftermarket und Softwareentwicklung. Bevor Walkembach zu Sysgo kam, arbeitete er bei Wind River, wo er das Produktangebot definierte, die Kundenbedürfnisse identifizierte und den Umsatz/Gewinn für das Automobilproduktsegment unterstützte. Walkembach hat einen Dipl.-Ing.-Abschluss in Mechatronik und ist in verschiedenen Industriekonsortien aktiv.

franz.walkembach@sysgo.com


  1. Separation Kernels für Industriesteuerungen
  2. Selektive Neuzertifizierung nach Software-Upgrade

Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!