Sichere Basis im IoT – der PikeOS Hypervisor 4.0

Sichere Basis im IoT –
der PikeOS Hypervisor 4.0

Vernetzung und Cloud-Dienste in sicherheitskritischen Geräten wie Autos, Flugzeugen oder Bahnen erfordern ein Umdenken bei der Auswahl des Betriebssystems. Es geht nicht mehr nur um Echtzeit, benötigte Treiber für Hardware und Peripherie oder unmittelbare Beschaffungskosten. Im Vordergrund steht funktionale Sicherheit in Verbindung mit einem Security-by-Design-Konzept, das die Gerätesicherheit in das Systemdesign verankert. Der PikeOS Hypervisor 4.0 setzt neue Maßstäbe für Sicherheit und bietet flexible Konzepte für die Entwicklung der Systeme über den gesamten Lebenszyklus hinweg.
Die fortschreitende Digitalisierung im Auto ist nichts für schwache Nerven. Spiegel-Online berichtet am 22. Juli 2015 von einem Hackerangriff auf ein fahrendes Auto, wobei dem Angreifer auch der Zugriff auf sicherheitskritische Systeme wie Lenkung und Bremsen gelang. Durch die Verbindung von Steuerungselektronik und Infotainmentsystem entsteht mehr als ein Auto mit Internetzugang, um Filme zu gucken oder den Weg zu weisen. In aller Regel handelt es sich bei den modernen Multimediasystemen um eine Zentraleinheit mit einem leistungsstarken Rechner, die am Canbus hängt und Informationen von verschiedensten Multimediageräten, aber auch von Geschwindigkeits- und Abstandsmessern oder Bremsen verarbeitet. Durch eine sichere Trennung dieser unterschiedlichen Anwendungen und Kontrolle der Kommunikation zwischen den Domänen lassen sich Angriffe auf sicherheitsrelevante Teile des Gesamtsystems vermeiden.

Die Trennung der Welten

Im Juni 2015 wurde PikeOS v4.0 vorgelegt, ein Hypervisor, der seit vielen Jahren in der Elektronik von Flugzeugen, Autos und Bahnen eingesetzt wird. Er bildet das Fundament für die verlässliche Funktionsfähigkeit von kritischen Systemen sowohl für die funktionale Sicherheit als auch für die Geräte-Security. Diese Verlässlichkeit beruht im Wesentlichen auf zwei Prinzipien, die im PikeOS-Mikrokern und der Systemsoftware verankert sind: eine strikte Trennung der Anwendungen durch Zeit- und Ressourcen-Partitionierung sowie die Kontrolle der Kommunikation zwischen den Partitionen (siehe Bild 1). Bei Einhaltung dieser Grundprinzipien spielt es keine Rolle, ob es sich bei einer Anwendung um eine sicherheitsrelevante Steuerungsfunktion handelt und bei der ‚Nachbar‘-Anwendung auf derselben Hardware um eine Multimediafunktion, wie ein aus dem Internet geladenes Spiel. Jede Anwendung erhält die im Konfigurationsprozess festgelegten Ressourcen zugewiesen. Eine Überschreitung der Speichergrenzen oder des Zeitbudgets ist nicht möglich. Über die Interpartition-Kommunikation wird der Datenaustausch zwischen den Partitionen so festgelegt, dass eine unkritische Spieleanwendung keinerlei Einfluss hat auf die Funktionsfähigkeit einer hochkritischen Bremsfunktion.

Sicherung von IP

Durch die Einkapselung von Anwendungen in getrennte Partitionen lässt sich zusätzlich geistiges Eigentum, also Intellectual Property (IP), gegen Spionage und Rechteverletzung schützen. Gleichzeitig wird die IP gegen eine Infizierung durch freie Softwarelizenzen wie der GPL von Open-Source-Anwendungen gesichert.

Zertifizierung der Sicherheit

Wenn Regulierungen oder gesetzliche Vorgaben es verlangen, lässt sich die Sicherheit des gesamten Systems oder einer individuellen Partition, die sowohl einzelne Anwendungen oder auch komplette Betriebssysteme beherbergen können, nach industriespezifischen Normen wie der ISO26262, der DO-178B/C oder der EN50128 nachweisen. Dabei kann jede Anwendung nach einem anderen Sicherheitsniveau geprüft werden, sodass PikeOS in einem Automotivesystem z.B. Anwendungen mit Sicherheitsleveln von ASIL A bis ASIL D hostet. Darüber hinaus ist die Zertifizierung der Geräte-Security nach Common Criteria bis zu EAL5/6 möglich.

