Dass Komfort seinen Preis hat, ist bekannt. Bei Keyless-Entry-Systemen ist er allerdings ziemlich hoch, er geht auf Kosten der Sicherheit. Der folgende Beitrag analysiert einen solchen Schlüssel-Hack und erläutert, welche Sicherheitsmaßnahmen dazu beitragen können, solche Angriffe zu stoppen.
Die Konnektivität nimmt zu, der Anteil von Software in Automobilsystemen wird höher und komplexer und moderne Fahrzeuge damit anfälliger für Angriffe auf die Cybersicherheit. Über die Jahre haben Sicherheitsforscher bereits eine Reihe von Sicherheitslücken in Fahrzeugsystemen identifiziert, die diesen Befund belegen. Ein jüngeres Beispiel sind verschiedene Sicherheitslücken im Keyless-Entry-System des Tesla Model X, aufgedeckt von Lennert Wouters an der Universität von Leuven, Belgien, im November 2020.
Die einzelnen Angriffsschritte auf das Keyless-Entry-System des Tesla Model X sind in Bild 1 dargestellt. Die Zahlen markieren die einzelnen Schritte. Das Zielfahrzeug ist verriegelt und der Schlüssel befindet sich nicht im Fahrzeug.
Der Angreifer verwendet ein vorbereitetes Gerät, das aus einem modifizierten Body Control Module (BCM), einem modifizierten Schlüssel (Key Fob) und einem Raspberry Pi besteht. Zu den Modifikationen gehört das Ersetzen des Secure-Element- (SE-)Chips durch Python-Skripte, die auf dem Raspberry Pi laufen und das SE emulieren. Der Angriff umfasst die folgenden Schritte:
Zwei grundlegende Sicherheitslücken führen dazu, dass dieser Angriff möglich ist:
Zielsystem | Schwachstelle | Ermöglicht dem Angreifer |
---|---|---|
Schlüssel | Unzureichende Überprüfung der Signatur | Einspielen von manipulierter Firmware auf dem Zielschlüssel über Bluetooth (BLE) |
BCM | Fehlende Überprüfung der Signatur | Koppeln des manipulierten Schlüssels mit dem BCM des Zielfahrzeugs |
Tabelle 1. Zusammenfassung der Sicherheitslücken.
Obwohl die Signaturprüfung auf dem Schlüssel implementiert ist, ermöglicht eine Sicherheitslücke dem Angreifer, den Schlüssel über BLE mit bösartiger Firmware zu updaten. Darüber hinaus speichern gültige Schlüssel typischerweise signierte Zertifikate, die sie vom Backend bekommen und bei der Bereitstellung erworben haben. Aber gerade diese Zertifikate werden vom BCM des Fahrzeugs beim Koppeln mit dem Schlüssel nicht verifiziert.
Die Probleme wurden bereits im August 2020 an Tesla gemeldet. Im November 2020 veröffentlichte das Unternehmen dann einen Over-The-Air- (OTA)-Patch, um die offengelegten Sicherheitslücken zu schließen.
Da die öffentlich zugänglichen Informationen recht begrenzt sind, werden für die folgende Diskussion möglicher Sicherheitslösungen einige Annahmen zu den Zielsystemen und der Art der Sicherheitslücken getroffen.
In der Automobilindustrie laufen etliche Bemühungen, um die Cybersicherheit zu verbessern. Dazu zählen die Entwicklung des neuen Standards für Cybersicherheitstechnik ISO SAE 214342 und Vorgaben wie die UN-Regelung 155 Cybersicherheit. Um die eingangs beschriebenen Probleme zu identifizieren und zu beheben, gibt es verschiedene Ansätze. Hier soll der Fokus weniger auf einer spezifisch technischen Sicherheitslösung liegen. Vielmehr wollen wir eine breitere Diskussion vorantreiben, was die Automobilindustrie tun sollte, um die Sicherheit zu verbessern und die Risiken von Sicherheitslücken im Endprodukt bereits vor der Vermarktung zu senken.
Das erste Problem ist die unsachgemäße Signaturprüfung in der Implementierung auf dem Schlüssel. Diese Art von Implementierungsproblemen lässt sich häufig mit statischer Codeanalyse, Software Composition Analysis (zur Identifizierung bekannter Sicherheitslücken) und Fuzz-Tests (zur Erkennung unbekannter Sicherheitslücken) erkennen. Darüber hinaus können auch Penetrationstests dazu dienen, solche Probleme aufzudecken, wenn sich die Tests auf risikoreiche Bereiche wie sicherheitsrelevante Funktionen und Firmware-Updates konzentrieren.
Das zweite Problem ist eine fehlende Zertifikatprüfung in der Auslegung des Pairing-Protokolls zwischen dem BCM und dem Schlüssel. Diese Art von Auslegungsproblemen lässt sich oftmals durch die Überprüfung der Sicherheitsauslegungen identifizieren. Zwingend notwendig ist zusätzlich eine ordnungsgemäße Bedrohungsanalyse und Risikobewertung des Zielsystems, um Bereiche mit hohem Risiko zu identifizieren. Dies trägt dazu dabei, geeignete Sicherheitsanforderungen zu definieren und angemessene Sicherheitskontrollen zu entwickeln. Auch diese Probleme lassen sich mittels Penetrationstests aufdecken, wenn man sich dabei auf risikoreiche Bereiche wie sicherheitsrelevante und Pairing-Funktionen konzentriert.
Es ist kaum möglich, zu 100 Prozent sichere Fahrzeugsysteme zu entwickeln. Automobilkonzerne sollten deshalb geeignete Maßnahmen zur Aktivierung von OTA-Updates in Betracht ziehen, um neu entdeckte Sicherheitslücken zeitnah zu patchen.
Und noch etwas anderes verdeutlicht das Beispiel dieses erfolgreichen Schlüssel-Hacks. Die Automobilindustrie wird nicht umhinkommen, interne Prozesse und Arbeitsabläufe zu etablieren, um Informationen über Sicherheitslücken (wie sie beispielsweise von Sicherheitsforschern bereitgestellt werden) nachzuvollziehen, zu sammeln und zu verarbeiten. Nur dann kann die Branche angemessen auf derartige Sicherheitsbedrohungen reagieren.
Dr. Dennis Kengo Oka
ist Automotive-Cybersecurity-Experte bei Synopsys – mit über 15 Jahren Erfahrung in der Automotive-Branche weltweit. Er hält einen Ph.D. in Automotive Security mit Schwerpunkt auf Lösungen für das vernetzte Auto. Dennis Oka hat über 60 Arbeiten veröffentlicht, darunter Konferenzbeiträge, Zeitschriftenartikel und Bücher. Er ist ein gefragter Redner auf internationalen Konferenzen und Veranstaltungen im Bereich Automotive und Cybersicherheit.