-
Stand der Technik
-
Die Erfindung geht aus von einer Vorrichtung und Verfahren zur Anomalieerkennung in einem Kommunikationsnetzwerk insbesondere in einem Fahrzeug.
-
Network Intrusion Detection and Prevention Systeme, NIDPS, werden verwendet, um Anomalieen zu erkennen und gegebenenfalls auf erkannte Anomalien zu reagieren. Dies erhöht die Betriebssicherheit von Kommunikationsnetzwerken insbesondere im Hinblick auf Angriffsszenarien.
-
Wünschenswert ist es, die Betriebssicherheit eines Kommunikationsnetzwerks insbesondere eines Fahrzeugs weiter zu verbessern.
-
Offenbarung der Erfindung
-
Dies wird erreicht durch eine Vorrichtung und ein Verfahren nach den unabhängigen Ansprüchen.
-
Um ein NIDPS für ein Automotive-Netzwerk bereitzustellen, sind Unterschiede von Automotive- zu Enterprise-Netzwerken zu berücksichtigen. Diese sind beispielsweise deren Netzwerkstruktur, Netzwerkdynamik und deren Netzwerkknoten.
-
Netzwerkstruktur:
-
Ein Enterprise-Netzwerk folgt typischerweise einem Client-Server-Modell, in dem es eine kleinere Anzahl an dedizierten Server-Netzwerkknoten gibt, die Dienste an eine typischerweise höhere Anzahl an Client-Netzwerkknoten anbieten. Automotive-Netzwerke bestehen aus ECUs, auf denen sowohl Server- wie auch Client-Applikationen ausgeführt werden.
-
Enterprise-Netzwerke sind im Allgemeinen wesentlich größer und komplexer als Automotive-Netzwerke. Die Gesamtheit eines Enterprise-Netzwerks ist typischerweise wesentlich segmentierter, physisch oder logisch separiert in verschiedene Zonen und Sub-Netzwerke. ECUs in typischen Automotive-Netzwerken sind, falls überhaupt, durch sogenannte „Gateways“ nur in sehr wenige Teilnetzwerke separiert oder logisch auf Ethernet-Ebene über sogenannte „Virtual Local Area Networks“ (VLANs) getrennt.
-
Netzwerkdynamik:
-
Enterprise- und Automotive-Netzwerken unterscheiden sich in der Dynamik, mit der sich das Netzwerk verändert und betrieben wird.
-
In Enterprise-Netzwerken können Netzwerkknoten beliebig ausgetauscht werden. Für Veränderungen bei Server-Netzwerkknoten kann typischerweise noch eine Anpassung in der Konfiguration der Verteidigungssysteme, wie bspw. das NIDPS, durchgeführt werden. Dagegen sind solche Anpassungen bei Netzwerknoten, die Clients sind, nicht möglich. Dies liegt daran, dass Clients sich von wechselnden Standorten zum Netzwerk verbinden und häufig ausgetauscht werden. Weiterhin lässt sich nicht genau vorhersagen, welche Applikationen auf einem Client ausgeführt werden.
-
ECUs in Automotive Netzwerken werden, wenn überhaupt, sehr selten ausgetauscht und werden dann häufig auch nur durch eine identische Kopie ausgetauscht. Daher ist es sehr unwahrscheinlich, dass sich an der Funktionsweise des Netzwerks etwas ändert. In einem Automotive-Netzwerk sind die Netzwerkknoten durchweg bekannt. Ebenso sind die darauf jeweils laufenden Server- und Client-Applikationen wohldefiniert und Details über die Netzwerkkommunikation können vorgegeben sein.
-
In Enterprise-Netzwerken können Knoten von Außerhalb Verbindungen in ein Unternehmensnetzwerk hinein aufbauen. In einem Automotive-Netzwerk sind alle Kommunikationsknoten des Netzwerks Teil des internen Fahrzeugnetzwerks.
-
In Enterprise-Netzwerken können typischerweise verschiedene Benutzer den gleichen Client verwenden können. In ECUs von Automotive-Netzwerken gibt es keine Benutzer, sondern lediglich Server- und Client-Applikationen, die ihren Dienst verrichten.
-
Netzwerkknoten:
-
Hinsichtlich der Ressourcen sind die Netzwerkknoten eines Enterprise-Netzwerks im Allgemeinen um ein vielfaches ressourcenstärker - zum Beispiel in Bezug auf Speicher und Performanz - als ECUs eines Automotive-Netzwerks.
-
Hinsichtlich der Software sind in Enterprise-Netzwerken die Netzwerkknoten meist mit weit verbreiteten Standard-Betriebssystemen und Standard-Software ausgestattet, für die Security-Schwachstellen bekannt sind. Deshalb liegt ein Schwerpunkt von NIDPS-Systemen in Enterprise-Netzwerken darin, signaturbasiert zu erkennen, wenn versucht wird, bekannte Security-Schwachstellen auszunutzen. Die Netzwerkknoten in Automotive-Netzwerken sind oft mit weniger verbreiteter Software ausgestattet. Ein Großteil der Signaturen aus NIDPS-Systemen für Enterprise-Netzwerke ist nicht anwendbar, und es gibt keine größeren Datenbanken über spezifisch für Automotive-Netzwerke bekannte Schwachstellen.
-
Zwar ist die grundsätzliche Aufgabe eines NIDPS, d.h. Detektieren und Reagieren auf Anomalien im Netzwerkverkehr, bei Enterprise- und Automotive-Netzwerken gleich. Aus den oben genannten Punkten wird allerdings ersichtlich, dass sich die grundsätzliche Funktionsweise eines effizienten NIDPS für Automotive-Netzwerke grundsätzlich von der eines NIDPS für Enterprise-Netzwerke unterscheiden muss. Ein NIDPS für ein Automotive-Netzwerk muss sich die bekannte und statische Netzwerkstruktur sowie die wesentlich geringere Dynamik der Netzwerkteilnehmer zunutze machen, um Anomalien mit begrenzten Ressourcen effizient detektieren zu können.
-
Ein Verfahren zur Anomalieerkennung in einem Kommunikationsnetzwerk, sieht vor, dass wenigstens zwei Nachrichten an einem Port des Kommunikationsnetzwerks beobachtet werden, wobei eine Eigenschaft eines Kommunikationsverhaltens eines Netzwerkteilnehmers abhängig von den wenigstens zwei Nachrichten bestimmt wird, wobei eine Abweichung der Eigenschaft von einer erwarteten Eigenschaft bestimmt wird, und wobei ein Vorliegen einer Anomalie erkannt wird, wenn die Abweichung einer zulässigen Abweichung abweicht, wobei die erwartete Eigenschaft ein Kommunikationsverhalten des wenigstens einen Netzwerkteilnehmers abhängig von einer insbesondere statischen Netzwerkarchitektur des Kommunikationsnetzwerks definiert. Damit wird in einem Automotive Ethernet Netzwerk der Netzwerkverkehr an einem vorhandenen Ethernet-Ports analysiert und eine Anomalie identifiziert, die durch einen Angreifer im Netzwerk verursacht wird. Dies könnte beispielsweise an einem Automotive Ethernet Switch, an dessen Hardware-Ports, d.h. dessen Switch-Ports, umgesetzt sein oder an Hardware-Ports eines beliebigen Teilnehmers am Automotive Ethernet Netzwerk in einem Fahrzeug. Die Anomalie-Erkennung beruht beispielsweise auf einer Analyse von mindestens zwei Ethernet Paketen und der daraus resultierenden Ableitung des Kommunikationsverhaltens eines Netzwerkteilnehmers. Weicht das beobachtete Kommunikationsverhaltens eines Netzwerkteilnehmers zu sehr von dem erwarteten Kommunikationsverhaltens ab, so wird eine Anomalie detektiert. Mit Automotive Ethernet wird Ethernet Technologie beispielsweise gemäß 100BASE-T1 Version 1.0, 1000BASE-T1 oder 100BASE-TX bezeichnet.
-
Vorzugsweise wird die erwartete Eigenschaft auf Basis eines Modells bestimmt, das ein Kommunikationsverhalten von Netzwerkteilnehmern modelliert. Das Modell modelliert das Kommunikationsverhalten. In einem Fahrzeug ist das Modell abhängig von Wissen über das Fahrzeug definiert.
-
Vorzugsweise wird ein Maß für eine Schwere der Anomalie abhängig von der Eigenschaft des Kommunikationsverhaltens des wenigstens einen Netzwerkteilnehmers, der erwarteten Eigenschaft und/oder der Abweichung bestimmt, wobei abhängig von der Schwere der Anomalie eine Reaktion bestimmt wird. Damit ist eine Reaktion abhängig von dem Ergebnis der Anomalieerkennung besonders gut bestimmbar.
-
Besonders vorteilhaft ist es, wenn die Reaktion abhängig von der Schwere der Anomalie aus einer Vielzahl definierter Reaktionen ausgewählt. Für das Fahrzeug sind beispielsweise Reaktionen abhängig von Wissen über das Fahrzeug definiert. Von diesen Reaktionen wird die für die jeweilige Schwere der Anomalie am besten geeignete Reaktion ausgewählt und umgesetzt. Dies verbessert die Betriebssicherheit des Fahrzeugs signifikant.
-
Vorzugsweise ist vorgesehen, dass die Reaktion eine Meldung an eine zentrale Stelle, ein Verwerfen eines Datenpakets insbesondere einer der Nachrichten und/oder ein Übergang des Kommunikationsnetzwerks in einen sicheren Zustand umfasst. Damit wird eine angemessene Reaktion ausgelöst.
-
Vorzugsweise ist das Modell abhängig von Information über einen statischen Teil des Kommunikationsnetzwerks, insbesondere eine statische Netzwerkarchitektur vorzugsweise eines Fahrzeugs, definiert, wobei die erwartete Eigenschaft abhängig von Information über den statischen Teil des Kommunikationsnetzwerks, insbesondere die statischen Netzwerkarchitektur definiert ist.
-
Vorzugsweise ist vorgesehen, dass die erwartete Eigenschaft ein Verhältnis zwischen einer ersten Datenmenge und einer zweiten Datenmenge insbesondere in einem definierten Zeitraum ausgetauschter Daten, definiert, wobei erste Datenpakete oder Nachrichten, deren Absender ein erster Netzwerkteilnehmer und deren Empfänger ein zweiter Netzwerkteilnehmer ist, die erste Datenmenge definiert, und wobei zweite Datenpakete oder Nachrichten, deren Absender der zweite Netzwerkteilnehmer und deren Empfänger der erste Netzwerkteilnehmer ist, die zweite Datenmenge definiert. Zum Beispiel wird durch ein Systemwissen vorgegeben, dass zwischen einem ersten Steuergerät ECU_A und einem zweiten Steuergerät ECU_B ein Verhältnis der ersten Datenmenge zur zweiten Datenmenge 3:1 betragen soll. Falls nun detektiert wird, dass in einer bestimmten Zeitperiode dieses Verhältnis 10:1 ist, so beträgt die Abweichung im Beispiel 7. Wenn die zulässige Abweichung beispielsweise 4 beträgt, würde in diesem Beispiel die Abweichung diese zulässige Abweichung überschreiten. Damit würde in diesem Fall eine Anomalie erkannt. Wenn die zulässige Abweichung beispielsweise 8 beträgt, würde in diesem Fall keine Anomalie erkannt.
-
Vorzugsweise wird während der Anomalieerkennung zwischen verschiedenen Systemzuständen unterscheiden, in denen sich das Fahrzeug befindet, insbesondere zwischen den Systemzuständen, Zündung an, Motor läuft im Leerlauf, Vorwärtsfahrt, Rückwärtsfahrt, oder Fahrzeugdiagnose wird durchgeführt, wobei ein Systemzustand des Fahrzeugs bestimmt wird, und wobei die erwartete Eigenschaft abhängig von dem Systemzustand bestimmt wird. Diese Unterscheidung ist besonders sinnvoll, wenn sich das Verhalten des Netzwerkverkehrs zwar in verschiedenen Systemzuständen signifikant unterscheiden kann, aber der Netzwerkverkehr im gleichen Systemzustand in einer Weise einheitlich ist. Dann ist der Netzwerkverkehr durch seine wesentlichen Eigenschaften modellierbar. Beispielsweise wird für unterschiedliche Systemzustände eine unterschiedliche zulässige Abweichung vorgegeben.
-
In einem Aspekt wird zu synchronen oder asynchronen Zeitpunkten ein Maß für die Abweichung bestimmt, und ein Vergleich des Maßes für die Abweichung mit einem Schwellwert durchgeführt wird, der die zulässige Abweichung definiert. Das Maß kann die zuvor beschriebene Abweichung des Verhältnisses von dem durch Systemwissen erwarteten Verhältnis der Datenmengen sein. In diesem Fall kann der Schwellwert die numerische Angabe der zulässigen Abweichung angeben. Vergleiche zu synchronen Zeitpunkten können beispielsweise in regelmäßigen zeitlichen Abständen durchgeführt werden. Asynchrone Überwachungen können beispielsweise nach Analyse einer festen Anzahl an Datenpaketen durchgeführt werden.
-
In einem Aspekt definiert das Modell die erwartete Eigenschaft abhängig von einem vorgegebenen Ablauf eines im Kommunikationsnetzwerk verwendeten Netzwerkprotokolls. Anstelle oder zusätzlich zum Systemzustand ist damit eine unterschiedliche Behandlung für unterschiedliche Protokolle möglich. Damit können in bezüglich der Betriebssicherheit des Fahrzeugs unkritischeren Protokollen höhere Abweichungen toleriert werden als in diesbezüglich sicherheitsrelevanten Protokollen.
-
Vorzugsweise ist vorgesehen, dass das Modell eine insbesondere durch einen Zähler oder Leaky-Bucket Mechanismus aggregierten Maßzahl zum Datenverkehr, insbesondere pro letzte Zeiteinheiten und/oder pro Kommunikationsteilnehmer, definiert, insbesondere, eine Anzahl der übertragenen Datenpakete, eine Durchschnittliche Größe der übertragenen Datenpakete, eine Durchschnittliche Anzahl der Netzwerkverbindungen, eine Durchschnittliche Datenmenge pro Netzwerkverbindung, eine Anzahl der abgebrochenen Netzwerkverbindungen, eine Antwortzeit, oder ein Verhältnis zwischen gesendeten und empfangenen Daten. Dabei können diese Maßzahlen für verschiedene Dimensionen berechnet werden. Zwei beispielhaft verwendbare Dimensionen sind pro x letzte Zeiteinheiten und/oder pro Kommunikationsteilnehmer. Für das Zählen pro Zeiteinheiten ist die Verwendung eines Zählers ein vorteilhafter Mechanismus, um zu bestimmen wann eine Maßzahl zu hoch ist, wobei beispielsweise gezählt wird, wie oft ein bestimmtes Ereignis auftritt. Ein weiterer Mechanismus ist der Leaky-Bucket-Mechanismus, der einen Leaky-Bucket-Counter verwendet. Dieser Counter hat den Vorteil, dass im Gegensatz zu einem Zähler ein temporärer Anstieg in der Maßzahl über einen gewissen Zeitraum tolerieren wird. Dadurch wird, wenn eine Netzwerkaktivität als Maßzahl verwendet wird, nicht sofort durch beispielsweise temporär vermehrte Netzwerkaktivität eine Anomalie detektiert.
-
Vorzugsweise ist vorgesehen, dass die Abweichung abhängig von Information über ein von einem Netzwerkteilnehmer verwendeten Netzwerkprotokoll bestimmt wird, insbesondere abhängig von einem der Netzwerkprotokolle Ethernet, IPv4/IPv6, TCP/UDP, SOME/IP, DDS, DolP und AVB. Diese Unterscheidung ermöglicht eine Berücksichtigung protokollspezifischer Unterschiede.
-
Eine Vorrichtung zur Anomalieerkennung in einem Kommunikationsnetzwerk sieht vor, dass die Vorrichtung einen Port und eine Recheneinrichtung umfasst, die ausgebildet sind, das Verfahren auszuführen.
-
Weitere vorteilhafte Ausführungsformen ergeben sich aus der folgenden Beschreibung und der Zeichnung. In der Zeichnung zeigt
- 1 eine schematische Darstellung eines Kommunikationsnetzwerks in einem Fahrzeug,
- 2 eine schematische Darstellung eines Anomalieerkennungssystems für das Kommunikationsnetzwerk,
- 3 Schritte in einem Verfahren zur Anomalieerkennung in dem Kommunikationsnetzwerk.
-
1 stellt ein Kommunikationsnetzwerks 100 in einem Fahrzeug 102 schematisch dar. Das Kommunikationsnetzwerk 100 umfasst einen ersten Netzwerkteilnehmer 104, einen zweiten Netzwerkteilnehmer 106 und ein Verbindungselement 108. Das Verbindungselement 108 ist beispielsweise ein Switch, insbesondere ein Automotive-Ethernet-Switch. Das Verbindungselement 108 umfasst wenigstens einen Port 110, insbesondere einen Hardware-Port. Dieser wird auch als Hardware-Switch-Port bezeichnet. In 1 sind schematisch zwei Ports 110 dargestellt, es können auch mehr oder weniger Ports 110 vorgesehen sein. Das Verbindungselemente 108 ist ausgebildet, an einem der Ports 110 eingehende Nachrichten zu verarbeiten. Diese Nachrichten können an diesem oder einem anderen Port 110 ausgegeben oder verworfen werden. Das Verbindungselement 108 umfasst eine Recheneinrichtung 112, die ausgebildet ist die Nachrichten zu verarbeiten. Die Recheneinrichtung 112 kann als Teil der Switch-Hardware 114 implementiert sein. Die Recheneinrichtung 112 kann verteilt angeordnet sein, insbesondere auf einen Teil der Switch-Hardware 114 und einen Mikrocontroller 116 der mit diesem Teil der Switch-Hardware 114 über eine Datenleitung 118 verbunden oder verbindbar ist.
-
Eine im Folgenden genauer beschriebene Vorrichtung zur Anomalieerkennung umfasst den Port 110 und die Recheneinrichtung 112. Die Vorrichtung stellt zumindest einen Teil eines in 2 schematisch dargestellten Anomalieerkennungssystems 200 für das Kommunikationsnetzwerk 100 dar. Dieses wird im Folgenden als Network Intrusion Detection and Prevention System, NIDPS, bezeichnet.
-
Das NIDPS 200 umfasst ein Modell 202 für erwartetes Netzwerkverhalten. Das Modell 202 modelliert im Beispiel das erwartete Netzwerkverhalten pro Port 110, im Beispiel pro Ethernet Port. Es kann auch das Netzwerkverhalten zwischen zwei Netzwerkteilnehmern, insbesondere dem ersten Netzwerkteilnehmer 104 und dem zweiten Netzwerkteilnehmer 106 modelliert sein. Das Modell 202 basiert im Beispiel auf Systemwissen über das Kommunikationsnetzwerk 100. Das Systemwissen betrifft beispielsweise eine Topologie des Kommunikationsnetzwerks 100 oder Information über den Datenaustausch zwischen Netzwerkteilnehmern im Kommunikationsnetzwerk 100
-
Das NIDPS 200 umfasst einen Beobachter 204 für beobachtetes Netzwerkverhalten. Der Beobachter 204 beobachtet im Beispiel das erwartete Netzwerkverhalten pro Port 110, im Beispiel pro Ethernet Port. Es kann auch das Netzwerkverhalten zwischen zwei Netzwerkteilnehmern, insbesondere dem ersten Netzwerkteilnehmer 104 und dem zweiten Netzwerkteilnehmer 106 beobachtet werden.
-
Das NIDPS 200 umfasst eine Vorgabeeinrichtung 206, die im Beispiel ausgebildet ist, eine zulässige Abweichung vorzugeben. Die zulässige Abweichung kann statisch oder abhängig von einem Systemzustand vorgegeben sein. Für unterschiedliche Netzwerkteilnehmer oder unterschiedliches Netzwerkverhalten können unterschiedliche zulässige Abweichungen vorgegeben sein.
-
Das NIDPS 200 umfasst einen ersten Eingang 208 für einen Systemzustand. Das NIDPS 200 kann am ersten Eingang 208 auch ausgebildet sein, Information über den Systemzustand empfangen, und den Systemzustand abhängig von dieser Information bestimmen. In diesem Fall kann vorgesehen sein, dass die Vorgabeeinrichtung 206 die zulässige Abweichung abhängig vom Systemzustand bestimmt und/oder vorgibt.
-
Das NIDPS 200 umfasst einen zweiten Eingang 210 für Datenpakete. Die Datenpakete werden im Beispiel vom Port 110 an den zweiten Eingang 210 übermittelt.
-
Das NIDPS 200 umfasst einen ersten Ausgang 212 für Information über ein Ergebnis der Anomalieerkennung. Im Beispiel wird Information über eine Anomalie, d.h. Angaben zu deren Art oder ein Maß für deren Schwere ausgegeben. Es kann auch weitere Zusatzinformation oder Information zum Auslösen einer Reaktion auf die Anomalie ausgegeben werden. Es kann auch eine Ausgabe eines Zustands der Anomalieerkennung vorgesehen sein, der angibt, ob eine Anomalie vorliegt oder nicht.
-
Das NIDPS 200 kann einen zweiten Ausgang 214 für Datenpakete umfassen. Das NIDPS 200 kann ausgebildet sein, die Datenpakete am zweiten Ausgang 214 für eine Weiterleitung im Kommunikationsnetzwerk 100 auszugeben. Das NIDPS 200 kann ausgebildet sein, ein Datenpaket nur dann zur Weiterleitung im Kommunikationsnetzwerk 100 auszugeben, wenn keine Anomalie erkannt wurde, und das Datenpaket anderenfalls zu verwerfen. Das NIDPS 200 kann ausgebildet sein, ein Datenpaket basierend auf dem Inhalt des Datenpakets zu analysieren, und das Datenpaket abhängig vom Ergebnis der Prüfung weiterzuleiten oder zu verwerfen. Das NIDPS 200 kann ausgebildet sein, am zweiten Ausgang statt dem Datenpaket selbst, ein Signal auszugeben, das die Weiterleitung des Datenpakets freigibt, oder das Verwerfen des Datenpakets auslöst.
-
Ein Verfahren zur Anomalieerkennung wird im Folgenden anhand der 3 beschrieben. Das Verfahren beginnt beispielsweise, wenn ein Signal 302 das NIDPS in einen Zustand 304 „aktiv“ versetzt. Im Zustand 304 „aktiv“ werden Nachrichten am Port 110 des Kommunikationsnetzwerks 100 beobachtet. Beispielsweise werden Datenpakete am Port 110, die den Nachrichten zugeordnet sind und/oder diese zumindest teilweise oder vollständig umfassen, empfangen und/oder beobachtet. Im Beispiel werden als Nachrichten Datenpakete gemäß dem Automotive-Ethernet Standard beobachtet.
-
In einem ersten Aspekt wird zu synchronen oder asynchronen Zeitpunkten in einem Schritt 306 in einen Zustand 308 „berechnen“ gewechselt.
-
In einem zweiten Aspekt wird, wenn eine X-te Nachricht empfangen wird in einem Schritt 310 in den Zustand 308 „berechnen“ gewechselt. X bezeichnet in einem Beispiel eine ganzzahlige Anzahl Nachrichten. Beispielsweise wird durch einen Zähler erfasst, wie viele Nachrichten seit dem letzten Wechsel in den Zustand 308 „berechnen“ beobachtet wurden, und nach dem Empfang von wenigstens zwei Nachrichten seit diesem Wechsel in den Zustand 308 „berechnen“ gewechselt.
-
Die Anzahl Nachrichten, die vor dem Wechsel beobachtet werden, ist im Beispiel 1 < X und kann insbesondere X=2, X=5 oder X=10 sein. Es kann vorgesehen sein, nur die Nachrichten zu beobachten, die von einem bestimmten Netzwerkteilnehmer empfangen werden, oder an einen bestimmten Netzwerkteilnehmer adressiert sind. Es können auch nur Nachrichten eines bestimmten Nachrichtentyps oder mit einem bestimmten Nachrichtenprotokoll ausgetauschte Nachrichten für die Bestimmung der Anzahl X beobachtet werden.
-
Im Zustand 308 „berechnen“ wird eine Eigenschaft eines Kommunikationsverhaltens eines Netzwerkteilnehmers oder mehrere Netzwerkteilnehmer abhängig von wenigstens zwei Nachrichten bestimmt. Anschließend wird eine Abweichung der Eigenschaft von einer erwarteten Eigenschaft bestimmt.
-
Die erwartete Eigenschaft definiert ein Kommunikationsverhalten wenigstens eines Netzwerkteilnehmers abhängig von einer insbesondere statischen Netzwerkarchitektur des Kommunikationsnetzwerks 100.
-
Die erwartete Eigenschaft wird beispielsweise auf Basis des Modells 202 bestimmt das das Kommunikationsverhalten von Netzwerkteilnehmern modelliert.
-
Das Modell 202 ist in einem Aspekt abhängig von Information über einen statischen Teil des Kommunikationsnetzwerks 100 definiert. Insbesondere kann durch das Modell 202 eine statische Netzwerkarchitektur des Fahrzeugs vorgegeben sein. Die erwartete Eigenschaft wird in diesem Fall abhängig von Information über den statischen Teil des Kommunikationsnetzwerks 100, insbesondere die statischen Netzwerkarchitektur definiert.
-
Das Modell 202 definiert in einem Aspekt die erwartete Eigenschaft abhängig von einem vorgegebenen Ablauf eines im Kommunikationsnetzwerk 100 verwendeten Netzwerkprotokolls.
-
Beispielsweise wird ein Maß für die Abweichung bestimmt und ein Vergleich des Maßes für die Abweichung mit einem Schwellwert durchgeführt, der die zulässige Abweichung definiert.
-
Beispielsweise wird das Maß für die Abweichung im ersten Aspekt für die synchronen oder asynchronen Zeitpunkte bestimmt, und ein Vergleich des Maßes für die Abweichung mit dem Schwellwert durchgeführt, der die zulässige Abweichung definiert.
-
Beispielsweise wird im zweiten Aspekt nach dem Empfang der X-ten Nachricht der Vergleich des Maßes für die Abweichung mit dem Schwellwert durchgeführt, der die zulässige Abweichung definiert.
-
In dem in 1 dargestellten Beispiel definieren erste Datenpakete oder Nachrichten, deren Absender der erste Netzwerkteilnehmer 104 und deren Empfänger der zweite Netzwerkteilnehmer 106 ist, eine erste Datenmenge. Zweite Datenpakete oder Nachrichten, deren Absender der zweite Netzwerkteilnehmer 106 und deren Empfänger der erste Netzwerkteilnehmer 104 ist, definieren eine zweite Datenmenge.
-
Die erwartete Eigenschaft definiert in diesem Beispiel ein Verhältnis zwischen der ersten Datenmenge und der zweiten Datenmenge. Das Verhältnis wird insbesondere abhängig von Daten bestimmt, die in einem definierten Zeitraum ausgetauscht werden. Information über das Verhältnis wird beispielsweise durch beobachten ausgetauschter Daten im Kommunikationsnetzwerk 100 bestimmt.
-
Beispielsweise wird eines der Netzwerkprotokolle Ethernet, IPv4/IPv6, TCP/UDP, SOME/IP, DDS, DolP und AVB eingesetzt. Die Anzahl X und die Datenmengen werden beispielsweise abhängig von Nachrichten bestimmt, die gemäß einem dieser Netzwerkprotokolle übertragen werden. Die zulässige Abweichung beispielsweise des Verhältnisses wird in diesem Fall abhängig von Information über das dafür verwendete Netzwerkprotokoll bestimmt.
-
Das Modell 202 verwendet beispielsweise einen Zähler oder Leaky-Bucket Mechanismus, der eine Maßzahl zum Datenverkehr aggregiert. Beispielsweise wird pro letzte Zeiteinheiten und/oder pro Kommunikationsteilnehmer aggregiert.
-
Es kann vorgesehen sein, für den Datenverkehr im Kommunikationsnetzwerk 100 eine Anzahl der übertragenen Datenpakete, eine durchschnittliche Größe der übertragenen Datenpakete, eine Durchschnittliche Anzahl der Netzwerkverbindungen, eine Durchschnittliche Datenmenge pro Netzwerkverbindung, eine Anzahl der abgebrochenen Netzwerkverbindungen, eine Antwortzeit, oder ein Verhältnis zwischen gesendeten und empfangenen Daten zu aggregieren und ins Verhältnis zu einem dafür modellierten Größe zu setzten.
-
Das Vorliegen einer Anomalie wird erkannt, wenn die Abweichung von der zulässigen Abweichung abweicht. Die zulässige Abweichung wird mittels des Modells 202 abhängig von der erwarteten Eigenschaft bestimmt.
-
Wenn keine Anomalie erkannt wird, wird in einem Schritt 312 vom Zustand 308 „berechnen“ in den Zustand 304 „aktiv“ gewechselt.
-
Wenn eine Anomalie erkannt wird, wird in einem Schritt 314 vom Zustand 308 „berechnen“ in den Zustand 316 „antworten“ gewechselt.
-
Im Zustand 316 „antworten“ wird eine Reaktion auf eine erkannte Anomalie bestimmt. In einem Aspekt wird ein Maß für eine Schwere der Anomalie bestimmt und die Reaktion abhängig von der Schwere der Anomalie bestimmt. Beispielsweise wird das Maß für die Schwere der Anomalie abhängig von der Eigenschaft des Kommunikationsverhaltens des Netzwerkteilnehmers oder der Netzwerkteilnehmer, der erwarteten Eigenschaft und/oder der Abweichung bestimmt.
-
Im Beispiel wird die Reaktion abhängig von der Schwere der Anomalie aus einer Vielzahl definierter Reaktionen ausgewählt.
-
Die Reaktion kann eine Meldung an eine zentrale Stelle, ein Verwerfen eines Datenpakets insbesondere einer der Nachrichten und/oder ein Übergang des Kommunikationsnetzwerks 100 in einen sicheren Zustand umfassen. Die Reaktion wird beispielsweise durch eine Ausgabe am ersten Ausgang 212 des NIDPS ausgelöst.
-
Es kann vorgesehen sein, dass während der Anomalieerkennung zwischen verschiedenen Systemzuständen unterscheiden wird, in denen sich das Fahrzeug befindet. Beispielsweise werden folgende Systemzustände unterschieden: „Zündung an“, „Motor läuft im Leerlauf“, „Vorwärtsfahrt“, „Rückwärtsfahrt“, oder „Fahrzeugdiagnose wird durchgeführt“. Die Systemzustände werden beispielsweise über den ersten Eingang 208 bereitgestellt. Die zulässige Abweichung wird von der Vorgabeeinrichtung 206 abhängig von den Systemzuständen vorgegeben. Ein Systemzustand des Fahrzeugs kann auch abhängig von der Information am ersten Eingang 208 bestimmt werden. Die erwartete Eigenschaft wird in diesem Aspekt abhängig vom Systemzustand bestimmt. Beispielsweise wird gegenüber dem Zustand „Fahrzeugdiagnose wird durchgeführt“ eine geringere Abweichung zugelassen, wenn das Fahrzeug in einem der Zustände „Zündung an“, „Motor läuft im Leerlauf“, „Vorwärtsfahrt“, „Rückwärtsfahrt“ festgestellt wird.
-
Nach der Reaktion wird in einem Schritt 318 zum Zustand 304 „aktiv“ gewechselt.
-
Das Verfahren endet beispielsweise aufgrund eines entsprechenden Signals.