Im Gegensatz dazu verfügen selbst Einstiegsmodelle heutzutage über mindestens ein Dutzend Mikroprozessoren; Oberklassewagen sogar über hundert. Abbildung 1 zeigt einige Beispiele für die in einem modernen Auto verbauten Computer. Da Infotainmentsysteme mit hochentwickelten Betriebssystemen wie Microsoft Windows und verschiedenen Linux-Versionen laufen, kann der gesamte Umfang der eingebetteten Software leicht 100 Millionen Codezeilen übersteigen.
Die Komplexität wird durch den stetig wachsenden Bedarf an verbesserter Leistung, die Digitalisierung manueller und mechanischer Prozesse sowie die Vernetzung der heutigen Welt vorangetrieben. Obwohl dieses Wachstum elektronischer Inhalte der Gesellschaft zugutekommt, hat es gleichzeitig unsere Bedenken hinsichtlich Zuverlässigkeit, Sicherheit, Kosten und Markteinführungszeit verstärkt. Die Architektur von Infotainmentsystemen der nächsten Generation muss Entwicklern helfen, diese Komplexität zu bewältigen.
Konsolidierung der Elektronik im Automobil.
Ein weiterer wichtiger Trend in der Automobilindustrie ist die Konsolidierung des Motorsteuergeräts (ECU). Da sich das Automobil zunehmend zu einem System aus elektronischen Systemen entwickelt, steigt die Anzahl der elektronischen Bauteile und damit auch der Umfang der zugehörigen Kabelbäume drastisch an. Dieses Wachstum der Elektronik stellt Automobilhersteller hinsichtlich Produktionskosten, Dimensionierung und Markteinführungszeit vor große Herausforderungen. Die Lösung liegt darin, diesen Aufwärtstrend umzukehren und stattdessen unterschiedliche Funktionen in weniger elektronischen Bauteilen zu vereinen.
Die Konsolidierung von Prozessoren steht in engem Zusammenhang mit dem Trend zu Systemen mit gemischter Kritikalität, in denen Komponenten, die für Schutz, Sicherheit oder Echtzeitbetrieb unerlässlich sind, neben weniger kritischen Komponenten existieren müssen. Beispielsweise führt die Kombination der Haupt-Infotainmenteinheit mit der sicherheitskritischen Echtzeit-Rückfahrkamera und/oder den Komponenten des Fahrerinformationspanels zu einem System mit gemischter Kritikalität, wie in Abbildung 2 dargestellt.
Die Architektur eines Infotainmentsystems der nächsten Generation muss sicherstellen, dass die Komponenten nicht auf unvorhergesehene Weise interagieren, was die Zuverlässigkeit kritischer Systeme in Frage stellen würde.
Sicherheit in der Automobilelektronik:
Im Jahr 2010 legten Forscher zweier Universitäten, die sich mit der Sicherheit moderner Autos befassten, Motor und Bremsen eines fahrenden Fahrzeugs lahm, indem sie sich Zugang zum On-Board-Diagnoseanschluss verschafften. Dies verdeutlicht eindrücklich die enormen Herausforderungen, die vor uns liegen, um die Sicherheit in Fahrzeugen zu gewährleisten. Dazu gehören bereits vorhandene Komponenten, die nicht auf Sicherheit ausgelegt sind, und eine Lieferkette, die wahrscheinlich ihre Kapazitätsgrenzen erreicht hat.
Ebenfalls im Jahr 2010 führten US-amerikanische Automobilhersteller eine Funktion ein, die es Fahrzeughaltern ermöglicht, die Zentralverriegelung und den Motor per Smartphone von überall auf der Welt fernzusteuern. Diese Konnektivität basiert auf dem Telematiksystem des Fahrzeugs, das bei vielen Modellen zur Serienausstattung gehört.
Die Anbindung des Fahrzeugs an Weitverkehrsnetze (WANs) birgt das Risiko komplexer Angriffe. Ein einziger Fehler könnte es einem Fernangriff ermöglichen, eine ganze Fahrzeugflotte zu beschädigen. Diese Kommunikationen umfassen unter anderem die zwischen Fahrzeug und Servicecenter oder anderer OEM-Infrastruktur, zwischen Fahrzeug und Multimedia-Anbieter, zwischen Fahrzeugen, zwischen Fahrzeug und dem Stromnetz (bei Elektrofahrzeugen), zwischen Fahrzeug und Smartphone oder sogar zwischen Fahrzeug und Bank. Abbildung 3 zeigt einige Beispiele für Funkverbindungen über große Entfernungen in Fahrzeugen der nächsten Generation.
Anders als bei High-End-Rechenzentren wird von Autos nicht erwartet, dass sie über ein vollständiges Paket an Intrusion-Detection-Systemen (IDS), Intrusion-Prevention-Systemen (IPS), Firewalls und Unified-Transfer-Systemen (UTMs) verfügen. Dennoch zeigen die jüngsten Angriffe auf Sony, Citigroup, Amazon, Google und RSA deutlich, dass diese Verteidigungsmechanismen komplexen Angriffen nicht standhalten können.
Als der Stuxnet-Angriff 2010 bekannt wurde, schlug General Keith Alexander, Direktor des Cyber Command des US-Verteidigungsministeriums, vor, kritische US-Infrastrukturen in einem eigenen, sicheren Netzwerk, getrennt vom Internet, zu isolieren. Auch wenn dies wie eine radikale Lösung erscheinen mag, ist es genau der notwendige Ansatz. Kritische Fahrzeugsysteme müssen strikt von nicht-kritischen Steuergeräten und Netzwerken isoliert werden, um ihren sicheren Betrieb zu gewährleisten.
Obwohl eine physische Netzwerkisolation wünschenswert ist, lassen sich Kontaktpunkte nicht gänzlich vermeiden. Beispielsweise muss in einigen Märkten das Navigationssystem eines Autos während der Fahrt deaktiviert sein, was die Kommunikation zwischen Systemen mit sehr unterschiedlicher Sicherheitskritikalität bedingt. Diese Verbindungen erhöhen das Risiko softwarebedingter Bedrohungen wie etwa durch Schwachstellen im Betriebssystem, Seitenangriffe auf die Kryptografie oder Dienstausfälle.
Die Architektur eines Infotainmentsystems der nächsten Generation muss diese bedeutenden, neu auftretenden Sicherheitsbedrohungen von vornherein abwehren. Interaktionen zwischen kritischen und nicht-kritischen Systemen und Netzwerken müssen auf höchster Managementebene gerechtfertigt sein – durch strenge Echtzeitüberwachung, Schwachstellenanalyse und Zertifizierung mit höchsten Sicherheitsstandards.
Lösung: Sichere Umgebungen.
Open-Source-Betriebssysteme wie MeeGo oder Ubuntu eignen sich aufgrund ihrer Kompatibilität mit gängigen Multimedia-Standards und der Verfügbarkeit von Drittanbieteranwendungen gut. Wir können uns jedoch nicht allein auf das Multimedia-Betriebssystem verlassen, um alle Aspekte von Infotainmentsystemen der nächsten Generation zu steuern. Allzweck-Betriebssysteme starten nicht schnell genug, können keine Echtzeit-Reaktion für Protokolle wie CAN garantieren und sind für sicherheitskritische Funktionen wie Rückfahrkamera und Instrumentenanzeige nicht ausreichend zuverlässig und sicher. Daher benötigen wir eine Systemarchitektur, in der Multimedia-Betriebssysteme und ihre Anwendungen harmonisch mit hochzuverlässigen Echtzeitanwendungen koexistieren können, die von einem dedizierten Echtzeitbetriebssystem verwaltet werden, das speziell für den Schutz entwickelt wurde.
Eine mögliche Lösung ist der Einsatz mehrerer Prozessoren für unterschiedliche Aufgaben. Dies führt jedoch zu denselben Problemen wie die derzeit verwendeten mehreren Steuergeräte: Die Kommunikation zwischen den Anwendungen wird verlangsamt und die Komplexität an den Netzwerkrändern erhöht.
Die Notwendigkeit, diese Funktionen in einen einzigen Prozessor zu integrieren, ist unbestreitbar, da sie die Optimierung von Kosten, Verarbeitungszyklen, Datenverfügbarkeit und Komplexität ermöglicht. Für diese Workloads mit gemischter Kritikalität benötigen wir sichere Ausführungsumgebungen (Sandboxes). Jede dieser sicheren Umgebungen lässt sich durch ein isoliertes Profil identifizieren.
Diese vier Multi-Profil-Techniken wurden bereits in verschiedenen Formen kommerzialisiert:
• Multiboot
• Webtop
• Hypervisor Typ 2
• Hypervisor Typ 1
Multiboot
Das Konzept des Multiboots wird seit einigen Jahren in einigen Laptops und Netzwerkcomputern eingesetzt. Bei einem Dual-Boot-Laptop kann anstelle des Hauptbetriebssystems ein zweites Betriebssystem, üblicherweise eine vereinfachte Linux-Version, aktiviert werden. Dieses vereinfachte System dient typischerweise nur dem Surfen im Internet und ermöglicht es dem Benutzer, direkt nach dem Start im Internet zu surfen. Das zweite Betriebssystem ist separat gespeichert und läuft niemals gleichzeitig mit dem Hauptbetriebssystem. In manchen Fällen läuft diese schlankere Umgebung auf einem separaten Mikroprozessor (z. B. einem ARM-SoC, der vom Hauptprozessor des Computers, einem Intel-Prozessor, getrennt ist).
Das sekundäre Betriebssystem zeichnet sich durch seine gute Isolation aus Sicherheitsgründen aus; der Nachteil des Neustarts und die fehlende Möglichkeit, zwischen verschiedenen Profilen zu wechseln, haben seine Verbreitung jedoch stark eingeschränkt. Die Multiboot-Option ist in der integrierten Infotainment-Umgebung, die die gleichzeitige Ausführung von Profilen erfordert (z. B. Multimedia-Infotainmentsystem, Instrumentenanzeige und Echtzeitkommunikation), ebenfalls unpraktisch.
Webtop-
Konzept (Web-Desktop mit integrierter Netzwerkverbindung) bietet eine eingeschränkte Browserumgebung, die unabhängig vom primären Betriebssystem funktioniert. Im Gegensatz zum Dual-Boot-System läuft Webtop als Anwendung auf dem primären Betriebssystem. Solange Webtop nur nicht sicherheitskritische Systemkomponenten ausführt und das primäre Betriebssystem kritische Anwendungen isoliert verarbeiten kann, erfüllt diese Option alle Anforderungen. Allerdings kann eine browserbasierte Umgebung den hohen Funktionsanforderungen moderner Infotainmentsysteme möglicherweise nicht gerecht werden.
Eine ähnliche Option besteht darin, die Weboberfläche oder Wiedergabeschnittstelle über ein an eine Dockingstation angeschlossenes Smartphone zu nutzen. Auch diese Methode könnte die Anforderungen erfüllen (der Prozessor des Smartphones wird für Multimedia-Anwendungen anstelle des Infotainmentsystems des Fahrzeugs verwendet). Diese Technologie zur Fernsteuerung von Smartphones wurde bereits in einigen Fahrzeugen eingesetzt und stellt weiterhin eine interessante Option dar. Eine der Herausforderungen besteht darin, ein auf das Fahrzeug zugeschnittenes Nutzererlebnis zu gewährleisten.
Typ-2-Hypervisoren
: Typ-2-Hypervisoren ähneln Webservern, da ein sekundäres Profil eine Anwendung auf dem primären Betriebssystem ausführt. Anstatt jedoch lediglich einen Browser zu integrieren, handelt es sich beim sekundären Profil um ein voll funktionsfähiges Gastbetriebssystem, das in einer von der Hypervisor-Anwendung erstellten virtuellen Maschine läuft (Abbildung 4). Dieses Gastbetriebssystem kann beispielsweise ein Echtzeitbetriebssystem sein, das sich für kritische Anwendungen wie die Rückfahrkamera oder das Instrumentenpanel eignet. Der Hypervisor nutzt das primäre Betriebssystem für die Ein-/Ausgabe. Die Virtualisierungstechnik erfüllt die Anforderung, vollständige Funktionsumgebungen sowohl für kritische als auch für nicht-kritische Profile bereitzustellen.
Das Typ-2-Modell bietet jedoch keine zuverlässige Isolation. Sicherheitslücken oder Schwachstellen im primären Betriebssystem beeinträchtigen kritische Echtzeitfunktionen in der virtuellen Maschine. Darüber hinaus wurde festgestellt, dass auch die im Unternehmensnetzwerk installierten Typ-2-Hypervisor-Anwendungen Schwachstellen aufweisen, die die sichere Ausführungsumgebung gefährden können.
Typ-1-Hypervisoren:
Typ-1-Hypervisoren bieten ebenfalls volle Funktionalität und die gleichzeitige Ausführung mehrerer Profile. Da der Hypervisor jedoch offen arbeitet, kann die Profilisolation nicht durch Schwächen im Betriebssystem des jeweiligen Profils beeinträchtigt werden. Daher stellt ein Typ-1-Hypervisor sowohl aus funktionaler als auch aus Sicherheitssicht eine vielversprechende Lösung dar. Dennoch bleibt die Gefahr von Hypervisor-Schwachstellen bestehen, und nicht alle Typ-1-Hypervisoren sind so konzipiert, dass sie ein hohes Maß an Schutz und Sicherheit gewährleisten.
Eine bestimmte Variante, der auf einem Mikrokernel basierende Hypervisor vom Typ 1, wurde speziell für die anspruchsvollen Echtzeit-, Schnellstart- und Sicherheitsanforderungen moderner Infotainment-Umgebungen entwickelt. Mikrokernel bieten im Vergleich zu großen, universellen Betriebssystemen wie Linux, MeeGo, Android und Windows eine überlegene Architektur für Schutz und Sicherheit. Ein Mikrokernel führt im Supervisor-Modus nur eine minimale Anzahl systemkritischer Dienste aus, wie z. B. Prozessverwaltung, Ausnahmebehandlung und Interprozesskommunikation. Diese Architektur ermöglicht es Software, auf komplexen Systemen im Benutzermodus zu laufen, indem ihr nur Zugriff auf die vom Systementwickler als angemessen erachteten Ressourcen gewährt wird. Eine Schwachstelle oder ein Fehler in einer Komponente kann keine kritische Komponente beschädigen, da das betroffene Subsystem nicht auf diese Ressource zugreifen kann. Aufgrund seiner relativen Einfachheit kann der Mikrokernel von unabhängigen Aufsichtsbehörden formal verifiziert und nach höchsten Schutz- und Sicherheitsstandards zertifiziert werden.
In einem Hypervisor vom Typ 1 mit Mikrokernel wird die Systemvirtualisierung als Dienst innerhalb des Mikrokernels selbst implementiert. Daher bietet der Mikrokernel neben isolierten virtuellen Maschinen eine offene, standardisierte Schnittstelle für ressourcenschonende, unternehmenskritische Anwendungen wie Treiberinformationen, kryptografische Subsysteme und CAN-Bus-Controller, die nicht einem Allzweck-Host anvertraut werden können. Abbildung 5 veranschaulicht die Architektur des Mikrokernels vom Typ 1.
Ein Beispiel für einen Hypervisor vom Typ 1 mit Mikrokernel ist der INTEGRITY Multivisor von Green Hills Software. Dieser basiert auf dem
INTEGRITY-Mikrokernel, der in Infotainmentsystemen für Automobile und anderen kritischen Echtzeitschutzanwendungen weit verbreitet ist.
Die Anwendung der Hypervisor-Architektur vom Typ 1 mit Mikrokernel auf das zuvor erwähnte Infotainmentsystem mit gemischter Kritikalität, bestehend aus dem Hauptbetriebssystem für das Infotainment und kritischen Schutzanwendungen für die Rückfahrkamera und die Fahrerinformationen, führt zu der in Abbildung 6 dargestellten Architektur.
Sichere Netzwerktransaktionen.
Abbildung 6 veranschaulicht zudem eine Anwendung zur Verbesserung der Verwaltbarkeit. Eine weitere nützliche Anwendung der Typ-1-Architektur mit Mikrokernel ist das Hosting sicherer, im Mikrokernel integrierter Subsysteme für die Fernkommunikation. Beispiele für sichere Netzwerktransaktionen der nächsten Generation in Infotainmentsystemen sind die Übertragung geschützter Medieninhalte und digitaler Rechte sowie die Fernverwaltung von Systemen (z. B. Firmware-Updates und Ferndiagnoseanweisungen) durch Techniker und OEMs.
Ein zentraler Aspekt dieser Lösung ist die Herstellung einer sicheren Verbindung, die logisch außerhalb des Zugriffs des Hostsystems liegt. Da die Verschlüsselungsschlüssel, Serverzertifikate und die Protokollsoftware in nativen Prozessen verwaltet werden, können diese kritischen Daten vom Host-Betriebssystem weder gestohlen noch beschädigt werden, selbst bei Malware-Infektion. Darüber hinaus kann das native Sicherheitssubsystem seine TPM-Funktionen (oder eine gleichwertige Funktion) – sofern vorhanden – für die hardwarebasierte Schlüsselspeicherung und Plattformauthentifizierung nutzen. Die sichere Verbindung wehrt Man-in-the-Middle-Angriffe und Malware-Angriffe ab, die versuchen, die für die sichere Kommunikation verwendeten kryptografischen Schlüssel zu stehlen.
GENIVI
GENIVI ist ein Branchenverband, der Referenzplattformen für Fahrzeug-Infotainment fördert, um die Markteinführungszeit und Entwicklungskosten zu reduzieren. Diese Referenzplattformen beinhalten vorwettbewerbliche Funktionen, die in jedem System als essenziell gelten, sodass sich Unternehmen auf innovative Funktionen konzentrieren können, die Wettbewerbsvorteile schaffen. Ein zentrales Prinzip zur Erreichung dieser Ziele ist die Verwendung offener Standards und deren Konformitätszertifizierung. Da herkömmliche Infotainmentsysteme auf leistungsstarken, universellen Betriebssystemen basieren, ist es nicht verwunderlich, dass die ersten Referenzplattformen von GENIVI auf Linux-Distributionen basieren, die die Anforderungen der GENIVI-Konformitätserklärung erfüllen.
Mit Blick auf die Zukunft müssen die Akteure im Bereich Automotive Infotainment – darunter OEMs und ihre Zulieferer, Regulierungsbehörden und Fahrzeuginsassen – über das Multimediasystem selbst hinausblicken und die neuen Anforderungen an gemischte Kritikalität berücksichtigen. Um sicherzustellen, dass zukünftige Infotainmentsysteme, die sich durch ihre Komplexität und ihre zahlreichen Funktionen auszeichnen, die von der Automobilindustrie und den Verbrauchern geforderte Zuverlässigkeit, Sicherheit, Echtzeitfähigkeit und überschaubare Größe bieten, sind Systemsoftwarearchitekturen der nächsten Generation erforderlich. Systeme, die in zukünftigen Fahrzeugen integriert sind, werden eine Konvergenz kritischer Sicherheitsfunktionen mit traditionellen Telematik- und digitalen Unterhaltungsanwendungen erfahren. Die Bereitstellung dieser Funktionalität auf einer einzigen Rechenplattform ist entscheidend, um Größe, Gewicht, Stromverbrauch, Produktionskosten und Komplexität der Elektronik zu minimieren. Um dies sicher zu erreichen, ist jedoch ein neuer Ansatz für die Systemarchitektur erforderlich.
Eine vielversprechende Option für sichere Ausführungsumgebungen ist die Systemvirtualisierung vom Typ 1. Sie ermöglicht die Isolation und Verwaltung sicherheitskritischer Anwendungen zum Schutz in Echtzeit sowie leistungsstarker Open-Source-Multimedia-Betriebssysteme. Darüber hinaus bietet die Verfügbarkeit von Virtualisierungstechnologie für eine Vielzahl von Computerplattformen Entwicklern und Technikern die ultimative offene Plattform: die Möglichkeit, beliebige Betriebssysteme in beliebiger Kombination auszuführen und so eine beispiellose Flexibilität bei Installation und Nutzung zu erreichen. Diese Flexibilität ist in Automobilanwendungen, Desktop-Computern und Servern gleichermaßen von Vorteil.
Autoren: David Kleidermacher, Chief Technology Officer, Green Hills Software
Matt Jones, Vizepräsident, GENIVI-Allianz