Konzepte für Gerätetreiber

Gerätetreiber können mit PikeOS 4.0 auf verschiedenen Ebenen implementiert werden. Je nach Zertifizierungsanforderung verbleiben sie entweder eingekapselt in einer Partition. Ein solcher Partition-Level-Treiber kann anderen Partitionen als virtueller Treiber zur Verfügung gestellt werden und muss im Falle einer Zertifizierung nur nach demjenigen Sicherheitsniveau zertifiziert werden, das für die Partition vorgesehen ist. Als weitere Option kann der Gerätetreiber auch direkt auf Kernelebene implementiert werden, um die Performanz zu erhöhen (vgl. Bild 1). Für PikeOS steht die Eclipse-basierte integrierte Entwicklungsumgebung Codeo zur Verfügung, die Werkzeuge für Entwicklung, Debugging und Tracing (Laufzeitanalyse) sowie für die Konfiguration des Gesamtsystems bereitstellt. Für größere Entwicklergruppen, die an komplexen Projekten mit vielen Anwendungen für mehrere Partitionen arbeiten, wurde mit PikeOS 4.0 ein Konzept für die einfache Wiederverwendung einzelner Module (Komponenten, Gruppen) eingeführt. Komponenten können etwa einfache Konfigurationsparameter der virtuellen Maschine sein. Komplexere Strukturen wie Partitionen oder ein Board Support Package bestehen aus mehreren Komponenten und bilden eine Gruppe. Diese Module werden in einem Pool abgelegt und stehen anderen Entwicklern zur Wiederverwendung zur Verfügung. Auf diese Weise werden Fehlerquellen reduziert und die Fertigstellung von Projekten erheblich beschleunigt.

Arinc 653 für alle

Einzelne Bestimmungen aus dem Avionik Standard Arinc653 sind Kernbestandteil von PikeOS: beispielsweise die Core-Services, Teile der Interpartition-Kommunikation, das Zeitpartition basierte Scheduling und das Error-Handling. Neu bei PikeOS 4.0 ist die Implementierung von Arinc653 Part 2-Supp 2. Das hierin definierte Filesystem-Konzept wurde als PikeOS Volume Provider implementiert. Es ist als PikeOS Native Filesystem für weitere Betriebssysteme wie POSIX- oder Linux-Partitionen zugänglich und erleichtert die Integration bestehender Anwendungen in die PikeOS-Umgebung. Der Volumen-Provider kann außerdem als Managementpartition zur (Rechte-) Verwaltung von Geräten wie Harddisks dienen, die dann unter Einhaltung von Security-Aspekten auch auf mehrere Partitionen verteilt werden können. Zusätzlich sind erweiterte Queuing-Ports, sogenannte SAP-Ports implementiert, die, mit Netzwerkadressen versehen, Daten über ein beliebiges IANA-Netzwerk-Protokoll (z.B. UDP oder TCP) versenden können.

Zusammenfassung

Maschinen und Geräte wie Flugzeuge, Autos und Bahnen sind hochkomplex und im Internet of Things vernetzt. Ihre Steuerungssoftware wird auf funktionale Sicherheit nach branchenspezifischen Sicherheitsnormen geprüft und zertifiziert. Alle Anwendungen, die über das Internet zugänglich sind, müssen zusätzlich gegen Hackerangriffe geschützt werden. Die Embedded-Systems- Industrie hat einen Nachholbedarf bezüglich der Security. Der IT, aus der Security-Konzepte für IoT entlehnt werden, fehlt es an Echtzeitfähigkeit, funktionaler Sicherheit und Erfahrungen mit anderen Hardwareplattformen als x86. Der PikeOS Hypervisor wurde entwickelt, um diese Lücke zu schließen.

Übrigens

Am 24.07.2015 meldete der Spiegel, dass Fiat Chrysler insgesamt 1,4 Millionen SUVs zurückruft und die Software austauscht. Mit dieser kostenträchtigen Maßnahme soll nachträglich vermieden werden, dass Hacker die Fahrzeuge aus der Ferne manipulieren können.

Sysgo AG
www.sysgo.com

Das könnte Sie auch Interessieren