-
Die vorliegende Erfindung betrifft ein Verfahren und eine Vorrichtung zum Betrieb eines Kommunikationsnetzwerks insbesondere eines Kraftfahrzeugs gemäß den Oberbegriffen der jeweiligen unabhängigen Ansprüche. Weiterhin betrifft die Erfindung ein Computerprogramm, das alle Schritte des erfindungsgemäßen Verfahrens ausführt, wenn es auf einem Rechengerät oder einer Steuereinrichtung abläuft. Schließlich betrifft die vorliegende Erfindung ein Computerprogrammprodukt mit Programmcode, der auf einem maschinenlesbaren Träger gespeichert ist, zur Durchführung des erfindungsgemäßen Verfahrens, wenn das Programm auf einem Rechengerät oder einer Steuereinrichtung ausgeführt wird.
-
Stand der Technik
-
Heutige Kraftfahrzeuge enthalten eine große Anzahl von derzeit bis zu 70 Steuergeräten, welche Sensordaten lokal erfassen und, basierend auf den erfassten Sensordaten, Aktoren ansteuern. Die zunehmenden Anforderungen an Fahrsicherheit, Abgasverhalten und Kraftstoffverbrauch erfordern einen über ein On-Board-Kommunikationsnetz erfolgenden Datenaustausch zwischen den Steuergeräten.
-
Ein Beispiel für ein genanntes On-Board-Kommunikationsnetzwerk ist der sogenannte „CAN“-Bus (Controlled Area Network), welcher sämtliche Informationen über lediglich zwei Leitungen überträgt. Dennoch können damit komplexe Systemfunktionen realisiert werden, wie z.B. Schaltvorgänge eines automatischen Getriebes oder Steuereingriffe bei einem „Elektronischen Stabilitätsprogramm“ (ESP). Die Datenübertragung in einem CAN-Bus erfolgt seriell mittels Datenpaketen, deren Struktur unter den Automobilherstellern bereits weitgehend standardisiert ist. Die Vorgänge bei der Übertragung, der Fehlersicherung, der Fehlerkorrektur und der Bestätigung sind genau festgelegt und in der CAN-Spezifikation beschrieben
-
Ein Teil der ausgetauschten Daten ist sicherheitsbezogen, z.B. von einem ESP an ein Motorsteuergerät abgegebene momentenerhöhende (MSR) oder momentenerniedrigende (ASR) Anforderungen oder von einem Fahrzeugführungsrechner an Steuergeräte momentenstellender Aktoren abgegebene Momentenvorgaben. Bei den zuletzt genannten Aktoren kann es sich insbesondere auch um Steuergeräte von Elektrofahrzeugen handeln. Diese sicherheitsbezogenen Nachrichten werden in an sich bekannter Weise vom jeweiligen Sender entsprechend den bestehenden Anforderungen nach dem bekannten ISO-Sicherheitsstandard ASIL (= “Automotive Safety Integrity Level“) berechnet und z.B. über Checksummen und Botschaftszähler abgesichert versendet.
-
Offenbarung der Erfindung
-
Die genannten Kommunikationsnetzwerke wurden bislang nur gering bzw. gar nicht gegen sicherheitsrelevante datentechnische Eingriffe bzw. Datenzugriffe von außen geschützt. Insbesondere sind über bestehende Schnittstellen, z.B. drahtgebundene Schnittstellen des OBD-II-Ports (OBD = On-Board-Diagnose) oder sogar drahtlose Schnittstellen (WLAN, Bluetooth, UMTS, zukünftige Car-2-X-Schnittstellen, etc.), Manipulationen des Bus-internen Nachrichtenflusses möglich.
-
Hinzu kommt, dass in sämtlichen Bereichen insbesondere der Industrie- und Transporttechnik ein deutlicher Trend darin besteht, zugrunde liegende Datennetze und an diese Netze angeschlossene Steuergeräte oder dergleichen auch mit dem Internet zu vernetzen, um beispielsweise Fernwartungsarbeiten an den Steuergeräten zu ermöglichen bzw. zu vereinfachen oder den Benutzern eines Transportmittels die mediale Welt zu eröffnen.
-
Heutige Konzepte zur Datensicherheit in solchen Kommunikationsnetzwerken beruhen jedoch ausschließlich auf der Datenintegrität der ausgetauschten Botschaften, welche durch die genannte Bildung von Checksummen oder die genannten Botschaftenzähler oder das bekannte Prinzip der Signalredundanz überprüft werden kann. Solche Sicherheitsmechanismen bieten zwar eine gewisse Sicherheit gegenüber Fehlfunktionen der zugrunde liegenden Hardware bzw. Elektronik, z.B. aufgrund von nicht ausreichender elektromagnetischer Verträglichkeit (EMV), von defekten CAN-Bauteilen, von Speicherfehlern, oder dergleichen. Jedoch bieten diese bekannten Sicherheitskonzepte keine Maßnahmen, um absichtlich durch Angreifer („Hacker“) verfälschte Botschaften zu entdecken bzw. zu erkennen und/oder gegebenenfalls deren Auswirkungen zu unterdrücken oder diese sogar zu verhindern.
-
Gelingt es einem Angreifer, über eine oder mehrere der genannten Schnittstellen Zugriff auf das interne Kommunikationsnetz eines Kraftfahrzeugs zu erlangen, kann er gefälschte Nachrichten einschleusen oder bereits bestehende Nachrichten verfälschen. Sollten dem Angreifer die genannten Absicherungsmaßnahmen sogar bekannt sein, kann er die Nachrichten so manipulieren, dass diese Maßnahmen eine bereits erfolgte Verfälschung nicht erkennen können.
-
Wenn eine solche Manipulation nicht erkannt wird oder auf eine erkannte Manipulation nicht angemessen reagiert wird, kann dies zur Gefährdung von Personen führen, insbesondere wenn eines oder mehrere der oben genannten Fahrsicherheitssysteme, wie z.B. das eingangs genannte ESP, betroffen sind. So kann der Angreifer auf eine fahrdynamisch kritische Situation zuwarten, z.B. eine Kurvenfahrt, eventuell noch auf nassem Untergrund, in der eine fehlerhafte Momentenanforderung des ESP an das Motorsteuergerät zu einem Verlust der Querstabilität und damit zu einem Verlust der Kontrolle über das Fahrzeug führt, und in diesem Moment den genannten Eingriff (fehlerhafte Momentenanforderung) anfordern. Das ESP würde diesen Eingriff nicht anfordern, sobald es die fahrdynamisch kritische Situation erkannt hat.
-
Ein anderes Beispiel ist ein Elektrofahrzeug mit radindividuellem Antrieb, bei dem ein Angreifer sich selbst als Fahrzeugführungsrechner ausgibt und unterschiedliche Momentenanforderungen an z.B. das vordere linke und vordere rechte Rad sendet, so dass die daraus resultierende Momentendifferenz an den Vorderrädern zu einem hohen Giermoment und damit ebenfalls zu einem Verlust der Querstabilität des Fahrzeugs führt.
-
Ein weiteres Beispiel ist ein Hybrid- oder Elektrofahrzeug, in dem Nachrichten vom ESP oder von einer Hochvolt-(HV-)-Batterie blockiert werden, so dass keine Bremsenergie-Rückgewinnung (d.h. „Rekuperation“) mehr erfolgen kann, weil die Batterie entweder bereits vollständig geladen sein soll oder weil sich das Fahrzeug derzeit in einer fahrdynamisch kritischen Situation befinden soll.
-
Ein noch weiteres Beispiel ist ein Airbag-Steuergerät, bei dem ein durch einen Angreifer simuliertes Crash-Signal in einem Hybrid- oder Elektrofahrzeug zu einem Öffnen der Schütze der genannten HV-Batterie führen würde. Der Wegfall der HV-Spannung kann wiederum zu einem Momentensprung führen, z.B. durch Verlust an Vortrieb durch den E-Motor oder durch Abbruch der genannten Rekuperation. Dies kann bei entsprechendem Zuwarten des Angreifers auf eine kritische Fahrsituation dann zu einem Verlust der Fahrstabilität des Fahrzeugs führen.
-
Der Erfindung liegt der Gedanke zugrunde, den Betrieb insbesondere sicherheitsrelevanter Steuergeräte eines hier betroffenen elektronischen bzw. mechatronischen Steuersystems bzw. ein in dem Steuersystem enthaltenes bzw. mit diesem verbundenes Kommunikationsnetzwerk gegen informations- bzw. nachrichtentechnische Angriffe von außen zu schützen. Die Erfindung schlägt hierzu vor, eine extern angeordnete Überwachungseinrichtung vorzusehen, welche mit diesen Steuergeräten über den Systembus (z.B. CAN-Bus) des zugrunde liegenden Kommunikationsnetzwerks und/oder einen von dem Kommunikationsnetzwerk getrennten zusätzlichen Kommunikationskanal kommuniziert.
-
Gemäß einer ersten Ausgestaltung kommuniziert die Überwachungseinrichtung mit einem oder mehreren Steuergeräten ausschließlich über den vom Systembus kommunikationstechnisch bzw. datentechnisch getrennten zusätzlichen Kommunikationskanal. Dies hat den Vorteil, dass meist nur über den Systembus erfolgende Angriffe nicht auch den zusätzlichen Kommunikationskanal kompromittieren können.
-
Gemäß einer zweiten Ausgestaltung kommuniziert die Überwachungseinrichtung mit einem oder mehreren Steuergeräten sowohl über den Systembus als auch über den vom Systembus kommunikationstechnisch bzw. datentechnisch getrennten zusätzlichen Kommunikationskanal. Dies hat den Vorteil, dass die Überwachungseinrichtung über beide Kanäle empfangene Daten miteinander vergleichen kann und eine entsprechende Plausibilitätsprüfung durchführen kann, welche die Erkennungsgüte von Manipulationen noch weiter verbessert.
-
Bei den genannten sicherheitsrelevanten Steuergeräten handelt es sich um solche Steuergeräte, welche zur Gewährleistung der betrieblichen bzw. funktionalen Sicherheit auf zuverlässige und korrekte Nachrichten anderer Steuergeräte angewiesen sind.
-
Bei der Überwachungseinrichtung kann es sich um ein an sich bekanntes „Security Module“ (SM) oder ein ebenfalls an sich bekanntes „Trusted Platform Module“ (TPM) handeln. Diese Module können das Netzwerk auf Manipulationen von außen, bspw. durch Angreifer, überwachen. Solche Manipulationen können z.B. geänderte Steuerbefehle oder Datensätze sein, mittels derer der Angreifer das zugrunde liegende Kommunikationsnetzwerk bzw. eines oder mehrere Steuergeräte des Netzwerks so zu manipulieren beabsichtigt, dass der Angreifer entweder Kontrolle darüber erlangt oder aber den sicheren Betrieb des zugrunde liegenden Kraftfahrzeugs oder dergleichen verhindert bzw. kompromittiert.
-
Bei Erkennen einer Verletzung der Datenintegrität bzw. einer genannten Manipulation insbesondere von sicherheitsrelevanten Daten, wird eines oder mehrere der genannten Steuergeräte von der Überwachungseinrichtung (d.h. von extern) in einen sicheren Betriebszustand übergeführt.
-
Die Aktivierung des genannten sicheren Zustandes kann durch Versenden eines entsprechenden Abschaltbefehls, d.h. eines entsprechenden Abschaltsignals oder einer Abschaltnachricht, an das jeweilige Steuergerät erfolgen. Auch die Übertragung solcher Abschaltbefehle erfolgt wiederum über den alle Steuergeräte verbindenden Datenbus (z.B. CAN-Bus) und/oder über den zusätzlichen Kommunikationskanal, über welche die Überwachungseinrichtung direkten Zugriff auf ein zumindest bei jedem sicherheitsrelevanten Steuergerät angeordnetes Abschaltelement (z.B. einen Abschaltpfad oder ein Abschaltmodul) hat.
-
Die Verwendung des vom Datenbus getrennten zusätzlichen Kommunikationskanals hat den Vorteil, dass ein sicherer Betriebszustand auch dann aktiviert werden kann, wenn der Angreifer bereits Kontrolle über den Datenbus erlangt hat und somit die genannten Abschaltbefehle eventuell blockieren oder verfälschen könnte.
-
Es ist anzumerken, dass die genannten Funktionen der Erkennung einer Datenmanipulation und zur Überführung in einen sicheren Zustand eines genannten Steuergeräts den höchsten Anforderungen des eingangs genannten ASIL zu genügen hat. Die Auswertung des genannten Abschaltbefehls in den Steuergeräten bevorzugt mittels des in dem jeweiligen Steuergerät angeordneten Abschaltelementes muss daher gemäß dem höchsten Sicherheitsstandard erfolgen, bevorzugt mittels einer in dem jeweiligen Steuergerät implementierten Sicherheitssoftware. Diese Sicherheitssoftware wird bevorzugt als funktionale Ergänzung der zweiten Ebene des an sich bekannten, auf dem OSI-Modell beruhenden (reduzierten) 3-Ebenen-Konzept des CAN-Bus realisiert.
-
Das erfindungsgemäß vorgeschlagene Verfahren und die Vorrichtung ermöglichen eine einfache und gleichzeitig sehr wirksame Absicherung eines hier betroffenen Kommunikationsnetzwerks bzw. Steuersystems eines Kraftfahrzeugs oder dergleichen gegen jede Art datentechnischer oder kommunikationstechnischer Manipulation.
-
Die Erfindung kann insbesondere in Kraftfahrzeugen oder anderen Transportmitteln wie Nutzfahrzeugen, Flugzeugen, Schiffen oder Schienenfahrzeugen oder aber auch bei der Steuerung von Industrieanlagen, bevorzugt im Bereich dortiger Automatisierungstechnik, mit den hierin beschriebenen Vorteilen zur Anwendung kommen.
-
Weitere Vorteile und Ausgestaltungen der Erfindung ergeben sich aus der Beschreibung und den beiliegenden Zeichnungen.
-
Es versteht sich, dass die voranstehend genannten und die nachstehend noch zu erläuternden Merkmale nicht nur in der jeweiligen angegebenen Kombination, sondern auch in anderen Kombinationen oder in Alleinstellung verwendbar sind, ohne den Rahmen der vorliegenden Erfindung zu verlassen.
-
Kurze Beschreibung der Zeichnungen
-
1a zeigt schematisch ein Datenbussystem eines Kraftfahrzeugs mit einer erfindungsgemäß angeordneten Überwachungseinheit.
-
1b zeigt den schematischen Aufbau einer in 1a dargestellten Überwachungseinheit.
-
2a, b zeigen zwei Ausführungsbeispiele zur Überführung eines Steuergeräts in einen sicheren Betriebszustand.
-
3 zeigt eine bevorzugte Ausgestaltung des erfindungsgemäßen Verfahrens zur Überführung eines Steuergeräts in einen sicheren Betriebszustand anhand eines Ablaufdiagramms.
-
Beschreibung von Ausführungsbeispielen
-
1a zeigt schematisch einen Ausschnitt eines CAN-Datenbussystems 100 eines Kraftfahrzeugs, über welches vorliegend drei beispielhafte Steuergeräte 105–115 miteinander kommunizieren. Bei den Steuergeräten 105–115 handelt es sich bevorzugt um sicherheitsrelevante Steuergeräte, wie bereits oben beschrieben.
-
Das gezeigte Kommunikationsnetzwerk 100 umfasst eine Überwachungseinheit 120, welche über einen zusätzlichen Kommunikationskanal 125 („HW-Leitung“) mit jedem der Steuergeräte 105–115 verbunden ist. Die Kommunikation über den Kommunikationskanal 125, insbesondere das Versenden genannter Abschaltbefehle an eines oder mehrere der Steuergeräte 105–115, erfolgt mittels eines in der Überwachungseinheit 120 angeordneten Treibermoduls 130, welches insbesondere ein entsprechendes Kommunikationsprotokoll bereitstellt.
-
Bei dem genannten Kommunikationsprotokoll handelt es sich bevorzugt um ein an sich bekanntes „P2P“-Protokoll (Punkt-zu-Punkt Protokoll), um genannte Datenmanipulationen auf dem zusätzlichen Kommunikationskanal auszuschließen bzw. zumindest zu erschweren. Es kommen jedoch auch andere an sich bekannte asynchrone oder synchrone Kommunikationsprotokolle in Betracht, wie z.B. nicht getaktete Busprotokolle, welche Lese- und Schreibzyklen über „Handshaking“ steuern und Anfrage- und Bestätigungs-Signale beinhalten, oder synchrone Protokolle, welche taktgesteuert sind und daher den Zusatzaufwand zur Synchronisation zwischen der Überwachungseinheit 120 und den Steuergeräten 105–115 vermeiden.
-
Um den durch Abschaltbefehle seitens der Überwachungseinheit 120 kontrollierten Übergang eines der Steuergeräte 105–115 in einen sicheren Betriebszustand zu ermöglichen, weisen die Steuergeräte 105–115 jeweils ein mit dem Kommunikationskanal 125 verbundenes Abschaltmodul bzw. einen dort programmtechnisch realisierten Abschaltpfad 135, 135‘, 135‘‘ auf. Beispiele für das Abschaltmodul sowie die Überführung in einen sicheren Betriebszustand werden nachfolgend anhand der 2a und 2b beschrieben.
-
Bei dem Kommunikationskanal 125 („HW-Leitung“) kann es sich um eine einfache analoge Leitung mit einem ohmschen Widerstand handeln, über die – ohne ein festgelegtes Übertragungsprotokoll – z.B. ein analoges High/Low-Signal übertragen wird.
-
Auch können die Abschaltbefehle über den Kommunikationskanal 125 durch Aufmodulation eines Abschaltsignals auf einem Trägersignal übertragen werden, wobei die Aufmodulation wiederum im Wege einer Pulsweitenmodulation (PWM) erfolgen kann. Es versteht sich, dass die genannte Aufmodulation auch durch andere Modulationsverfahren wie z.B. Frequenzmodulation (FM) oder Amplitudenmodulation (AM) erfolgen kann.
-
In 1b ist schematisch ein beispielhafter Aufbau der Überwachungseinheit 120 dargestellt. Die vom CAN-Bus 100 kommende Kommunikationsleitung führt zunächst in eine Recheneinheit 200, vorliegend ein programmierter µ-Controller. In der Recheneinheit 200 wird der aktuelle Netzwerkverkehr auf dem CAN-Bus 100 sowie Identifizierungscodes der an dem Netzwerkverkehr beteiligten Steuergeräte erfasst und die so erfassten Daten in einen Speicher 205 abgelegt. In dem Speicher 205 sind auch früher erfasste Daten zum Netzwerkverkehr abgelegt, welche von der Recheneinheit 200 aus dem Speicher 205 abgerufen werden.
-
Die neu erfassten Daten des Netzwerkverkehrs werden mit den aus dem Speicher 205 abgerufenen früheren Daten zum Netzwerkverkehr verglichen, um etwaige Unstimmigkeiten bzgl. der Datenintegrität zu erkennen. Abhängig vom Ergebnis dieses Vergleichs wird von der Recheneinheit 200 auf das Vorliegen bzw. Nicht-Vorliegen einer Datenmanipulation geschlossen. Im Falle einer erkannten Datenmanipulation kommuniziert die Recheneinheit 200 mit einem Überführungsmodul 210, welches einen oder mehrere der beschriebenen Abschaltbefehle zur Überführung der durch die erfassten Identifizierungscodes identifizierbaren Steuergeräte generiert. Die Abschaltbefehle werden mittels eines nachfolgenden Treibermoduls 215 an die HW-Leitung 125 weitergegeben und von dieser an das jeweilige Steuergerät 105–115 übermittelt. Die Umsetzung dieser Abschaltbefehle in den betroffenen Steuergeräten 105–115 erfolgt z.B. in der in den 2a und 2b dargestellten Weise.
-
Es ist anzumerken, dass die Überwachungseinheit 120 auch durch Verwendung eines herkömmlichen Sicherheitsmoduls, z.B. eines TPM-Chips, oder dergleichen realisiert werden kann.
-
Die 2a und 2b zeigen zwei Ausführungsbeispiele, wie die Überführung eines Steuergeräts in einen sicheren Betriebszustand erfolgen kann.
-
In dem in der 2a gezeigten Ausführungsbeispiel erfolgt die Überführung eines jeweiligen Steuergeräts 105 durch Deaktivierung einer (nicht gezeigten) Endstufe des Steuergeräts 105. In diesem Ausführungsbeispiel ist das über die vom CAN-Bus 100 getrennte HW-Leitung 125 übertragene Abschaltsignal mit dem jeweiligen Abschaltpfad 135 des betroffenen Steuergeräts 105 durch ein logisches UND 301 verknüpft. Durch die UND-Verknüpfung 301 der Abschaltpfads 135 und des HW-Signals 125 wird die Abschaltung der Endstufe 302 des gezeigten Aktuators 303 der Endstufe bewirkt. Die Deaktivierung der Endstufe bzw. der Übergang des Steuergeräts 105 in den genannten sicheren Zustand wird demnach vorliegend in besonders sicherer Weise bereits durch Aktivierung des externen Abschaltsignals ausgelöst bzw. getriggert.
-
In dem Ausführungsbeispiel gemäß 2b wird der elektrische Antriebsstrang eines sogenannten „HV-Interlock“ (= Hochspannungsverriegelung von HVgetriebenen Steuergeräten oder Systemkomponenten) als Signalpfad zur Abschaltung bzw. zur Überführung eines Steuergeräts in einen sicheren Betriebszustand genutzt. Der HV-Interlock eignet sich für diesen Zweck, da er mit jedem HV-System verbunden ist und auch von jedem HV-System ausgewertet werden kann. So kann eine Überführung in den sicheren Zustand durch Erfassung einer Unterbrechung des HV-Interlock-Signals ausgelöst werden.
-
In dem Ausführungsbeispiel wirkt ein erkennendes erstes Steuergerät 402 über einen Abschaltpfad 403 (CAN-Bus oder HW-Leitung) auf ein zweites Steuergerät 404, welches daraufhin ein HV-Interlock-Signal 401 generiert. Wie durch die gestrichelten Linien 407, 408, 409, 410 angedeutet, wird das HV-Interlock-Signal 401 in den Steuergeräten 402, 405, 406 sowie 404 jeweils durchgeführt bzw. durchgeschleift, so dass bei einer z.B. im Steuergerät 402 entstehenden Unterbrechung des HV-Interlock-Signals 401 die anderen Steuergeräte 405, 406 in einen sicheren Zustand übergehen bzw. übergeführt werden.
-
Der genannte Übergang in den sicheren Zustand kann ausgelöst werden durch
- a) den in 1b gezeigten Microcontroller (µC) 200; allerdings hat dies den Nachteil, dass in diesem Fall der Microcontroller selbst mit großer Wahrscheinlichkeit bereits manipuliert bzw. kompromittiert wurde.
- b) eine redundante Abschaltlogik (µC, HW, ...), die das HV-Interlock-Signal auswertet und eigenständig abschalten kann.
-
Bei dem in der 3 gezeigten Ablaufdiagramm wird nach dem Start 500 der gezeigten Routine zunächst der Datenverkehr auf dem CAN-Bus erfasst und abgespeichert 505. Aus den neu erfassten Daten werden Identifizierungscodes der an dem Datenverkehr beteiligten Steuergeräte extrahiert 510. In Schritt 515 werden bereits früher erfasste Daten des Datenverkehrs geladen und in Schritt 520 die neu erfassten Daten mit den früheren Daten verglichen. Ziel dieses Vergleichs 520 ist die Erkennung einer möglichen Datenmanipulation bzw. möglichen Verletzung der Datenintegrität.
-
Im Falle einer nicht erkannten Datenmanipulation wird wieder zu Schritt 505 zurückgesprungen und neue Daten des Datenverkehrs erfasst. Danach werden die eben genannten Schritte 510–520 erneut ausgeführt.
-
Im Falle einer erkannten Datenmanipulation wird ein (oder mehrere) Abschaltbefehl(e) über die HW-Leitung an die durch Identifizierungscodes identifizierten Steuergeräte übermittelt 525. Die Übermittlung der Abschaltbefehle kann auch, mit den oben genannten Vorteilen, gleichzeitig über den CAN-Bus 100 und die HW-Leitung 125 erfolgen. Gemäß Schritt 530 werden die empfangenden Steuergeräte aufgrund der empfangenen Abschaltbefehle jeweils in einen sicheren Betriebszustand übergeführt.