[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

DE102021116643A1 - Detektieren eines abnormalen can-bus-aktivierungsmusters - Google Patents

Detektieren eines abnormalen can-bus-aktivierungsmusters Download PDF

Info

Publication number
DE102021116643A1
DE102021116643A1 DE102021116643.8A DE102021116643A DE102021116643A1 DE 102021116643 A1 DE102021116643 A1 DE 102021116643A1 DE 102021116643 A DE102021116643 A DE 102021116643A DE 102021116643 A1 DE102021116643 A1 DE 102021116643A1
Authority
DE
Germany
Prior art keywords
vehicle system
time
vehicle
ecu
bus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102021116643.8A
Other languages
English (en)
Inventor
Yu Seung Kim
Byungho CHA
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ford Global Technologies LLC
Original Assignee
Ford Global Technologies LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ford Global Technologies LLC filed Critical Ford Global Technologies LLC
Publication of DE102021116643A1 publication Critical patent/DE102021116643A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R25/00Fittings or systems for preventing or indicating unauthorised use or theft of vehicles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R25/00Fittings or systems for preventing or indicating unauthorised use or theft of vehicles
    • B60R25/20Means to switch the anti-theft system on or off
    • B60R25/2063Ignition switch geometry
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • B60R16/0231Circuits relating to the driving or the functioning of the vehicle
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R25/00Fittings or systems for preventing or indicating unauthorised use or theft of vehicles
    • B60R25/10Fittings or systems for preventing or indicating unauthorised use or theft of vehicles actuating a signalling device
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R25/00Fittings or systems for preventing or indicating unauthorised use or theft of vehicles
    • B60R25/30Detection related to theft or to other events relevant to anti-theft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B21/00Alarms responsive to a single specified undesired or abnormal condition and not otherwise provided for
    • G08B21/18Status alarms
    • G08B21/182Level alarms, e.g. alarms responsive to variables exceeding a threshold
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/12Arrangements for remote connection or disconnection of substations or of equipment thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Emergency Management (AREA)
  • Business, Economics & Management (AREA)
  • General Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • Environmental & Geological Engineering (AREA)
  • Small-Scale Networks (AREA)

Abstract

Diese Offenbarung stellt ein Detektieren eines abnormalen CAN-Bus-Aktivierungsmusters bereit. Techniken zur Verwendung eines Detektors, der an einen Controller-Area-Network(CAN)-Bus eines Fahrzeugsystems gekoppelt ist, zum Identifizieren und Generieren von Warnmeldungen als Reaktion auf Aktivierungsangriffe auf das Fahrzeugsystem. Die Techniken beinhalten, dass eine elektronische Steuereinheit (ECU) eine Aktivierungsnachricht über den CAN-Bus sendet, die durch den Detektor detektiert wird. Der Detektor beinhaltet einen Speicher und einen Prozessor zum Identifizieren des Zeitstempels der Aktivierungsnachricht bei abgeschalteter Fahrzeugzündung. Der Detektor bestimmt eine Gesamtbetriebszeit für die ECU über einen Beobachtungszeitraum hinweg und generiert eine Benachrichtigung über eine Aktivierungsanomalie, wenn die Gesamtbetriebszeit über den Beobachtungszeitraum hinweg einen vorher festgelegten Schwellenwert überschreitet.

Description

  • GEBIET DER TECHNIK
  • Die Offenbarung betrifft im Allgemeinen elektronische Fahrzeugsysteme und insbesondere elektronische Steuereinheiten von Fahrzeugen.
  • ALLGEMEINER STAND DER TECHNIK
  • Moderne Fahrzeuge beinhalten ein internes Netzwerk, das mehr als einhundert elektronische Steuereinheiten (Electronic Control Units - ECUs) beinhaltet, die Merkmale und Funktionen des Fahrzeugs, einschließlich Sicherheit, Diagnose, Komfort und Infotainment, steuern. Die ECUs kommunizieren miteinander und mit anderen Fahrzeugcomputersystemen über einen Controller-Area-Network(CAN)-Bus. Der CAN-Bus wickelt die gesamte Kommunikation in einem Fahrzeugsystem ab und wird durch desynchronisierte ECUs stark beeinflusst. Des Weiteren stellt der CAN-Bus eine der am weitesten verbreiteten Bustechnologien in Gebrauch dar und ist ein primäres Ziel für Angriffe. Aktivierungsangriffe können dazu führen, dass ECUs wiederholt aktiviert werden und Nachrichten über den CAN-Bus generieren, ohne dass das Fahrzeugsystem gestartet wird, was die Batterie des Fahrzeugsystems entleert und dazu führt, dass die Fahrzeugbatterie nicht in der Lage ist, das Fahrzeugsystem zu starten oder mit Leistung zu versorgen.
  • KURZDARSTELLUNG
  • Ein System aus einem oder mehreren Computern kann dazu konfiguriert sein, bestimmte Vorgänge oder Handlungen durchzuführen, indem auf dem System Software, Firmware, Hardware oder eine Kombination daraus installiert ist, die bei Betrieb das System dazu veranlasst, die Handlungen durchzuführen. Ein oder mehrere Computerprogramme können dazu konfiguriert sein, konkrete Vorgänge oder Handlungen durchzuführen, indem sie Anweisungen beinhalten, die bei Ausführung durch eine Datenverarbeitungsvorrichtung die Vorrichtung dazu veranlassen, die Handlungen durchzuführen. Ein allgemeiner Aspekt beinhaltet ein Fahrzeugsystem, das einen Controller-Area-Network(CAN)-Bus, eine elektronische Steuereinheit (ECU), die kommunikativ mit dem CAN-Bus gekoppelt ist, und einen Detektor, der kommunikativ mit dem CAN-Bus gekoppelt ist, beinhaltet. Der Detektor beinhaltet einen nichtflüchtigen Speicher, einen CAN-Sendeempfänger, eine CAN-Steuerung und einen Mikrocontroller, der einen Speicher beinhaltet, auf dem Anweisungen gespeichert sind, die bei Ausführung durch einen oder mehrere Prozessoren des Mikrocontrollers den einen oder die mehreren Prozessoren dazu veranlassen, verschiedene Vorgänge durchzuführen. Die Vorgänge beinhalten ein Empfangen einer Nachricht von der ECU, die zu einem ersten Zeitpunkt über den CAN-Bus kommuniziert wird, und ein Speichern eines dem ersten Zeitpunkt entsprechenden Aktivierungszeitpunkts in dem nichtflüchtigen Speicher. Die Vorgänge beinhalten ein Bestimmen einer Gesamtbetriebszeit für die ECU über einen Beobachtungszeitraum hinweg durch Summieren aller Betriebszeiten über den Beobachtungszeitraum hinweg. Die Vorgänge beinhalten zudem ein Generieren einer Aktivierungsanomaliebenachrichtigung auf Grundlage einer Bestimmung, dass ein Prozentsatz der Gesamtbetriebszeit über den Beobachtungszeitraum hinweg einen vorher festgelegten Schwellenwert überschreitet.
  • Umsetzungen können eines oder mehrere der folgenden Merkmale beinhalten. Das Bestimmen der Gesamtbetriebszeit für die ECU wird als Reaktion darauf durchgeführt, dass bestimmt wird, dass eine Differenz zwischen einem gegenwärtigen Zeitpunkt und einem Ruhezeitpunkt der ECU über einer Schwellenwertdifferenz liegt. Die Schwellenwertdifferenz kann weniger als einhundert Millisekunden betragen. Die Anweisungen beinhalten weitere Anweisungen, die bei Ausführung durch den einen oder die mehreren Prozessoren den einen oder die mehreren Prozessoren dazu veranlassen, als Reaktion darauf, dass bestimmt wird, dass eine Differenz zwischen einem gegenwärtigen Zeitpunkt und einem Ruhezeitpunkt der ECU innerhalb einer Schwellenwertdifferenz liegt, einen Ruhezeitpunkt in dem nichtflüchtigen Speicher zu speichern. Die Anweisungen beinhalten weitere Anweisungen zum Bestimmen, dass eine Zündung des Fahrzeugsystems derzeit nicht aktiv ist, auf Grundlage eines Fahrzeugschlüssels. Der Fahrzeugschlüssel kann einen Funkschlüssel beinhalten und das Bestimmen, dass die Zündung des Fahrzeugsystems derzeit nicht aktiv ist, auf Grundlage des Fahrzeugschlüssels beinhaltet ein Bestimmen, dass der Funkschlüssel nicht innerhalb einer Kabine des Fahrzeugsystems detektiert wird. Das Bestimmen, dass die Zündung des Fahrzeugsystems derzeit nicht aktiv ist, auf Grundlage des Fahrzeugschlüssels kann ein Bestimmen, dass der Fahrzeugschlüssel nicht in der Zündung des Fahrzeugsystems steckt, beinhaltet. Der Detektor kann sich in einem Gateway des CAN-Busses befinden. Das Fahrzeugsystem kann eine Vielzahl von CAN-Bussen und eine Vielzahl von Detektoren beinhalten und wobei ein Detektor an jeden der Vielzahl von CAN-Bussen gekoppelt ist. Der vorher festgelegte Schwellenwert kann ein Wert größer als 50 % sein. Umsetzungen der beschriebenen Techniken können Hardware, ein Verfahren oder einen Prozess oder Computersoftware auf einem Medium, auf das der Computer zugreifen kann, beinhalten.
  • Figurenliste
  • Ein tieferes Verständnis des Wesens und der Vorteile verschiedener Ausführungsformen kann unter Bezugnahme auf die folgenden Figuren erreicht werden. In den beigefügten Figuren können ähnliche Komponenten oder Merkmale das gleiche Bezugszeichen aufweisen. Ferner können verschiedene Komponenten der gleichen Art dadurch unterschieden werden, dass dem Bezugszeichen ein Strich und eine zweite Kennzeichnung folgt, die zwischen den ähnlichen Komponenten unterscheidet. Wenn in der Beschreibung nur das erste Bezugszeichen verwendet wird, gilt die Beschreibung für jede beliebige der ähnlichen Komponenten, die das gleiche erste Bezugszeichen aufweisen, unabhängig von dem zweiten Bezugszeichen.
    • 1 veranschaulicht ein Ablaufdiagramm, das einen Prozess zum Detektieren abnormaler Aktivierungsmuster in einem CAN-Bus eines Fahrzeugsystems abbildet, gemäß einigen Ausführungsformen.
    • 2 veranschaulicht ein vereinfachtes Zeitskalendiagramm, das ein schädliches Aktivierungsmuster abbildet, gemäß einigen Ausführungsformen.
    • 3 veranschaulicht ein vereinfachtes Diagramm, das einen Einsatz von Detektoren in einem Fahrzeug-CAN-Bus veranschaulicht, gemäß einigen Ausführungsformen.
    • 4 veranschaulicht ein vereinfachtes Diagramm, das Komponenten eines Detektors veranschaulicht, gemäß einigen Ausführungsformen.
    • 5 veranschaulicht ein Verfahren zum Detektieren und Generieren von Warnmeldungen für abnormale Aktivierungsmuster gemäß einigen Ausführungsformen.
    • 6 veranschaulicht ein Blockdiagramm eines Fahrzeugsystems gemäß einigen Ausführungsformen.
    • 7 veranschaulicht ein Blockdiagramm eines Rechensystems gemäß einigen Ausführungsformen.
  • DETAILLIERTE BESCHREIBUNG
  • Moderne Fahrzeuge beinhalten viele elektronische Steuereinheiten (ECUs), die miteinander und mit einem Fahrzeugrechensystem kommunizieren. Die ECUs kommunizieren miteinander über einen Controller-Area-Network(CAN)-Bus. Wenn ein Fahrzeug abgeschaltet wird, wird der Großteil der Komponenten in dem Fahrzeug, einschließlich der meisten ECUs, abgeschaltet, um ein Entleeren der Batterie zu vermeiden. Einige Komponenten können im Standby-Modus bleiben, um zum Beispiel Signale zum Fernstarten oder Fernentriegeln des Fahrzeugs zu empfangen. Einige oder alle dieser ECUs können als Reaktion auf unterschiedliche empfangene Signale vorübergehend eingeschaltet werden und Kommunikation über den CAN-Bus kann andere ECUs ebenfalls aktivieren. In einigen Fällen kann ein Angreifer in der Lage sein, die Aktivierungsfunktion der ECUs auszunutzen, wenn Fernzugriff auf den CAN-Bus möglich ist, um ECUs in Kommunikation mit dem CAN-Bus wiederholt zu aktivieren und die Batterie des Fahrzeugs zu entleeren, wodurch unter Umständen das Fahrzeug vorübergehend nicht betreibbar ist, bis die Batterie wiederaufgeladen oder ersetzt werden kann.
  • Der Batterieverbrauch eines Fahrzeugs kann direkt gemessen werden, indem ein Ladezustand (state of charge - SOC) der Fahrzeugbatterie in der Regel mit einer eigens dafür entwickelten Vorrichtung überprüft wird; eine Vorrichtung zum Messen des SOC kann jedoch ebenfalls eine Energiequelle erfordern und nicht immer möglich sein. Die nachstehend beschriebenen Systeme und Verfahren ermöglichen die Detektion einer Aktivierungsanomalie bei abgeschalteter Zündung eines Fahrzeugs. Der Detektor und die zugehörigen Verfahren, die in dieser Schrift beschrieben sind, können in einem CAN-Bus, einem Gateway oder einem anderen Kommunikationssystem eines Fahrzeugs eingesetzt werden, um abnormale Aktivierungsmuster zu detektieren und zu melden und auf Aktivierungsangriffe auf Fahrzeugsysteme zu reagieren.
  • Wenn der Detektor durch eine über den CAN-Bus kommunizierte Nachricht aktiviert wird, prüft der Detektor den Status der Zündung des Fahrzeugs. Wenn die Zündung abgeschaltet ist, zeichnet der Detektor den Aktivierungszeitpunkt in einem separaten, nichtflüchtigen Speicher auf. Bevor er in einen Ruhemodus wechselt, empfängt ein CAN-Sendeempfänger den Ruhezeitpunkt der aktivierten ECU und ein Mikrocontroller des Detektors zeichnet den Ruhezeitpunkt im Speicher auf. Während der Aktivierungszeiträume überwacht der Detektor die Gesamtbetriebszeit der ECU, die das Aktivierungssignal empfangen hat, während eines Beobachtungszeitraums. Wenn die Gesamtbetriebszeit über den Beobachtungszeitraum hinweg einen vorher festgelegten Schwellenwert überschreitet (z. B. als Prozentsatz der Gesamtzeit in dem Beobachtungszeitraum gemessen), bestimmt der Detektor, dass ein Aktivierungsangriff auf das Fahrzeug vorliegt, was die Batterie entleeren (d. h. entladen) kann.
  • Die in dieser Schrift beschriebenen Systeme und Verfahren können verwendet werden, um die Robustheit eines Fahrzeugsystems gegenüber Aktivierungsangriffen zu verbessern, indem mögliche Angriffe identifiziert und die Aktivität gemeldet oder entsprechend reagiert wird. Die Robustheit des Fahrzeugsystems wird verbessert, ohne dass die Qualität oder Geschwindigkeit der Nachrichtenkommunikation über den CAN-Bus reduziert wird.
  • Nun ist unter Bezugnahme auf 1 ein Ablaufdiagramm 100, das einen logischen Ablauf zum Detektieren abnormaler Aktivierungsmuster in einem CAN-Bus eines Fahrzeugsystems abbildet, gemäß einigen Ausführungsformen abgebildet. Das Ablaufdiagramm 100 kann einen Prozess darstellen, der durch einen Detektor eines Fahrzeugsystems (z. B. den Detektor 308, wie er unter Bezugnahme auf die 3 und 4 beschrieben ist) durchgeführt wird, zum Beispiel beim Empfangen einer Nachricht von einer ECU oder einem anderen Element über den CAN-Bus des Fahrzeugsystems (z. B. den CAN-Bus 302 oder 304, wie er unter Bezugnahme auf 3 beschrieben ist). Das Ablaufdiagramm 100 kann in computerlesbaren Anweisungen beschrieben sein, die auf einer Speichervorrichtung gespeichert sind und durch einen oder mehrere Prozessoren (z. B. den Mikrocontroller 354, wie er unter Bezugnahme auf 4 beschrieben ist) ausgeführt werden. In einigen Beispielen kann das Ablaufdiagramm 100 gemäß einigen Ausführungsformen durch andere Elemente des Fahrzeugsystems, wie etwa eine Rechenvorrichtung oder ECU des Fahrzeugs, durchgeführt werden.
  • Das Ablaufdiagramm 100 beginnt bei 102, wo der Detektor ein über den CAN-Bus kommuniziertes Aktivierungssignal empfängt. Das Aktivierungssignal kann eine von einer ECU übermittelte Nachricht oder ein beliebiges anderes über den CAN-Bus kommuniziertes Signal sein. In einigen Beispielen kann das Aktivierungssignal ein spezielles Signal sein, das die Einleitung eines Startprozesses einer ECU angibt. In einigen Beispiel kann das Aktivierungssignal nur dann übermittelt werden, wenn eine ECU zum ersten Mal nach einer Ruhezeit oder Abschaltung des Fahrzeugsystems aktiviert oder initialisiert wird. Das Aktivierungssignal kann Anweisungen für andere ECUs beinhalten oder einfach eine Benachrichtigung über eine Aktivierung einer an den CAN-Bus gekoppelten Komponente bereitstellen.
  • Bei 104 bestimmt der Detektor, ob die Zündung des Fahrzeugs mit einem Schlüssel eingeschaltet wurde. In einigen Beispielen kann das Fahrzeugsystem bereits laufen, wobei eine ECU gestartet wird, nachdem das Fahrzeugsystem gestartet wurde; in derartigen Fällen kehrt das Ablaufdiagramm 100 zu 102 zurück, um das Ablaufdiagramm nach Bedarf erneut zu wiederholen. In einigen Beispielen kann das Fahrzeug mit einem Schlüssel in einer Zündung des Fahrzeugs gestartet werden und in einigen Fällen kann das Fahrzeug auf Grundlage der Anwesenheit eines Funkschlüssels in einer Kabine des Fahrzeugs gestartet oder initialisiert werden. In einigen Beispielen kann das Fahrzeug mit einer entfernten Vorrichtung, wie etwa einer mobilen Vorrichtung, einer Fernstartsteuerung oder einer anderen derartigen Vorrichtung, ferngestartet werden; der Detektor kann bei 104 bestimmen, ob das Fahrzeug unter Verwendung eines der vorstehenden oder anderer Verfahren gestartet wurde. Für den Fall, dass die Zündung nicht eingeschaltet ist (d. h. die Zündung abgeschaltet ist), geht das Ablaufdiagramm 100 zu 106 über. In einigen Beispielen kann der Detektor bei 104 über den CAN-Bus auf ein bestehendes schlüsselloses System zugreifen, um die Anwesenheit oder Verwendung eines Fahrzeugschlüssels zu detektieren.
  • Bei 106 zeichnet der Detektor einen auf dem bei 102 empfangenen Aktivierungssignal beruhenden Aktivierungszeitpunkt auf. Der Detektor speichert den Aktivierungszeitpunkt auf Grundlage eines Zeitstempels des Aktivierungssignals. Der Aktivierungszeitpunkt wird in einem nichtflüchtigen Speicher des Detektors gespeichert (z. B. dem Speicher 356 aus 4). In dem Detektor wird nichtflüchtiger Speicher verwendet, damit der Aktivierungszeitpunkt während heruntergefahrenen oder Abschaltzeiträumen bewahrt wird. Der Aktivierungszeitpunkt kann auf Grundlage einer Hauptuhr oder Zeitskala gespeichert werden, die durch eine Rechenvorrichtung des Fahrzeugsystems verwaltet wird. Die Hauptuhr kann durch eine oder mehrere ECUs oder das Gateway verwaltet oder bereitgestellt werden. Der Aktivierungszeitpunkt kann mit einer Angabe darüber, dass es sich um einen Aktivierungszeitpunkt handelt, und mit einer Angabe oder Daten darüber, welche ECU oder Komponente das Signal über den CAN-Bus übermittelt hat, gespeichert werden.
  • Bei 108 bestimmt oder empfängt der Detektor eine Angabe darüber, dass ein Ruhemodus der ECU, die das Aktivierungssignal bei 102 übermittelt hat, unmittelbar bevorsteht. Die Bestimmung bei 108 wird durch einen CAN-Sendeempfänger, wie etwa den CAN-Sendeempfänger 350 aus 4, durchgeführt und beinhaltet eine Bestimmung darüber, wann die ECU heruntergefahren werden wird. Der CAN-Sendeempfänger übermittelt diese Informationen zur Verarbeitung an den Mikrocontroller. In einigen Beispielen übermittelt die ECU selbst die Abschaltinformationen, die einen unmittelbar bevorstehenden oder bevorstehenden Ruhemodus der ECU beschreiben. Die ECU stellt dem CAN-Sendeempfänger Informationen darüber bereit, wann die ECU in eine Ruhephase eintreten wird. In einigen Beispielen kann der Detektor bestimmen, wann ein Zeitraum zwischen dem aktuellen Zeitpunkt und einem Ruhezeitpunkt für die ECU kürzer als eine Schwellenwertzeit ist. Die Schwellenwertzeit kann ein Zeitraum von mehreren bis mehreren hundert Millisekunden sein. Die Bestimmung bei 108 kann auf Grundlage dessen, ob die Ruhephase unmittelbar bevorsteht, iterativ oder wiederholt durchgeführt werden.
  • Für jede Iteration von 108 zeichnet der Detektor, wenn die Ruhephase unmittelbar bevorsteht, d. h. innerhalb eines Zeitraums von Millisekunden, bei 110 den Ruhezeitpunkt auf Grundlage der gleichen Zeitskala auf wie den Aktivierungszeitpunkt. Der Detektor zeichnet den Ruhezeitpunkt im Speicher auf und kann den Ruhezeitpunkt mit dem Aktivierungszeitpunkt koppeln oder verknüpfen, um eine Gesamtaktivierungszeit zwischen dem Aktivierungszeitpunkt und dem Ruhezeitpunkt, wie durch den Detektor aufgezeichnet, zu identifizieren.
  • Bei 112 befinden sich der Detektor und die ECU auf Grundlage des Ruhezeitpunkts bei 110 im Ruhemodus. Die ECU kann unabhängig herunterfahren oder auf Grundlage eines Signals von dem Fahrzeugrechensystem oder dem CAN-Sendeempfänger heruntergefahren werden. Der Detektor kann ebenfalls herunterfahren. In einigen Beispielen kann der Detektor ein Signal zum Herunterfahren der ECU, die bei 102 die Nachricht übermittelt hat, übermitteln und dadurch die Kommunikation über den CAN-Bus abschalten. Die ECU kann ohne eine Eingabe von dem Detektor in eine Ruhephase eintreten. In einigen Beispielen kann eine Telematiksteuereinheit (telematics control unit - TCU) ein Signal von außerhalb des Fahrzeugsystems empfangen und das Signal oder die Anweisungen an andere ECUs weiterleiten, um den Ruhemodus vorzubereiten.
  • Wenn die Ruhephase der ECU bei 108 nicht unmittelbar bevorsteht, geht das Ablaufdiagramm 100 zu 114 über. Bei 114 bestimmt der Detektor eine Gesamtbetriebszeit über einen Beobachtungszeitraum hinweg. Die Gesamtbetriebszeit identifiziert Aktivierungs- und entsprechende Ruhezeitpunkte für ECUs und addiert die Zeit zwischen den Aktivierungs- und Ruhezeitpunkten kumulativ für alle ECUs über den Beobachtungszeitraum hinweg. Diese Betriebszeitsummierung ist unter Bezugnahme auf 2 veranschaulicht.
  • Bei 116 vergleicht der Detektor die Gesamtbetriebszeit über den Beobachtungszeitraum hinweg mit einem vorher festgelegten Schwellenwert. Die Gesamtbetriebszeit über den Beobachtungszeitraum hinweg kann als Anzahl von Sekunden, Minuten, als Prozentsatz der Gesamtzeit oder als ein anderer Messwert wiedergegeben werden. In einigen Beispielen kann der vorher festgelegte Schwellenwert ein Prozentsatz sein, zum Beispiel fünfzig Prozent oder mehr des Beobachtungszeitraums. In derartigen Beispielen geht der Detektor, wenn die Gesamtbetriebszeit fünfzig Prozent des Zeitraums überschreitet, zu 118 über. Der Beobachtungszeitraum kann einige Sekunden, einige Minuten oder ein beliebiges geeignetes Zeitfenster betragen. In Fällen, in denen die Gesamtbetriebszeit den Schwellenwert nicht überschreitet, kehrt das Ablaufdiagramm 100 zu 108 zurück, um die Funktion bei 108 iterativ durchzuführen.
  • Bei 118 kann der Detektor, wenn die Gesamtbetriebszeit über den Beobachtungszeitraum hinweg den vorher festgelegten Schwellenwert überschreitet, eine Aktivierungsanomaliewarnmeldung oder -benachrichtigung generieren. Der Detektor kann diese Warnmeldung an eine Rechenvorrichtung des Fahrzeugsystems übermitteln, damit die Rechenvorrichtung als Reaktion darauf mildernde oder andere Maßnahmen ergreift. Zum Beispiel kann die Rechenvorrichtung eine Benachrichtigung an eine externe Rechenvorrichtung, wie etwa eine Cloud-Vorrichtung oder eine mobile Vorrichtung eines Besitzers des Fahrzeugs, übermitteln, um diesen über die Anomalie zu benachrichtigen. In einigen Beispielen kann die Rechenvorrichtung zudem auf die Warnmeldung reagieren, indem sie ECUs des Fahrzeugsystems abschaltet oder deren Aktivierung verhindert, bis ein Schlüsselanschaltsignal, wie etwa ein Schlüssel in der Zündung oder die Anwesenheit eines Funkschlüssels, detektiert wird.
  • 2 veranschaulicht ein vereinfachtes Zeitskalendiagramm 200, das ein schädliches Aktivierungsmuster abbildet, gemäß einigen Ausführungsformen. Das Zeitskalendiagramm 200 beinhaltet eine Zeitachse 202, die einen Kontext für den Zeitverlauf bereitstellt. Das Zeitskalendiagramm veranschaulicht Aktivierungs- und Ruhemuster für ECUs, wie sie durch einen Detektor detektiert werden, der kommunikativ mit dem CAN-Bus eines Fahrzeugs gekoppelt ist, wie etwa den Detektor 308, der unter Bezugnahme auf die 3 und 4 beschrieben ist.
  • Entlang der Zeitachse 202 findet sich eine Reihe von Aktivierungsereignissen 204 sowie eine Reihe von Ruheereignissen 206. Die Aktivierungsereignisse 204 stellen die Signale dar, die durch den Detektor detektiert werden, zum Beispiel bei 102 des Ablaufdiagramms 100. Die Ruheereignisse 206 entsprechen dem Eintreten von ECUs in eine Ruhephase entsprechend den bei 110 des Ablaufdiagramms 100 aufgezeichneten Ruheereignissen.
  • In dem in 2 gezeigten Beispiel kann ein Detektor wiederholte Aktivierungs- und Ruhesignale detektieren, die von einer oder mehreren ECUs über den CAN-Bus kommuniziert werden. Wie veranschaulicht, sind in dem Zeitskalendiagramm 200 nacheinander drei unterschiedliche Aktivierung-Ruhe-Ereignisse gezeigt. Wenngleich sie nacheinander gezeigt sind, können sich in einigen Beispielen die Aktivierung-Ruhe-Ereignisse, welche die Betriebszeit der ECUs definieren, überlappen, beispielsweise in Fällen, in denen mehrere ECUs gleichzeitig in Betrieb sind.
  • Ein Beobachtungszeitraum 214 ist durch den schattierten Kasten gezeigt, der einen Zeitraum identifiziert, über den hinweg der Detektor die Betriebszeit der ECUs mit der Länge des Beobachtungszeitraums 214 vergleicht, um Aktivierungsanomalien zu identifizieren. Der Beobachtungszeitraum 214 kann in einigen Beispielen weniger als eine Sekunde, mehrere Sekunden, einen Zeitraum von ein bis zwei Minuten oder bis zu einem Zeitraum von fünf oder mehr Minuten betragen. Der Beobachtungszeitraum 214 endet an einem aktuellen oder gegenwärtigen Zeitpunkt und der Detektor beobachtet oder überprüft Betriebsdaten über die Dauer des Beobachtungszeitraums 214 hinweg. Die Betriebszeit t1 identifiziert eine erste Betriebszeit 208 vom Beginn des Beobachtungszeitraums bis zum Ruhesignal 206 der aktiven ECU. Die Betriebszeit t2 identifiziert eine zweite Betriebszeit 210 von dem Aktivierungsereignis 204 bis zum Ruhesignal 206 der ECU zu einem zweiten Zeitpunkt. Die Betriebszeit t3 identifiziert eine dritte Betriebszeit 212 von dem Aktivierungsereignis 204 bis zum gegenwärtigen Zeitpunkt. Die Gesamtbetriebszeit wird durch Addieren der Betriebszeiten t1, t2 und t3 ermittelt. Die Gesamtbetriebszeit kann dann mit der Länge des Beobachtungszeitraums 214 verglichen werden, um einen Prozentsatz zu identifizieren, der den Prozentsatz der Betriebszeit für die ECUs über den Beobachtungszeitraum hinweg darstellt. Wie vorstehend beschrieben, kann der Prozentsatz bei 116 des Ablaufdiagramms 100 mit einem vorher festgelegten Schwellenwert verglichen werden, um Aktivierungsanomalien zu identifizieren, wenn der Prozentsatz der Betriebszeit einen vorher festgelegten Schwellenwert überschreitet.
  • 3 veranschaulicht ein vereinfachtes Diagramm, das einen Einsatz von Detektoren 308 in einem Fahrzeug-CAN-Bussystem 300 veranschaulicht, gemäß einigen Ausführungsformen. In einem Fahrzeugsystem, wie etwa dem unter Bezugnahme auf 6 beschriebenen Fahrzeugsystem 600, können eine oder mehrere ECUs 310 über einen ersten CAN-Bus 302, einen zweiten CAN-Bus 304 und ein Gateway 306 miteinander und mit anderen Komponenten des Fahrzeugsystems 600 kommunizieren. Wenngleich das Fahrzeug-CAN-Bussystem 300 mit einem einzelnen Gateway 306 und einem ersten CAN-Bus 302 sowie einem zweiten CAN-Bus 304 gezeigt ist, kann es nur einen CAN-Bus, mehr als zwei CAN-Busse oder zusätzliche Gateways in dem Fahrzeugsystem 600 geben. Das Fahrzeug-CAN-Bussystem 300 stellt Kommunikation zwischen verschiedenen Komponenten des Fahrzeugsystems 600 bereit. Jeder des ersten CAN-Busses 302 und des zweiten CAN-Busses 304 ist mit einem Detektor 308 ausgestattet, der Aktivierungssignale von der einen oder den mehreren mit dem Fahrzeug-CAN-Bussystem 300 verbundenen ECUs 310 detektiert. Die Detektoren 308 beinhalten Komponenten, die unter Bezugnahme auf 4 beschrieben sind, um die in den 1 und 5 beschriebenen Vorgänge durchzuführen. In einigen Beispielen kann das Gateway 306, das eine Verbindung zwischen dem ersten CAN-Bus 302 und dem zweiten CAN-Bus 304 bereitstellt, einen Detektor 308 beinhaltet, anstatt dass mehrere Detektoren 308 an jedem der jeweiligen CAN-Busse eingesetzt werden. In einigen Ausführungsformen kann das Gateway 306 einen Detektor 308 für jeden CAN-Bus 302, 304 beinhalten, an den das Gateway 306 gekoppelt ist. In Ausführungsformen mit mehreren Gateways 306 kann jedes Gateway 306 einen oder mehrere Detektoren 308 enthalten. Des Weiteren sind die ECUs 310 und die Detektoren 308 zwar in Reihe verbunden gezeigt, dient dies aber lediglich der Veranschaulichung, da der erste CAN-Bus 302 und der zweite CAN-Bus 304 Kommunikation zwischen allen mit ihnen verbundenen Elementen bereitstellen.
  • 4 veranschaulicht ein vereinfachtes Diagramm, das Komponenten eines Detektors 308 veranschaulicht, gemäß einigen Ausführungsformen. Der Detektor 308 beinhaltet einen CAN-Sendeempfänger 350, eine CAN-Steuerung 352, einen Mikrocontroller 354 und einen Speicher 356. Der CAN-Sendeempfänger 350 bildet eine Schnittstelle zwischen der CAN-Steuerung 352 und dem Mikrocontroller 354 und dem CAN-Bus 302. Der CAN-Sendeempfänger 350 empfängt Daten von dem CAN-Bus 302 und wandelt die Daten zur Verwendung durch die CAN-Steuerung 352 um. Zusätzlich wandelt der CAN-Sendeempfänger 350 Daten und Signale von der CAN-Steuerung 352 zur Kommunikation entlang des CAN-Busses 302 um. Der CAN-Sendeempfänger 350 empfängt die unter Bezugnahme auf 1 beschriebenen Aktivierungs- und Ruhesignale. Der Mikrocontroller 354 kann einen oder mehrere Prozessoren zum Verarbeiten von Anweisungen, die auf dem Speicher 356 gespeichert sind, sowie zum Speichern von Daten in dem Speicher 356 beinhalten. Der Mikrocontroller 354 führt das Ablaufdiagramm 100 sowie das Verfahren aus 5 auf Grundlage von in dem Speicher 356 gespeicherten Anweisungen durch. Der Speicher 356 ist eine nichtflüchtige Speichervorrichtung, die in der Lage ist, Anweisungen zu speichern und zu speichernde Daten zu empfangen.
  • 5 veranschaulicht ein Verfahren 500 zum Detektieren und Generieren von Warnmeldungen für abnormale Aktivierungsmuster gemäß einigen Ausführungsformen. Das Verfahren 500 kann zum Beispiel durch einen Detektor, wie etwa den Detektor 308, der kommunikativ mit einem CAN-Bus 302 gekoppelt ist, durchgeführt werden. In einigen Beispielen kann das Verfahren 500 durch eine Rechenvorrichtung, wie etwa das Rechensystem 602 des Fahrzeugsystems 600, durchgeführt werden. Wenngleich die Schritte des Verfahrens 500 in sequentieller Reihenfolge dargestellt sind, können einige oder alle der Schritte in unterschiedlichen Abfolgen durchgeführt werden, einschließlich in einigen Beispielen gleichzeitig.
  • Bei Schritt 502 empfängt eine Rechenvorrichtung, bei der es sich um einen Detektor, der einen Mikroprozessor beinhaltet, wie etwa den Detektor 308, handeln kann, eine Nachricht, die entlang des CAN-Busses eines Fahrzeugsystems kommuniziert wird. Die Nachricht kann von einer ECU oder einer beliebigen anderen Komponente, die kommunikativ mit dem CAN-Bus gekoppelt ist, kommuniziert werden. Die Nachricht kann angeben, dass die ECU oder andere Komponente aktiviert oder initialisiert wurde, zum Beispiel aus einem Ruhemodus oder einem abgeschalteten Modus. Die Nachricht kann Daten beinhalten, die eine durchzuführende Handlung beschreiben, oder kann in einigen Beispielen nur eine Warnmeldung darüber beinhalten, dass die ECU aktiv ist. Der Detektor kann zudem verifizieren, dass das Fahrzeugsystem nicht initiiert oder angeschaltet ist, indem er verifiziert, dass die Zündung des Fahrzeugs nicht mit einem Schlüssel des Fahrzeugsystems betätigt wurde. In einigen Beispielen kann dies ein Verifizieren, dass kein Schlüssel in der Zündung des Fahrzeugs steckt, die Zündung in eine Abschaltposition gedreht ist und sich kein Funkschlüssel, der zum Bereitstellen von Zugriff zum Starten eines Fahrzeugs verwendet wird, in dem Fahrzeug oder in dessen Nähe befindet, beinhalten. In einigen Beispielen kann der Detektor die Rechenvorrichtung des Fahrzeugs anweisen, die Überprüfung der Zündung durchzuführen, und ein Signal von der Rechenvorrichtung empfangen, das angibt, ob die Zündung aus- oder angeschaltet ist.
  • Bei Schritt 504 speichert der Detektor als Reaktion auf den Empfang der Aktivierungsnachricht und die Verifizierung, dass die Zündung ausgeschaltet ist, den Zeitpunkt der bei Schritt 502 empfangenen Aktivierungsnachricht in einem Speicher des Detektors, wie etwa dem Speicher 356. Der Zeitpunkt der Aktivierungsnachricht kann mit einer Angabe darüber gespeichert werden, dass der Zeitpunkt einem Aktivierungsereignis zugeordnet ist, und kann in einigen Fällen zudem Informationen darüber beinhalten, welche Komponente oder ECU die Aktivierungsnachricht übermittelt hat.
  • Bei Schritt 506 bestimmt der Detektor eine Gesamtbetriebszeit für mit dem CAN-Bus verbundene ECUs über einen Beobachtungszeitraum hinweg. In einigen Beispielen kann diese Bestimmung als Reaktion darauf erfolgen, dass der Detektor oder der CAN-Sendeempfänger bestimmt, dass die ECU, die das Aktivierungssignal übermittelt hat, nicht in naher Zukunft in eine Ruhephase eintreten wird. Zum Beispiel kann der Detektor bestimmen, dass der Ruhezeitpunkt der ECU um mehr als einen Schwellenwertzeitraum vom aktuellen Zeitpunkt entfernt ist. In einigen Beispielen kann der Schwellenwertzeitraum etwa einhundert Millisekunden betragen. In einigen Beispielen kann der Schwellenwert weniger als einhundert Millisekunden betragen und so kurz wie nur zwei Millisekunden sein. In einigen Beispielen kann der Schwellenwert bis zu oder mehr als eine Sekunde betragen. Für den Fall, dass die ECU innerhalb des Schwellenwerts von dem aktuellen Zeitpunkt in den Ruhemodus wechseln wird oder der Ruhezeitpunkt darin liegt, kann der Detektor den Ruhezeitpunkt zur Verwendung bei der Berechnung der Gesamtbetriebszeit im Speicher speichern. Nach diesem Speichern können sowohl die ECU als auch der Detektor in einen Ruhemodus wechseln.
  • Die Gesamtbetriebszeit für die ECUs kann bestimmt werden, indem die Betriebszeit zwischen einem Aktivierungszeitpunkt und einem Ruhezeitpunkt für jede der während des Beobachtungszeitraums aktivierten ECUs addiert wird, wie unter Bezugnahme auf 2 beschrieben.
  • Bei Schritt 508 beinhaltet das Verfahren 500 ein Generieren einer Aktivierungsanomaliebenachrichtigung auf Grundlage der bei Schritt 506 bestimmten Gesamtbetriebszeit. Die Gesamtbetriebszeit kann mit der Länge des Beobachtungszeitraums verglichen werden, um einen Prozentsatz zu generieren, beispielsweise welcher Prozentsatz des Beobachtungszeitraums durch die Gesamtbetriebszeit abgedeckt wurde. In Fällen, in denen ein Aktivierungsangriff verübt wird, nimmt die Gesamtbetriebszeit einen großen Prozentsatz des Beobachtungszeitraums ein. In einigen Beispielen kann der Beobachtungszeitraum ein Zeitraum von weniger als einer Sekunde, etwa einer Sekunde, mehr als einer Sekunde, mehreren Sekunden, ein Zeitraum von ein bis zwei Minuten oder ein Zeitraum von bis zu fünf Minuten sein.
  • In einigen Beispielen kann die Gesamtbetriebszeit, ausgedrückt als ein Prozentsatz des Beobachtungszeitraums, mit einem Schwellenwertprozentsatz verglichen werden. Zum Beispiel kann, wenn die Gesamtbetriebszeit mehr als fünfzig Prozent des Beobachtungszeitraums ausmacht, der Detektor auf Grundlage dessen, dass die Gesamtbetriebszeit den Schwellenwertprozentsatz überschreitet, eine Aktivierungsanomaliebenachrichtung generieren. In einigen Beispielen kann die Aktivierungsanomaliebenachrichtigung als Reaktion darauf generiert werden, dass der Detektor bestimmt, dass die Gesamtbetriebszeit einen bestimmten Wert und nicht einen Prozentsatz überschreitet. In einigen Beispielen kann der Detektor ferner das Muster von Aktivierungs- und Ruhezeitpunkten analysieren, um sich wiederholende Aktivierungsereignisse zu identifizieren, die ausgelöst werden, ohne dass ein Schlüssel anwesend ist oder die Zündung des Fahrzeugs angeschaltet wird. Der Detektor kann bestimmen, dass die sich wiederholenden Aktivierungsereignisse über den Beobachtungszeitraum hinweg einen möglichen Angriff angeben, und eine Aktivierungsanomaliebenachrichtigung generieren.
  • Als Reaktion auf das Generieren der Aktivierungsbenachrichtigung kann der Detektor die Benachrichtigung an die Rechenvorrichtung übermitteln. Die Rechenvorrichtung kann die Benachrichtigung einer entfernten Rechenvorrichtung bereitstellen, wie etwa einer mobilen Vorrichtung oder einem Servercomputer, um einen Benutzer über die Anomalie zu benachrichtigen. Die Rechenvorrichtung kann zudem die Benachrichtigung auf einer Anzeige des Fahrzeugsystems, wie etwa der Anzeige 628 aus 6, anzeigen. Die Rechenvorrichtung oder der Detektor kann in einigen Beispielen den Empfang eingehender externer Nachrichten über den CAN-Bus verhindern, um den Aktivierungsangriff zu beenden. In einigen Fällen kann die Rechenvorrichtung oder der Detektor die ECUs anweisen oder anderweitig veranlassen, in einem Ruhe- oder abgeschalteten Modus zu bleiben, bis der Schlüssel des Fahrzeugsystems anwesend ist, oder eine beliebige andere Präventivmaßnahme ergreifen, um das sich wiederholende Aktivierungsmuster zu beenden.
  • Ein beliebiges geeignetes Rechensystem oder eine beliebige Gruppe von Rechensystemen kann zum Durchführen der in dieser Schrift beschriebenen Vorgänge oder Verfahren verwendet werden. Zum Beispiel veranschaulicht 6 ein Fahrzeugsystem, das ein Computersystem 602 sowie mehrere ECUs beinhaltet, die einige oder alle der in dieser Schrift beschriebenen Funktionen durchführen können. 7 bildet ferner ein Beispiel für eine Rechenvorrichtung 700 ab, die zumindest einen Teil des Rechensystems 602 darstellen kann.
  • 6 veranschaulicht ein Blockdiagramm eines Fahrzeugsystems 600 gemäß einigen Ausführungsformen. Das Fahrzeugsystem 600 kann ein Rechensystem 602 beinhalten, das zur Kommunikation über ein fahrzeuginternes Netzwerk 614 konfiguriert ist. Das Rechensystem 602 beinhaltet einen Prozessor 604 und einen Datenspeicher 606. Wenngleich in 6 ein Fahrzeugsystem 600 gezeigt ist, sollen die veranschaulichten beispielhaften Komponenten nicht der Einschränkung dienen. Tatsächlich kann das Fahrzeugsystem 600 mehr oder weniger Komponenten aufweisen und können zusätzliche oder alternative Komponenten und/oder Umsetzungen verwendet werden. Es ist anzumerken, dass die Verwendung einer Umgebung des Fahrzeugsystems 600 veranschaulichend ist, da die Komponenten und Funktionen in anderen Arten von Systemen genutzt werden können, wie etwa in einem Flugsteuersystem in einem Luftfahrzeug oder in einer medizinischen Vorrichtung oder Industriemaschine.
  • Das Fahrzeugsystem 600 kann verschiedene Arten von Automobilen, Softroadern (crossover utility vehicle - CUV), Geländelimousinen (sport utility vehicle - SUV), Lastwagen, Wohnmobilen (recreational vehicle - RV), Booten, Luftfahrzeugen oder anderen mobilen Maschinen zum Befördern von Personen oder Gütern beinhalten. In vielen Fällen kann das Fahrzeugsystem 600 durch eine Brennkraftmaschine mit Leistung versorgt werden. Als eine weitere Möglichkeit kann das Fahrzeugsystem 600 ein Hybridelektrofahrzeug (hybrid electric vehicle - HEV) sein, das sowohl durch eine Brennkraftmaschine als auch einen oder mehrere Elektromotoren mit Leistung versorgt wird, wie etwa ein Serienhybrid-Elektrofahrzeug (series hybrid electric vehicle - SHEV), ein Parallelhybrid-Elektrofahrzeug (parallel hybrid electrical vehicle - PHEV) oder ein Parallel-/Serienhybrid-Elektrofahrzeug (parallel/series hybrid electric vehicle - PSHEV). Da die Art und Konfiguration des Fahrzeugsystems 600 variieren können, können entsprechend auch die Fähigkeiten des Fahrzeugssystems variieren. Als einige weitere Möglichkeiten kann das Fahrzeugsystem 600 unterschiedliche Fähigkeiten in Bezug auf die Fahrgastkapazität, die Schleppfähigkeit und - kapazität und den Stauraum aufweisen.
  • Das Rechensystem 602 kann eine Mensch-Maschine-Schnittstelle (MMS) 612 und eine Anzeige 628 zur Benutzerinteraktion mit dem Rechensystem 602 beinhalten. Ein beispielhaftes Rechensystem 602 kann das SYNC-System™ sein, das durch die FORD MOTOR COMPANY™ aus Dearborn, Michigan, bereitgestellt wird. In einigen Beispielen kann die Anzeige 628 ein Fahrzeug-Infotainmentsystem beinhalten, das eine oder mehrere Anzeigen beinhaltet. Die MMS 612 kann dazu konfiguriert sein, Sprachbefehls- und BLUETOOTH™-Schnittstellen zu dem Fahrer und zu Mobilvorrichtungen des Fahrers zu unterstützen, Benutzereingaben über verschiedene Tasten oder andere Steuerungen zu empfangen und einem Fahrer oder anderen Insassen des Fahrzeugsystems 600 Fahrzeugstatusinformationen bereitzustellen. Beispielsweise kann das Rechensystem 602 eine Schnittstelle mit einer oder mehreren Tasten oder einer anderen MMS 612 bilden, die dazu konfiguriert sind/ist, Funktionen auf dem Rechensystem 602 aufzurufen (z. B. Audiotasten am Lenkrad, eine Sprechtaste, Steuerungen am Armaturenbrett usw.). Das Rechensystem 602 kann zudem die Anzeige 628, die dazu konfiguriert ist, z. B. über eine Videosteuerung eine visuelle Ausgabe für Fahrzeuginsassen bereitzustellen, antreiben oder anderweitig mit dieser kommunizieren. In einigen Fällen kann es sich bei der Anzeige 628 um einen Touchscreen handeln, der ferner dazu konfiguriert ist, berührungsbasierte Eingaben des Benutzers über die Videosteuerung zu empfangen, während es sich bei der Anzeige 628 in anderen Fällen lediglich um eine Anzeige ohne berührungsbasierte Eingabefähigkeiten handeln kann. In einem Beispiel kann es sich bei der Anzeige 628 um eine Kopfeinheitsanzeige handeln, die in einem Mittelkonsolenbereich des Fahrzeugsystems 600 beinhaltet ist. In einem weiteren Beispiel kann es sich bei der Anzeige 628 um einen Bildschirm eines Kombi-Instruments des Fahrzeugsystems 600 handeln.
  • Das Rechensystem 602 kann ferner verschiedene Arten von Rechenvorrichtungen zur Unterstützung der Durchführung der in dieser Schrift beschriebenen Funktionen des Rechensystems 602 beinhalten. In einem Beispiel kann das Rechensystem 602 einen oder mehrere Prozessoren 604, die zum Ausführen von Computeranweisungen konfiguriert sind, und ein Speichermedium 606, auf dem die computerausführbaren Anweisungen und/oder Daten aufbewahrt werden können, beinhalten. Ein computerlesbares Medium (auch als prozessorlesbares Medium oder Datenspeicher 606 bezeichnet) beinhaltet jedes beliebige nichttransitorische (z. B. physische) Medium, das an der Bereitstellung von Daten (z. B. Anweisungen) beteiligt ist, die von einem Computer (z. B. von dem einen oder den mehreren Prozessoren 604) ausgelesen werden können. Im Allgemeinen empfängt der Prozessor 604 Anweisungen und/oder Daten, z. B. von dem Datenspeicher 606 usw., in einem Speicher und führt die Anweisungen unter Verwendung der Daten aus, wodurch er einen oder mehrere Prozesse durchführt, einschließlich eines oder mehrerer der in dieser Schrift beschriebenen Prozesse. Computerausführbare Anweisungen können von Computerprogrammen kompiliert oder interpretiert werden, die unter Verwendung vielfältiger Programmiersprachen und/oder - technologien erstellt worden sind, einschließlich unter anderem und entweder für sich oder in Kombination Java, C, C++, C#, Fortran, Pascal, Visual Basic, Python, Java Script, Perl, PL/SQL usw. Der Datenspeicher 606 kann Unterteilungen für Daten 608 und Anwendungen 610 beinhalten. In den Daten 608 können Informationen, wie etwa Datenbanken und andere derartige Informationen, gespeichert sein. In den Anwendungen 610 können die computerausführbaren Anweisungen oder andere derartige Anweisungen, die von dem Prozessor 604 ausgeführt werden können, gespeichert sein.
  • Das Rechensystem 602 kann dazu konfiguriert sein, mit mobilen Vorrichtungen der Insassen des Fahrzeugsystems 600 zu kommunizieren. Bei den mobilen Vorrichtungen kann es sich um eine beliebige von verschiedenen Arten tragbarer Rechenvorrichtungen handeln, wie etwa Mobiltelefone, Tablet-Computer, Smart Watches, Laptops, tragbare Musikwiedergabegeräte oder andere Vorrichtungen, die zur Kommunikation mit dem Rechensystem 602 in der Lage sind. Wie das Rechensystem 602 kann die mobile Vorrichtung einen oder mehrere Prozessoren, die zum Ausführen von Computeranweisungen konfiguriert sind, und ein Speichermedium, auf dem die computerausführbaren Anweisungen und/oder Daten aufbewahrt werden können, beinhalten. In einigen Beispielen kann das Rechensystem 602 einen drahtlosen Sendeempfänger (z. B. eine BLUETOOTH™-Steuerung, einen ZIGBEE™-Sendeempfänger, einen WLAN-Sendeempfänger usw.) beinhalten, der dazu konfiguriert ist, mit einem kompatiblen drahtlosen Sendeempfänger der mobilen Vorrichtung zu kommunizieren. Zusätzlich oder alternativ kann das Rechensystem 602 über eine drahtgebundene Verbindung mit der mobilen Vorrichtung kommunizieren, wie etwa über eine USB-Verbindung zwischen der mobilen Vorrichtung und einem Universal-Serial-Bus(USB)-Teilsystem der Rechenvorrichtung 602.
  • Das Rechensystem 602 kann ferner dazu konfiguriert sein, über ein oder mehrere fahrzeuginterne Netzwerke 614 mit anderen Komponenten des Fahrzeugsystems 600 zu kommunizieren. Die fahrzeuginternen Netzwerke 614 können eines oder mehrere von einem Controller Area Network (CAN) für ein Fahrzeug, einem Ethernet-Netzwerk oder einer mediengebundene Systemübertragung (media oriented system transfer - MOST) beinhalten, um nur einige Beispiele zu nennen. Die fahrzeuginternen Netzwerke 614 können ermöglichen, dass das Rechensystem 602 mit anderen Einheiten des Fahrzeugsystems 600 kommuniziert, wie etwa mit der ECU A 620, der ECU B 622, der ECU C 624 und der ECU D 626. Die ECUs 620, 622, 624 und 626 können verschiedene elektrische oder elektromechanische Systeme des Fahrzeugsystems 600 beinhalten oder verschiedene Teilsysteme des Fahrzeugsystems 600 steuern. Einige nicht einschränkende Beispiele für ECUs können folgende beinhalten: ein Antriebsstrangsteuermodul, das dazu konfiguriert ist, eine Steuerung von Motorbetriebskomponenten (z. B. Leerlaufsteuerkomponenten, Komponenten der Kraftstoffzufuhr, Komponenten zur Emissionssteuerung usw.) und eine Überwachung von Motorbetriebskomponenten (z. B. Status von Motordiagnosecodes) bereitzustellen; ein Karosseriesteuermodul, das dazu konfiguriert ist, verschiedene Leistungssteuerungsfunktionen zu verwalten, wie etwa Außenbeleuchtung, Innenraumbeleuchtung, schlüsselloser Zugang, Fernstart und Verifizierung des Status von Zugangspunkten (z. B. Schließstatus der Motorhaube, der Türen und/oder des Kofferraums des Fahrzeugssystems 600); ein Funksendeempfängermodul, das dazu konfiguriert ist, mit Funkschlüsseln oder anderen Vorrichtungen des Fahrzeugsystems 600 zu kommunizieren, ein Klimasteuerungsverwaltungsmodul, das dazu konfiguriert ist, eine Steuerung und Überwachung von Heiz- und Kühlsystemkomponenten bereitzustellen (z. B. Steuerung von Verdichterkupplung und Gebläselüfter, Temperatursensorinformationen usw.), sowie ein Getriebesteuermodul, ein Bremssteuermodul, ein zentrales Zeitgebungsmodul, ein Aufhängungssteuermodul, ein Fahrzeugmodem (das in einigen Konfigurationen unter Umständen nicht vorhanden ist), ein Modul eines globalen Positionsbestimmungssystems (GPS), das dazu konfiguriert ist, einen Standort und Farthrichtungsinformationen des Fahrzeugsystems 600 bereitzustellen, und verschiedene andere Fahrzeug-ECUs, die dazu konfiguriert sind, mit dem Rechensystem 602 zusammenzuwirken. Die von den verschiedenen ECUs gesteuerten Teilsysteme können Funktionskomponenten 616 des Fahrzeugsystems 600 beinhalten, die Elemente wie etwa den Antriebsstrang, den Motor, Bremsen, Leuchten, Lenkkomponenten und dergleichen beinhalten. Des Weiteren können einige oder alle der Funktionskomponenten 616 Sensoren 618 beinhalten und kann das Fahrzeugsystem 600 mit zusätzliche Sensoren zum Detektieren verschiedener Zustände, Positionen, Näherung, Temperatur und dergleichen des Fahrzeugsystems 600 und von Teilsystemen davon ausgestattet sein. Die ECUs 620, 622, 624, 626 können über das fahrzeuginterne Netzwerk 614 mit dem Rechensystem 602 und mit den Funktionskomponenten 616 und den Sensoren 618 kommunizieren. Während in 6 nur vier ECUs abgebildet sind, kann eine beliebige Anzahl (mehr oder weniger) an ECUs in dem Fahrzeugsystem 600 beinhaltet sein.
  • 7 veranschaulicht ein beispielhaftes Blockdiagramm einer Rechenvorrichtung 700. Bei der Rechenvorrichtung 700 kann es sich um einen beliebigen der hierin beschriebenen Computer handeln, einschließlich zum Beispiel des Rechensystems 602 in dem Fahrzeugsystem 600 aus 6 sowie den ECUs 620, 622, 624, 626. Die Rechenvorrichtung 700 kann zum Beispiel ein integrierter Computer, ein Laptop-Computer, ein Desktop-Computer, ein Tablet, ein Server oder eine andere elektronische Vorrichtung sein oder eine/n solche/n beinhalten.
  • Die Rechenvorrichtung 700 kann einen Prozessor 740 beinhalten, der über einen Bus 705 eine Schnittstelle mit anderer Hardware bildet. Ein Speicher 710, der ein beliebiges geeignetes physisches (und nichttransitorisches) computerlesbares Medium beinhalten kann, wie etwa RAM, ROM, EEPROM oder dergleichen, kann Programmkomponenten (z. B. Programmcode 715) verkörpern, die den Betrieb der Rechenvorrichtung 700 konfigurieren. Der Speicher 710 kann den Programmcode 715, Programmdaten 717 oder beides speichern. In einigen Beispielen kann die Rechenvorrichtung 700 Eingabe-/Ausgabe(„E/A“)-Schnittstellenkomponenten 725 (z. B. zum Bilden einer Schnittstelle mit einer Anzeige 745, einer Tastatur, einer Maus und dergleichen) und zusätzlichen Datenspeicher 730 beinhalten.
  • Die Rechenvorrichtung 700 führt den Programmcode 715 aus, der den Prozessor 740 dazu konfiguriert, einen oder mehrere der in dieser Schrift beschriebenen Vorgänge durchzuführen. Beispiele für den Programmcode 715 beinhalten in verschiedenen Ausführungsformen das Logikablaufdiagramm, das vorstehend unter Bezugnahme auf 1 beschrieben ist. Der Programmcode 715 kann sich in dem Speicher 710 oder einem beliebigen geeigneten computerlesbaren Medium befinden und kann durch den Prozessor 740 oder einen beliebigen anderen geeigneten Prozessor ausgeführt werden.
  • Die Rechenvorrichtung 700 kann aufgrund des Ausführens des Programmcodes 715 Programmdaten 717 generieren oder empfangen. Beispielsweise sind Sensordaten, ein Fahrtenzähler, authentifizierte Nachrichten, Fahrtmarkierungen und andere hierin beschriebene Daten alles Beispiele für Programmdaten 717, die von der Rechenvorrichtung 700 während der Ausführung des Programmcodes 715 verwendet werden können.
  • Die Rechenvorrichtung 700 kann Netzwerkkomponenten 720 beinhalten. Die Netzwerkkomponenten 720 können eine oder mehrere beliebige Komponenten darstellen, die eine Netzwerkverbindung ermöglichen. In einigen Beispielen können die Netzwerkkomponenten 720 eine drahtlose Verbindung ermöglichen und drahtlose Schnittstellen, wie etwa IEEE 802.11, BLUETOOTH™ oder Funkschnittstellen zum Zugreifen auf Mobiltelefonnetzwerke (z. B. einen Sendeempfänger/eine Antenne zum Zugreifen auf CDMA, GSM, UMTS oder ein anderes mobiles Kommunikationsnetzwerk) beinhalten. In anderen Beispielen können die Netzwerkkomponenten 720 drahtgebunden sein und Schnittstellen wie etwa Ethernet, USB oder IEEE 1394 beinhalten.
  • Wenngleich 7 eine Rechenvorrichtung 700 mit einem Prozessor 740 abbildet, kann das System eine beliebige Anzahl an Rechenvorrichtungen 700 und eine beliebige Anzahl an Prozessoren 740 beinhalten. Zum Beispiel können mehrere Rechenvorrichtungen 700 oder mehrere Prozessoren 740 über ein drahtgebundenes oder drahtloses Netzwerk (z. B. ein Weitverkehrsnetz, ein lokales Netzwerk oder das Internet) verteilt sein. Die mehreren Rechenvorrichtungen 700 oder die mehreren Prozessoren 740 können beliebige der Schritte der vorliegenden Offenbarung einzeln oder in Abstimmung miteinander durchführen.
  • Wenngleich der vorliegende Gegenstand in Bezug auf spezifische Aspekte davon ausführlich beschrieben worden ist, versteht es sich, dass der Fachmann beim Erlangen eines Verständnisses des Vorstehenden ohne Weiteres Veränderungen an, Variationen von und Äquivalente für derartige Aspekte erzeugen kann. Zahlreiche spezifische Details sind in dieser Schrift dargelegt, um ein umfassendes Verständnis des beanspruchten Gegenstands bereitzustellen. Der Fachmann wird jedoch verstehen, dass der beanspruchte Gegenstand ohne diese spezifischen Details umgesetzt werden kann. In anderen Fällen wurden Verfahren, Vorrichtungen oder Systeme, die dem Durchschnittsfachmann bekannt wären, nicht ausführlich beschrieben, um den beanspruchten Gegenstand nicht zu verdecken. Dementsprechend wurde die vorliegende Offenbarung zu Beispielzwecken und nicht zur Einschränkung dargelegt und schließt die Einbeziehung derartiger Modifikationen, Variationen und/oder Hinzufügungen zum vorliegenden Gegenstand, wie sie für den Durchschnittsfachmann ohne Weiteres ersichtlich wären, nicht aus.
  • Sofern nicht ausdrücklich etwas anderes angegeben ist, versteht es sich, dass sich in dieser Beschreibung Erörterungen, die Ausdrücke wie etwa „Verarbeiten“, „Rechnen“, „Berechnen“, „Bestimmen“ und „Identifizieren“ oder dergleichen nutzen, auf Handlungen oder Prozesse einer Rechenvorrichtung beziehen, wie etwa eines oder mehrerer Computer oder einer ähnlichen elektronischen Rechenvorrichtung oder ähnlicher elektronischer Rechenvorrichtungen, die Daten, die als physische elektronische oder magnetische Größen innerhalb von Speichern, Registern oder anderen Informationsspeichervorrichtungen, - übertragungsvorrichtungen oder -anzeigevorrichtungen der Rechenplattform dargestellt sind, manipulieren oder transformieren. Die Verwendung von „dazu ausgelegt“ oder „dazu konfiguriert“ soll in dieser Schrift eine offene und einschließende Formulierung sein, die Vorrichtungen, die dazu ausgelegt oder konfiguriert sind, zusätzliche Aufgaben oder Schritte durchzuführen, nicht ausschließt. Des Weiteren soll die Verwendung von „auf Grundlage von“ offen und einschließend sein, sodass ein Prozess, ein Schritt, eine Berechnung oder eine andere Handlung „auf Grundlage von“ einer oder mehreren genannten Bedingungen oder Werten in der Praxis auf zusätzlichen Bedingungen oder Werten jenseits der genannten beruhen kann. Überschriften, Listen und Nummerierungen, die in dieser Schrift beinhaltet sind, dienen lediglich der einfacheren Erläuterung und sollen nicht einschränkend sein.
  • Aspekte der in dieser Schrift offenbarten Verfahren können beim Betrieb derartiger Rechenvorrichtungen durchgeführt werden. Das System oder die Systeme, das/die in dieser Schrift erörtert wird/werden, ist/sind nicht auf eine konkrete Hardware-Architektur oder - Konfiguration beschränkt. Eine Rechenvorrichtung kann eine beliebige geeignete Anordnung von Komponenten beinhalten, die ein Ergebnis bereitstellen, das von einer oder mehreren Eingaben abhängig ist. Geeignete Rechenvorrichtungen beinhalten Universalcomputersysteme auf Mikroprozessorbasis, die auf gespeicherte Software zugreifen, die das Rechensystem von einer Universalrechenvorrichtung in eine spezialisierte Rechenvorrichtung programmiert oder konfiguriert, die einen oder mehrere Aspekte des vorliegenden Gegenstands umsetzt. Eine beliebige geeignete Programmierung, Skripterstellung oder eine andere Art von Sprache oder Kombinationen von Sprachen kann/können verwendet werden, um die hierin enthaltenen Lehren in Software umzusetzen, die beim Programmieren oder Konfigurieren einer Rechenvorrichtung verwendet wird. Die Reihenfolge der in den vorangehenden Beispielen dargestellten Blöcke kann variiert werden - zum Beispiel können Blöcke neu angeordnet, kombiniert und/oder in Unterblöcke unterteilt werden. Gewisse Blöcke oder Prozesse können parallel durchgeführt werden.
  • Gemäß der vorliegenden Erfindung wird ein Fahrzeugsystem bereitgestellt, das Folgendes aufweist: einen Controller-Area-Network(CAN)-Bus; eine elektronische Steuereinheit (ECU), die kommunikativ mit dem CAN-Bus gekoppelt ist; und einen Detektor, der kommunikativ mit dem CAN-Bus gekoppelt ist, wobei der Detektor Folgendes umfasst: einen nichtflüchtigen Speicher; einen CAN-Sendeempfänger; eine CAN-Steuerung; und einen Mikrocontroller, der einen Speicher umfasst, auf dem Anweisungen gespeichert sind, die bei Ausführung durch einen oder mehrere Prozessoren des Mikrocontrollers den einen oder die mehreren Prozessoren zu Folgendem veranlassen: Empfangen einer Nachricht von der ECU, die zu einem ersten Zeitpunkt über den CAN-Bus kommuniziert wird; Speichern eines Aktivierungszeitpunkts, der dem ersten Zeitpunkt entspricht, in dem nichtflüchtigen Speicher; Bestimmen einer Gesamtbetriebszeit für die ECU über einen Beobachtungszeitraum hinweg durch Summieren aller Betriebszeiten über den Beobachtungszeitraum hinweg; und Generieren einer Aktivierungsanomaliebenachrichtigung auf Grundlage einer Bestimmung, dass ein Prozentsatz der Gesamtbetriebszeit über den Beobachtungszeitraum hinweg einen vorher festgelegten Schwellenwert überschreitet.
  • Gemäß einer Ausführungsform wird das Bestimmen der Gesamtbetriebszeit für die ECU als Reaktion darauf durchgeführt, dass bestimmt wird, dass eine Differenz zwischen einem gegenwärtigen Zeitpunkt und einem Ruhezeitpunkt der ECU über einer Schwellenwertdifferenz liegt.
  • Gemäß einer Ausführungsform beträgt die Schwellenwertdifferenz weniger als einhundert Millisekunden.
  • Gemäß einer Ausführungsform umfassen die Anweisungen weitere Anweisung, die bei Ausführung durch einen oder mehrere Prozessoren den einen oder die mehreren Prozessoren zu Folgendem veranlassen: Speichern eines Ruhezeitpunkts in dem nichtflüchtigen Speicher als Reaktion darauf, dass bestimmt wird, dass eine Differenz zwischen einem gegenwärtigen Zeitpunkt und einem Ruhezeitpunkt der ECU innerhalb einer Schwellenwertdifferenz liegt.
  • Gemäß einer Ausführungsform umfassen die Anweisungen weitere Anweisungen, die bei Ausführung durch den einen oder die mehreren Prozessoren den einen oder die mehreren Prozessoren zu Folgendem veranlassen: Bestimmen, dass eine Zündung des Fahrzeugsystems derzeit nicht aktiv ist, auf Grundlage eines Fahrzeugschlüssels.
  • Gemäß einer Ausführungsform umfasst der Fahrzeugschlüssel einen Funkschlüssel und wobei das Bestimmen, dass die Zündung des Fahrzeugsystems derzeit nicht aktiv ist, auf Grundlage des Fahrzeugschlüssels ein Bestimmen, dass der Funkschlüssel nicht in einer Kabine des Fahrzeugsystems detektiert wird, umfasst.
  • Gemäß einer Ausführungsform umfasst das Bestimmen, dass die Zündung des Fahrzeugsystems derzeit nicht aktiv ist, auf Grundlage des Fahrzeugschlüssels ein Bestimmen, dass der Fahrzeugschlüssel nicht in der Zündung des Fahrzeugsystems steckt.
  • Gemäß einer Ausführungsform befindet sich der Detektor in einem Gateway des CAN-Busses.
  • Gemäß einer Ausführungsform umfasst das Fahrzeugsystem eine Vielzahl von CAN-Bussen und eine Vielzahl von Detektoren und wobei ein Detektor an jeden der Vielzahl von CAN-Bussen gekoppelt ist.
  • Gemäß einer Ausführungsform ist der vorher festgelegte Schwellenwert ein Wert größer als 50 %.
  • Gemäß der vorliegenden Erfindung beinhaltet ein computerumgesetztes Verfahren Folgendes: Empfangen einer Nachricht von einer elektronischen Steuereinheit (ECU) eines Fahrzeugsystems, die zu einem ersten Zeitpunkt über einen Controller-Area-Network(CAN)-Bus des Fahrzeugsystems kommuniziert wird, an einem Detektor, der kommunikativ mit dem CAN-Bus gekoppelt ist; Speichern eines Aktivierungszeitpunkts, der dem ersten Zeitpunkt entspricht, in einem nichtflüchtigen Speicher des Detektors; Bestimmen einer Gesamtbetriebszeit für die ECU über einen Beobachtungszeitraum hinweg durch Summieren aller Betriebszeiten über den Beobachtungszeitraum hinweg; und Generieren einer Aktivierungsanomaliebenachrichtigung auf Grundlage einer Bestimmung, dass ein Prozentsatz der Gesamtbetriebszeit über den Beobachtungszeitraum hinweg einen vorher festgelegten Schwellenwert überschreitet.
  • Gemäß einer Ausführungsform wird das Bestimmen der Gesamtbetriebszeit für die ECU als Reaktion darauf durchgeführt, dass bestimmt wird, dass eine Differenz zwischen einem gegenwärtigen Zeitpunkt und einem Ruhezeitpunkt der ECU über einer Schwellenwertdifferenz liegt.
  • Gemäß einer Ausführungsform beträgt die Schwellenwertdifferenz weniger als einhundert Millisekunden.
  • Gemäß einer Ausführungsform ist die Erfindung ferner gekennzeichnet durch ein Speichern eines Ruhezeitpunkts in dem nichtflüchtigen Speicher als Reaktion darauf, dass bestimmt wird, dass eine Differenz zwischen einem gegenwärtigen Zeitpunkt und einem Ruhezeitpunkt der ECU innerhalb einer Schwellenwertdifferenz liegt.
  • Gemäß einer Ausführungsform ist die Erfindung ferner gekennzeichnet durch ein Bestimmen, dass eine Zündung des Fahrzeugsystems derzeit nicht aktiv ist, auf Grundlage eines Fahrzeugschlüssels.
  • Gemäß einer Ausführungsform umfasst der Fahrzeugschlüssel einen Funkschlüssel und wobei das Bestimmen, dass die Zündung des Fahrzeugsystems derzeit nicht aktiv ist, auf Grundlage des Fahrzeugschlüssels ein Bestimmen, dass der Funkschlüssel nicht in einer Kabine des Fahrzeugsystems detektiert wird, umfasst.
  • Gemäß einer Ausführungsform umfasst das Bestimmen, dass die Zündung des Fahrzeugsystems derzeit nicht aktiv ist, auf Grundlage des Fahrzeugschlüssels ein Bestimmen, dass der Fahrzeugschlüssel nicht in der Zündung des Fahrzeugsystems steckt.
  • Gemäß einer Ausführungsform befindet sich der Detektor in einem Gateway des CAN-Busses.
  • Gemäß einer Ausführungsform umfasst das Fahrzeugsystem eine Vielzahl von CAN-Bussen und eine Vielzahl von Detektoren und wobei ein Detektor an jeden der Vielzahl von CAN-Bussen gekoppelt ist.
  • Gemäß einer Ausführungsform ist der vorher festgelegte Schwellenwert ein Wert größer als 50 %.

Claims (15)

  1. Fahrzeugsystem, umfassend: einen Controller-Area-Network(CAN)-Bus; eine elektronische Steuereinheit (ECU), die kommunikativ mit dem CAN-Bus gekoppelt ist; und einen Detektor, der kommunikativ mit dem CAN-Bus gekoppelt ist, wobei der Detektor Folgendes umfasst: einen nichtflüchtigen Speicher; einen CAN-Sendeempfänger; eine CAN-Steuerung; und einen Mikrocontroller, der einen Speicher umfasst, auf dem Anweisungen gespeichert sind, die bei Ausführung durch einen oder mehrere Prozessoren des Mikrocontrollers den einen oder die mehreren Prozessoren zu Folgendem veranlassen: Empfangen einer Nachricht von der ECU, die zu einem ersten Zeitpunkt über den CAN-Bus kommuniziert wird; Speichern eines Aktivierungszeitpunkts, der dem ersten Zeitpunkt entspricht, in dem nichtflüchtigen Speicher; Bestimmen einer Gesamtbetriebszeit für die ECU über einen Beobachtungszeitraum hinweg durch Summieren aller Betriebszeiten über den Beobachtungszeitraum hinweg; und Generieren einer Aktivierungsanomaliebenachrichtigung auf Grundlage einer Bestimmung, dass ein Prozentsatz der Gesamtbetriebszeit über den Beobachtungszeitraum hinweg einen vorher festgelegten Schwellenwert überschreitet.
  2. Fahrzeugsystem nach Anspruch 1, wobei das Bestimmen der Gesamtbetriebszeit für die ECU als Reaktion darauf durchgeführt wird, dass bestimmt wird, dass eine Differenz zwischen einem aktuellen Zeitpunkt und einem Ruhezeitpunkt der ECU über einer Schwellenwertdifferenz liegt.
  3. Fahrzeugsystem nach Anspruch 1 oder 2, wobei die Anweisungen weitere Anweisungen umfassen, die bei Ausführung durch den einen oder die mehreren Prozessoren den einen oder die mehreren Prozessoren zu Folgendem veranlassen: Speichern eines Ruhezeitpunkts in dem nichtflüchtigen Speicher als Reaktion darauf, dass bestimmt wird, dass eine Differenz zwischen einem gegenwärtigen Zeitpunkt und einem Ruhezeitpunkt der ECU innerhalb einer Schwellenwertdifferenz liegt.
  4. Fahrzeugsystem nach Anspruch 1, wobei die Anweisungen weitere Anweisungen umfassen, die bei Ausführung durch den einen oder die mehreren Prozessoren den einen oder die mehreren Prozessoren zu Folgendem veranlassen: Bestimmen, dass eine Zündung des Fahrzeugsystems derzeit nicht aktiv ist, auf Grundlage eines Fahrzeugschlüssels.
  5. Fahrzeugsystem nach Anspruch 4, wobei der Fahrzeugschlüssel einen Funkschlüssel umfasst und wobei das Bestimmen, dass die Zündung des Fahrzeugsystems derzeit nicht aktiv ist, auf Grundlage des Fahrzeugschlüssels ein Bestimmen, dass der Funkschlüssel nicht innerhalb einer Kabine des Fahrzeugsystems detektiert wird, umfasst.
  6. Fahrzeugsystem nach Anspruch 5, wobei das Bestimmen, dass die Zündung des Fahrzeugsystems derzeit nicht aktiv ist, auf Grundlage des Fahrzeugschlüssels ein Bestimmen, dass der Fahrzeugschlüssel nicht in der Zündung des Fahrzeugsystems steckt, umfasst.
  7. Fahrzeugsystem nach Anspruch 1 oder 2, wobei sich der Detektor in einem Gateway des CAN-Busses befindet.
  8. Fahrzeugsystem nach Anspruch 1 oder 2, wobei das Fahrzeugsystem eine Vielzahl von CAN-Bussen und eine Vielzahl von Detektoren umfasst und wobei ein Detektor an jeden der Vielzahl von CAN-Bussen gekoppelt ist.
  9. Computerumgesetztes Verfahren, umfassend: Empfangen einer Nachricht von einer elektronischen Steuereinheit (ECU) eines Fahrzeugsystems, die zu einem ersten Zeitpunkt über einen Controller-Area-Network(CAN)-Bus des Fahrzeugsystems kommuniziert wird, an einem Detektor, der kommunikativ mit dem CAN-Bus gekoppelt ist; Speichern eines dem ersten Zeitpunkt entsprechenden Aktivierungszeitpunkts in einem nichtflüchtigen Speicher des Detektors; Bestimmen einer Gesamtbetriebszeit für die ECU über einen Beobachtungszeitraum hinweg durch Summieren aller Betriebszeiten über den Beobachtungszeitraum hinweg; und Generieren einer Aktivierungsanomaliebenachrichtigung auf Grundlage einer Bestimmung, dass ein Prozentsatz der Gesamtbetriebszeit über den Beobachtungszeitraum hinweg einen vorher festgelegten Schwellenwert überschreitet.
  10. Computerumgesetztes Verfahren nach Anspruch 9, wobei das Bestimmen der Gesamtbetriebszeit für die ECU als Reaktion darauf durchgeführt wird, dass bestimmt wird, dass eine Differenz zwischen einem gegenwärtigen Zeitpunkt und einem Ruhezeitpunkt der ECU über einer Schwellenwertdifferenz liegt.
  11. Computerumgesetztes Verfahren nach Anspruch 10, wobei die Schwellenwertdifferenz weniger als einhundert Millisekunden beträgt.
  12. Computerumgesetztes Verfahren nach einem der Ansprüche 9-11, ferner umfassend ein Speichern eines Ruhezeitpunkts in dem nichtflüchtigen Speicher als Reaktion darauf, dass bestimmt wird, dass eine Differenz zwischen einem gegenwärtigen Zeitpunkt und einem Ruhezeitpunkt der ECU innerhalb einer Schwellenwertdifferenz liegt.
  13. Computerumgesetztes Verfahren nach einem der Ansprüche 9-11, ferner umfassend ein Bestimmen, dass eine Zündung des Fahrzeugsystems derzeit nicht aktiv ist, auf Grundlage eines Fahrzeugschlüssels.
  14. Computerumgesetztes Verfahren nach Anspruch 13, wobei das Bestimmen, dass die Zündung des Fahrzeugsystems derzeit nicht aktiv ist, auf Grundlage des Fahrzeugschlüssels ein Bestimmen, dass der Fahrzeugschlüssel nicht in der Zündung des Fahrzeugsystems steckt, umfasst.
  15. Computerumgesetztes Verfahren nach einem der Ansprüche 9-11, wobei der vorher festgelegte Schwellenwert ein Wert größer als 50 % ist.
DE102021116643.8A 2020-07-01 2021-06-28 Detektieren eines abnormalen can-bus-aktivierungsmusters Pending DE102021116643A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/918,853 US11597348B2 (en) 2020-07-01 2020-07-01 Detecting abnormal CAN bus wake-up pattern
US16/918,853 2020-07-01

Publications (1)

Publication Number Publication Date
DE102021116643A1 true DE102021116643A1 (de) 2022-01-05

Family

ID=79019803

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021116643.8A Pending DE102021116643A1 (de) 2020-07-01 2021-06-28 Detektieren eines abnormalen can-bus-aktivierungsmusters

Country Status (3)

Country Link
US (1) US11597348B2 (de)
CN (1) CN113965431A (de)
DE (1) DE102021116643A1 (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11711384B2 (en) * 2018-08-27 2023-07-25 Lear Corporation Method and system for detecting message injection anomalies
JP7535002B2 (ja) * 2021-03-30 2024-08-15 本田技研工業株式会社 車載電子システム、車両、制御方法、及びプログラム
KR20220168839A (ko) * 2021-06-17 2022-12-26 현대자동차주식회사 차량 제어 장치 및 방법
US11745700B2 (en) * 2021-09-03 2023-09-05 Rivian Ip Holdings, Llc System and method for efficient management of vehicle power modes
US11608028B1 (en) 2021-09-03 2023-03-21 Rivian Ip Holdings, Llc Systems and methods for multi-zoned vehicle wake up
US12072754B2 (en) * 2021-09-24 2024-08-27 Advanced Micro Devices, Inc. Method and apparatus for managing a controller in a power down state
CN114978883B (zh) * 2022-05-20 2023-10-20 中国第一汽车股份有限公司 网络唤醒的管理方法、装置、电子设备及存储介质
CN115065574B (zh) * 2022-05-25 2024-01-23 阿波罗智能技术(北京)有限公司 车辆控制器的唤醒方法、装置、电子设备和自动驾驶车辆
CN115320538A (zh) * 2022-07-20 2022-11-11 国汽智控(北京)科技有限公司 智能网联汽车入侵检测系统及方法
CN116600262B (zh) * 2023-02-08 2024-04-16 广州汽车集团股份有限公司 休眠唤醒异常的确定方法、装置、电子设备及存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101237345B (zh) * 2007-12-04 2010-09-08 奇瑞汽车股份有限公司 一种用于can总线的网络管理方法
US8098130B2 (en) 2008-06-11 2012-01-17 Flextronics Automotive Inc. System and method for activating electromechanical systems using flexible intelligent radio frequency modules
EP2404792B1 (de) * 2009-03-06 2013-12-25 Honda Motor Co., Ltd. Feststellung von abnormalitäten und fahrzeugortungsvorrichtung
JP5919205B2 (ja) 2013-01-28 2016-05-18 日立オートモティブシステムズ株式会社 ネットワーク装置およびデータ送受信システム
KR101472896B1 (ko) 2013-12-13 2014-12-16 현대자동차주식회사 차량 내 통신 네트워크에서의 보안 강화 방법 및 그 장치
US10286891B2 (en) * 2014-07-11 2019-05-14 Ford Global Technologies, Llc Vehicle parking system failure management
DE102015105112A1 (de) 2015-04-02 2016-10-06 Dr. Ing. H.C. F. Porsche Aktiengesellschaft Steuergerät zum Verbinden eines CAN-Busses mit einem Funknetzwerk und Kraftfahrzeug mit einem solchen Steuergerät
US9768977B2 (en) 2015-07-01 2017-09-19 QUALCOMM Technologies International, Ltd Low-power can management
CN105313719B (zh) * 2015-10-12 2017-06-30 中国汽车工程研究院股份有限公司 一种整车控制器及其唤醒过程监控方法
KR101714520B1 (ko) 2015-10-30 2017-03-09 현대자동차주식회사 차량 내 네트워크 공격 탐지 방법 및 장치
US11108249B2 (en) * 2017-08-31 2021-08-31 Textron Innovations Inc. Communication to control charging of a rechargeable battery
CN109353221B (zh) * 2018-08-11 2021-11-26 河南速达电动汽车科技有限公司 一种电动汽车关键控制器安全监控系统及监控方法
CN109581122B (zh) * 2018-12-24 2021-06-25 北京新能源汽车股份有限公司 一种车辆异常唤醒的检测方法、装置及系统

Also Published As

Publication number Publication date
US20220001835A1 (en) 2022-01-06
CN113965431A (zh) 2022-01-21
US11597348B2 (en) 2023-03-07

Similar Documents

Publication Publication Date Title
DE102021116643A1 (de) Detektieren eines abnormalen can-bus-aktivierungsmusters
DE112013005705B4 (de) Fahrzeuggebundene Programmaktualisierungsvorrichtung
DE102020214378A1 (de) Vorrichtung und verfahren zum steuern von aktualisierungen von ecus von einem fahrzeug
DE102018100095A1 (de) Softwareaktualisierungs-verwaltung
DE102017128922A1 (de) Authentifizierung von mobilen Vorrichtungen zur Fahrzeugkommunikation
DE102019115693A1 (de) Auslöserbasierte fahrzeugüberwachung
DE102020100377A1 (de) Wachzustandsüberwachungseinrichtung für elektronisches steuermodul
DE102014202732A1 (de) Diebstahlserkennung und alarm für anhänger
DE102017201087A1 (de) Vorrichtung, Schlüsselgegenstelle und Verfahren zum Steuern von Betriebszuständen eines Schlüsselmoduls
DE102021209039A1 (de) Vorrichtung und verfahren zum verwalten einer aktualisierung einer ecu eines fahrzeugs
DE102018129321A1 (de) Status-Tests drahtloser Kommunikationsknoten von Fahrzeugen
DE102018109410A1 (de) Cloudbasierte konnektivitätsenergiebilanzverwaltungsvorrichtung
DE102019117274A1 (de) Drahtlose rückstreuung mit laufzeit zur fahrzeugkommunikation
DE102021101377A1 (de) Aktive näherungserkennung mit makrokapazitiver erfassung
DE102019129506A1 (de) Entfernte fahrzeugsteuerung
DE102021116640A1 (de) Erfassen und beheben der desynchronisation von fahrtenzählerwerten in authentifizierten nachrichten
DE102018101823A1 (de) Fernstarten von motoren über fahrzeugtastenfelder
DE102019124914A1 (de) Cloudautorisierte fahrzeugsteuerung
EP3230131B1 (de) Verfahren zur steuerung des betriebs wenigstens einer funktionskomponente eines kraftfahrzeugs und kraftfahrzeug
DE102021100160A1 (de) Kapazitives sensorsystem zur erfassung von manipulation einer ladeflächenabdeckung
DE102021102278A1 (de) Nachrichtenauthentifizierung von fahrzeugen durch proof-of-work
DE112020001720T5 (de) Vor-booting einer elektronischen kraftfahrzeugsteuereinheit für eine verbesserte leistung der mensch-maschine-schnittstelle
DE102015208799A1 (de) Detektieren einer angelehnten fahrzeugtür unter verwendung eines eindringsensors
DE102022118747A1 (de) Elektrisches fahrzeugsystem
DE102021125867A1 (de) Automatisierte detektion von fahrzeugdatenmanipulation und mechanischen ausfällen

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: LORENZ SEIDLER GOSSEL RECHTSANWAELTE PATENTANW, DE