DE102022207911A1 - Verfahren zum Erkennen eines Angriffs auf einen zu sichernden Busteilnehmer, Überwachungseinheit und Bussystem - Google Patents

Verfahren zum Erkennen eines Angriffs auf einen zu sichernden Busteilnehmer, Überwachungseinheit und Bussystem Download PDF

Info

Publication number
DE102022207911A1
DE102022207911A1 DE102022207911.6A DE102022207911A DE102022207911A1 DE 102022207911 A1 DE102022207911 A1 DE 102022207911A1 DE 102022207911 A DE102022207911 A DE 102022207911A DE 102022207911 A1 DE102022207911 A1 DE 102022207911A1
Authority
DE
Germany
Prior art keywords
bus
transmission
frequency
messages
monitoring unit
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
DE102022207911.6A
Other languages
English (en)
Inventor
Jan Holle
Stefano Longari
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102022207911.6A priority Critical patent/DE102022207911A1/de
Publication of DE102022207911A1 publication Critical patent/DE102022207911A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)

Abstract

Die Erfindung betrifft ein Verfahren zum Erkennen eines Angriffs auf einen zu sichernden Busteilnehmer (6) eines Bussystems (2), wobei der Busteilnehmer (6) dazu konfiguriert ist, Nachrichten mit dem Busteilnehmer zugeordneten Nachrichten-Identifikationen auf einem Bus des Bussystems (2) zu senden, ein Sendefehler-Zählverfahren zu implementieren, gemäß dem der Busteilnehmer (6) bei Erkennen eines Sendefehlers diesen durch ein Sendefehler-Signal auf dem Bus anzeigt, und bei Überschreiten einer vorbestimmten Maximal-Sendefehleranzahl in einen inaktiven Sende-Zustand zu schalten, in dem der Busteilnehmer keine Nachrichten sendet; wobei durch eine mit dem Bus verbundene Überwachungseinheit (7) Nachrichten, die eine dem Busteilnehmer (6) zugeordnete Nachrichten-Identifikation aufweisen, und dem Busteilnehmer zugeordnete Sendefehler-Signale erfasst werden (130); wobei durch die Überwachungseinheit (7) eine Sendefehleranzahl entsprechend dem Sendefehler-Zählverfahren gebildet wird (140), eine Häufigkeit der Nachrichten, die eine dem Busteilnehmer zugeordnete Nachrichten-Identifikation aufweisen, bestimmt wird (150) und ein möglicher Angriff erkannt wird (180), wenn die Sendefehleranzahl unter der Maximal-Sendefehleranzahl liegt und die Häufigkeit über einer vorgegebenen Häufigkeitsgrenze liegt (160). Weiter betrifft die Erfindung eine Überwachungseinheit und ein Bussystem.

Description

  • Die vorliegende Erfindung betrifft ein Verfahren zum Erkennen eines Angriffs auf einen zu sichernden Busteilnehmer, eine Überwachungseinheit und ein Bussystem.
  • Hintergrund der Erfindung
  • In Maschinen und Kraftfahrzeugen werden programmierbare Steuergeräte eingesetzt, um diese oder auch Komponenten davon, zu steuern. Beispielsweise kann ein Kraftfahrzeug Steuergeräte zur Motorsteuerung, für das Bremssystem usw. enthalten. Die Steuergeräte umfassen einen Mikrocontroller oder Prozessor mit einem oder typischerweise mit mehreren Prozessor-Kernen, die in einem Speicher gespeicherte Programme ausführen, um die Funktionen des Steuergeräts zu erzielen.
  • Untereinander und mit weiteren Geräten, etwa Sensoren, können die Steuergeräte über einen Bus verbunden sein. Verbreitet ist beispielsweise der CAN-Bus (Controller Area Network), ein auf Differenzspannungen basierender Bus, der Daten bzw. Nachrichten über zwei Busleitungen überträgt; Busleitungen und Busteilnehmer bilden zusammen ein Bussystem. Um zu verhindern, dass ein Angreifer, der Zugriff auf die physikalische Schicht, insbesondere die Busleitungen, hat, die übertragenen Daten manipuliert oder eigene Daten einschleust, können die zu übertragenden Daten beispielsweise durch kryptographische Verfahren abgesichert werden.
  • Offenbarung der Erfindung
  • Erfindungsgemäß werden ein Verfahren zum Erkennen eines Angriffs auf einen zu sichernden Busteilnehmer, eine Überwachungseinheit und ein Bussystem mit den Merkmalen der unabhängigen Patentansprüche vorgeschlagen. Vorteilhafte Ausgestaltungen sind Gegenstand der Unteransprüche sowie der nachfolgenden Beschreibung.
  • Die Erfindung bedient sich der Maßnahme, sowohl die Sendefehleranzahl mitzuzählen als auch die Frequenz bzw. Häufigkeit der Nachrichten zu bestimmen. Dies ermöglicht, einen Angreifer zu erkennen, der versucht, Nachrichten des Busteilnehmers (erkennbar anhand der Nachrichten-Identifikation) durch ein eigenes Signal (d.h. durch Anlegen eines Spannungssignals am Bus bzw. dessen Busleitungen) zu überdecken, so dass einerseits der Busteilnehmer von einer eigenen Fehlfunktion ausgeht und andererseits das darauffolgende Fehlersignal des Busteilnehmers aus Sicht anderer Teilnehmer am Bus nicht sichtbar ist, und dass in der Folge der Busteilnehmer in den inaktiven Sende-Zustand schaltet, ohne dass dies von einer überwachenden Einheit erkannt wird. Dieser Versuch wird durch die Erfindung erkannt, da sowohl Versuche des Busteilnehmers, die Nachricht erneut zu senden, als auch Versuche des Angreifers, dies ebenso zu überdecken, zu einer Erhöhung der Nachrichten-Frequenz bzw. Nachrichten-Häufigkeit führen.
  • Diese Vorgehensweise macht sich zunutze, dass in technischen Systemen Nachrichten von Busteilnehmern typischerweise zumindest im Wesentlichen in regelmäßigen zeitlichen Abständen gesendet werden, d.h. innerhalb geringer Abweichungen von z.B. 20 % oder 10 %. Beispielsweise könnte ein Busteilnehmer ein Sensor sein, der erfasste Messwerte regelmäßig auf dem Bus sendet. Ein anderes Beispiel ist ein Steuergerät, das Steuerbefehle in regelmäßigen Zeitabständen, etwa bedingt durch eine bestimmte Verarbeitungszeit zur Erzeugung der Steuerbefehle, sendet. Auch werden Nachrichten vom Busteilnehmer typischerweise unmittelbar erneut gesendet, wenn beim Senden ein Fehler erkannt wird, um deren Übermittlung sicherzustellen. Gegenüber einer kryptographischen Absicherung des Bussystems ist weniger Rechenleistung der Busteilnehmer und/oder weniger Busbandbreite nötig, da kryptographische Daten weder berechnet noch übertragen werden müssen.
  • Im Einzelnen ist im Verfahren zum Erkennen eines Angriffs auf einen zu sichernden bzw. zu schützenden Busteilnehmer eines Bussystems (das im Allgemeinen mehrere Busteilnehmer aufweist), der (zu sichernde) Busteilnehmer dazu konfiguriert, Nachrichten mit dem Busteilnehmer zugeordneten Nachrichten-Identifikationen auf einem Bus des Bussystems zu senden, ein Sendefehler-Zählverfahren zu implementieren, gemäß dem der Busteilnehmer bei Erkennen eines Sendefehlers diesen durch ein Sendefehler-Signal auf dem Bus anzeigt, und bei Überschreiten einer vorbestimmten Maximal-Sendefehleranzahl in einen inaktiven Sende-Zustand zu schalten, in dem der Busteilnehmer keine Nachrichten sendet. Eine entsprechende Konfiguration des (zu sichernden) Busteilnehmers ist etwa in einer Spezifikation des Bussystems vorgegeben. Soweit nicht anders angemerkt (etwa „andere Busteilnehmer“) oder aus dem Zusammenhang erkennbar, bezieht sich der Begriff „Busteilnehmer“ auf den „zu sichernden Busteilnehmer“ bzw. den „zu schützenden Busteilnehmer“.
  • Bei der Erfindung werden durch eine mit dem Bus verbundene Überwachungseinheit Nachrichten, die eine dem Busteilnehmer zugeordnete Nachrichten-Identifikation aufweisen, und dem Busteilnehmer zugeordnete Sendefehler-Signale erfasst, durch die Überwachungseinheit eine Sendefehleranzahl entsprechend dem Sendefehler-Zählverfahren gebildet, durch die Überwachungseinheit eine Häufigkeit der Nachrichten, die eine dem Busteilnehmer zugeordnete Nachrichten-Identifikation aufweisen, bestimmt, und ein möglicher Angriff erkannt, wenn die Überwachungseinheit feststellt, dass die Sendefehleranzahl unter der Maximal-Sendefehleranzahl liegt und die Nachrichten-Häufigkeit über einer vorgegebenen Häufigkeitsgrenze liegt.
  • Der Busteilnehmer ist vorzugsweise dazu konfiguriert, eine Nachricht, bei deren Senden ein Sendefehler erkannt wird, erneut zu senden. Auch ist der Busteilnehmer vorzugsweise dazu konfiguriert, Nachrichten mit einer Sendehäufigkeit zu senden, die unter der Häufigkeitsgrenze liegt.
  • Das Bussystem ist vorzugsweise ein CAN-Bussystem (CAN: Controller Area Network) gemäß der CAN-Spezifikation: Robert Bosch GmbH, CAN Specification, Version 2.0, Sep. 1991. Das erfindungsgemäße Verfahren wird also vorzugsweise bei einem CAN-Bussystem angewendet.
  • Der Begriff „möglicher Angriff“ bezieht sich darauf, dass nicht zwangsläufig ein Angriff vorliegen muss, da auch Störungen auftreten können, die ähnliche Effekte wie ein Angriff haben. Anderes formuliert wird ein Angriff im Sinne des Verfahrens erkannt.
  • Die Nachrichten-Identifikation ist typischerweise als Zeichenfolge, z.B. als Zahlenwert, insbesondere als Binärwert gegeben. Im CAN-Bus umfassen diese beispielsweise 11 Bits (standard frames) oder 29 Bits (extended frames). In der weiteren Beschreibung wird auch die Abkürzung „Nachrichten-ID“ für den Begriff „Nachrichten-Identifikation“ verwendet.
  • Bevorzugt wird, während sichergestellt ist, dass kein Angriff vorliegt, eine durchschnittliche Sendehäufigkeit von Nachrichten des Busteilnehmers bestimmt, wobei die Häufigkeitsgrenze als Produkt eines Häufigkeits-Multiplikators mit der durchschnittlichen Sendehäufigkeit vorgegeben wird. Der Häufigkeits-Multiplikators kann eine reelle Zahl größer eins sein. Vorzugsweise liegt der Häufigkeits-Multiplikator im Bereich von 1,1 bis 3, weiter bevorzugt im Bereich von 1,3 bis 2,5, am meisten bevorzugt im Bereich von 1,5 bis 2. Um sicherzustellen, dass kein Angriff vorliegt, kann etwa geprüft werden, ob ein Gerät eines potentiellen Angreifers physisch mit dem Bus verbunden ist oder ob eine Software eines Busteilnehmers manipuliert wurde. Insbesondere während der Herstellung und Einrichtung des Bussystems kann davon ausgegangen werden, dass kein Angriff vorliegt.
  • Bevorzugt werden, während sichergestellt ist, dass kein Angriff vorliegt, eine durchschnittliche Sendehäufigkeit und eine Varianz der Sendehäufigkeit von Nachrichten des Busteilnehmers bestimmt, wobei die Häufigkeitsgrenze als Summe der durchschnittlichen Sendehäufigkeit mit dem Produkt eines Varianz-Multiplikators mit der Varianz vorgegeben wird. Der Varianz-Multiplikators kann eine reelle Zahl sein. Vorzugsweise liegt der Varianz-Multiplikator im Bereich von 1 bis 5, weiter bevorzugt im Bereich von 2 bis 3.
  • Bevorzugt wird ein möglicher Angriff erkannt, wenn die Überwachungseinheit feststellt, dass die Sendefehleranzahl über der Maximal-Sendefehleranzahl liegt und weiterhin Nachrichten mit einer Nachrichten-ID, die dem Busteilnehmer zugeordnet ist, gesendet werden. Diese Bedingung ist ein Zeichen dafür, dass der Angreifer den Busteilnehmer in den inaktiven Sende-Zustand forciert hat und an seiner statt Nachrichten sendet.
  • Bevorzugt wird die Häufigkeit bestimmt als Anzahl von Nachrichten, die eine dem Busteilnehmer zugeordnete Nachrichten-ID aufweisen, innerhalb einer bestimmten Zeitspanne oder als Kehrwert einer zeitlichen Länge, innerhalb derer eine bestimmte Anzahl von Nachrichten, die eine dem Busteilnehmer zugeordnete Nachrichten-ID aufweisen, auftritt. Diese Vorgehensweisen sind einfach zu implementieren. Selbstverständlich sind auch andere Bestimmungsmöglichkeiten bzw. Definitionen einer Häufigkeit denkbar.
  • Eine entsprechend ausgestaltete Überwachungseinheit kann somit eigenständig die Häufigkeitsgrenze basierend auf tatsächlich im Betrieb des Bussystems auftretenden Nachrichten-Häufigkeiten bestimmen.
  • Bevorzugt wird, wenn ein möglicher Angriff erkannt wird, durch die Überwachungseinheit eine Warn-Nachricht auf dem Bus gesendet, die anzeigt, dass ein möglicher Angriff vorliegt, wobei die Warn-Nachricht bevorzugt Informationen über den betroffenen Busteilnehmer und/oder diesem zugeordnete Nachrichten-IDs enthält. Dies ermöglicht, anderen Busteilnehmern zu reagieren, etwa in einen gesicherten Zustand zu schalten oder Nachrichten des möglicherweise angegriffenen Busteilnehmers zu verwerfen.
  • Ein erfindungsgemäßes Bussystem umfasst mehrere Busteilnehmer und eine erfindungsgemäße Überwachungseinheit, die mit einem Bus des Bussystems verbunden sind, wobei die Überwachungseinheit dazu eingerichtet ist, wenigstens einen der Busteilnehmer zu sichern.
  • Auch die Implementierung der von der Überwachungseinheit durchgeführten Schritte eines erfindungsgemäßen Verfahrens in Form eines Computerprogramms oder Computerprogrammprodukts mit Programmcode zur Durchführung aller Verfahrensschritte ist vorteilhaft, da dies besonders geringe Kosten verursacht, insbesondere wenn ein ausführendes Steuergerät noch für weitere Aufgaben genutzt wird und daher ohnehin vorhanden ist. Schließlich ist ein maschinenlesbares Speichermedium vorgesehen mit einem darauf gespeicherten Computerprogramm wie oben beschrieben. Geeignete Speichermedien bzw. Datenträger zur Bereitstellung des Computerprogramms sind insbesondere magnetische, optische und elektrische Speicher, wie z.B. Festplatten, Flash-Speicher, EEPROMs, DVDs u.a.m. Auch ein Download eines Programms über Computernetze (Internet, Intranet usw.) ist möglich. Ein solcher Download kann dabei drahtgebunden bzw. kabelgebunden oder drahtlos (z.B. über ein WLAN-Netz, eine 3G-, 4G-, 5G- oder 6G-Verbindung, etc.) erfolgen.
  • Weitere Vorteile und Ausgestaltungen der Erfindung ergeben sich aus der Beschreibung und der beiliegenden Zeichnungen.
  • Die Erfindung ist anhand von Ausführungsbeispielen in den Zeichnungen schematisch dargestellt und wird im Folgenden unter Bezugnahme auf die Zeichnungen beschrieben.
  • Kurze Beschreibung der Zeichnungen
    • 1 zeigt einen beispielhaften Aufbau eines Bussystems und einen Angreifer.
    • 2 zeigt einen möglichen internen Aufbau einer Überwachungseinheit bzw. eines Angreifers.
    • 3 illustriert mögliche Angriffsvektoren auf einen Teilnehmer des Bussystems.
    • 4 illustriert einen Effekt eines Angriffsversuchs.
    • 5 zeigt ein Ablaufdiagramm gemäß einer bevorzugten Ausführungsform der Erfindung.
  • Ausführungsform(en) der Erfindung
  • 1 stellt einen beispielhaften Aufbau eines Bussystems 2, insbesondere eines auf Differenzspannungssignalen basierenden Bussystems, wie etwa ein CAN-Bussystem, und einen Angreifer 8 dar. Das Bussystem 2 umfasst einerseits zwei Leitungen 4, über die die Spannungssignale übertragen werden und die über Abschlusswiderstände 5, welche die zentrale Impedanz des Bussystems darstellen, miteinander verbunden sind, und andererseits mehrere Busteilnehmer 6, 9, die mit den zwei Busleitungen 4 verbunden sind, um über den Bus, d.h. über die Busleitungen, miteinander zu kommunizieren. Dazu verwenden die Busteilnehmer Differenzspannungen zwischen den beiden Busleitungen, die mittels Transceivern erzeugt und ausgelesen und die mittels Bus-Controllern in entsprechende Daten (z.B. eine Folge von Datenbits) umgewandelt werden. Beispiele für die Busteilnehmer 6 sind Steuergräte eines Kraftfahrzeugs oder einer Maschine, die Steuerungsdaten übermitteln, oder Sensoren, die Sensordaten, etwa zu Steuergeräten, übermitteln. Der Begriff Busteilnehmer bezeichnet in dieser Anmeldung reguläre Busteilnehmer, denen der Zugriff auf den Bus erlaubt ist, im Gegensatz zu einem Angreifer, der unerlaubt auf den Bus zugreift.
  • Der Angreifer 8, etwa ein Gerät, das ebenfalls einen Transceiver bzw. zumindest einen Transmitter oder Receiver aufweist, hat physischen Zugang zum Bussystem und kann so eine Verbindung zu den Leitungen 4 herstellen. Somit ist der Angreifer 8 in der Lage, auf dem Bus gesendete Nachrichten mitzuhören und/oder selbst Nachrichten zu senden. Es ist auch denkbar, dass es einem Angreifer gelingt, auf einen der Busteilnehmer 6 eine manipulierte Software aufzuspielen. Ein so manipulierter Busteilnehmer kann als interner Angreifer angesehen werden.
  • Weiterhin ist eine ebenfalls mit dem Bus (d.h. mit den Busleitungen) verbundene Überwachungseinheit 7 dargestellt, die dazu dient zu erkennen, ob ein Angreifer versucht, Zugriff auf das Bussystem oder einen Busteilnehmer zu erhalten bzw. deren Betrieb zu stören. Die Überwachungseinheit 7 kann selbst ein regulärer Busteilnehmer sein, der um eine entsprechende Funktionalität ergänzt wurde.
  • 2 zeigt einen möglichen internen Aufbau einer Überwachungseinheit 7 bzw. eines Angreifers 8. Gezeigt sind ein Mikrocontroller (bzw. ein Mikroprozessor) 10, ein Bus-Controller 12 und ein Bus-Transceiver 14. Der Mikrocontroller 10 ist dazu eingerichtet, bestimmte Abläufe bzw. Verfahren zu implementieren, dazu kann der Mikrocontroller entsprechende Computerprogramme ausführen. Im Fall einer Überwachungseinheit kann dies insbesondere die Durchführung eines erfindungsgemäßen Verfahrens bzw. von Teilen davon sein. Im Fall eines Angreifers kann dies die Implementierung eines Angriffsversuchs, etwa entsprechend 3, sein. Mikrocontroller 10, Bus-Controller 12 und Bus-Transceiver können in einem Chip integriert sein.
  • Daten können vom Mikrocontroller 10 über eine oder mehrere Leitungen 16 an den Bus-Controller 12 übertragen werden, um diese auf dem Bus zu senden, bzw. vom Bus-Controller 12 über die eine oder die mehreren Leitungen 16 an den Mikrocontroller 10 übertragen werden, um diese vom Bus zu empfangen. Der Bus-Controller 12 erzeugt dazu aus zu sendenden Daten (z.B. Datenbits oder Datenbytes) Steuersignale für den Bus-Transceiver 14, der entsprechende Spannungspegel an den Busleitungen 4 erzeugt. Umgekehrt werden vom Bus-Transceiver 14 Spannungspegel, die an den Busleitungen 4 anliegen, in entsprechende logische Signale umgesetzt, die vom Bus-Transceiver 12 ausgewertet werden, um Daten zu empfangen. Soweit entspricht der Aufbau einem gewöhnlichen Busteilnehmer.
  • Eine Fehlerkorrektur oder ähnliches erfolgt entsprechend dem vorstehend beschriebenen Aufbau vorzugsweise durch den Bus-Controller 12 und ist für den Mikrocontroller 10 nicht sichtbar. Es sind daher zusätzliche eine oder mehrere Leitungen 18 vorgesehen, die den Mikrocontroller 10 direkt mit dem Transceiver 14 verbinden. Dies ermöglicht es dem Mikrocontroller, Spannungssignale auf den Busleitungen 4 direkt zu auszulesen und/oder zu erzeugen, insbesondere können also auf Fehlersignale erkannt werden (Überwachungseinheit) oder Sendesignale erzeugt werden, die Spannungssignale eines anderen Busteilnehmers überdecken (Angreifer). Auf einen Bus-Controller könnte hier auch verzichtet werden, d.h. der Bus-Controller 12 (einschließlich der Leitung 16) ist optional.
  • Anstelle des Bus-Transceivers ist auch die Verwendung einer generischen Schnittstelle (z.B. im Mikrocontroller integriert), die die an den Busleitungen anliegenden Spannungen auslesen kann und selbst Spannungspegel an den Busleitungen erzeugen kann, möglich; eine solche ist beispielsweise in der DE 10 2013 210 182 A1 beschrieben.
  • 3 illustriert in einer oberen und einer unteren Teilfigur mögliche Angriffsvektoren auf einen Busteilnehmer 6 des Bussystems, das beispielhaft ein CAN-Bussystem ist. Hierbei überdeckt bzw. überschreibt der Angreifer 8 gezielt Spannungssignale, die vom Busteilnehmer 6 auf dem Bus gesendet werden. Letztendliches Ziel des Angreifers ist es, durch Wiederholen der in 3 illustrierten Vorgehensweisen den Busteilnehmer bzw. dessen Bus-Controller, der das überschriebene Signal als Fehler interpretiert, dazu zu bringen, in einen inaktiven Sende-Zustand zu schalten, in dem dieser keine Nachrichten mehr auf dem Bus sendet, so dass der Angreifer an seiner statt Nachrichten senden kann. Ein solches Schalten bei Erreichen einer bestimmten maximalen Fehlerzahl in einen inaktiven Sende-Zustand kann in der Busspezifikation, z.B. beim CAN-Bus, wo er als „bus off“ bezeichnet wird, vorgesehen sein, um eine Fehlerausbreitung zu vermeiden.
  • Es sind in zwei Reihen für den Busteilnehmer 6 (obere Reihe) und den Angreifer 8 (untere Reihe) über einer Zeitachse 20 jeweils die Abfolgen von logischen Bits eingezeichnet, die gemäß CAN-Busspezifikation den Spannungssignalen entsprechen, die vom Busteilnehmer bzw. Angreifer auf den Busleitungen erzeugt werden. Hierbei wird zwischen einem „dominanten Zustand“, in dem eine Spannungsdifferenz zwischen den Busleitungen besteht bzw. erzeugt wird (mindestens 2 V beim CAN-Bus), und einem „rezessive Zustand“, in dem keine Spannungsdifferenz zwischen den Busleitungen besteht bzw. erzeugt wird, unterschieden. Der dominante Zustand entspricht einem Bit mit logischem Wert „0“, der rezessive Zustand entspricht einem Bit mit logischem Wert „1“.
  • In der oberen Teilfigur überschreibt der Angreifer 8 ein Bit 22 mit logischem Wert „1“ (rezessiver Zustand, Spannungsdifferenz 0 V) des Busteilnehmers 6 durch ein Bit 23 mit logischem Wert „0“ (dominanter Zustand, Spannungsdifferenz > 2 V) durch Anlegen eines entsprechenden Spannungspegels. Der Busteilnehmer 6 bzw. dessen Bus-Controller erkennt daraufhin, dass ein Sendefehler vorliegt, da das an den Busleitungen anliegende Spannungssignal nicht dem gesendeten entspricht. Daraufhin sendet der Busteilnehmer bzw. dessen Bus-Controller ein Fehlersignal bzw. Sendefehler-Signal 24 („error flag“), das aus 6 Bits mit logischem Wert „0“ besteht. Dies dient dazu, andere Busteilnehmer bzw. deren Bus-Controller zu informieren, dass die Nachricht fehlerhaft ist.
  • Der Busteilnehmer 6 implementiert ein Sendefehler-Zählverfahren, d.h. der Busteilnehmer 6 bzw. dessen Bus-Controller erhöht, neben dem Senden des Sendefehler-Signals, bei Erkennen des Fehlers einen internen Fehlerzähler (im CAN-Bus um 8). Bei Erreichen einer Maximal-Sendefehleranzahl (im CAN-Bus der Wert 256) schaltet der Busteilnehmer in den inaktiven Sende-Zustand, so dass der Angreifer an seiner statt Nachrichten senden könnte. Dies kann festgestellt werden, indem die Überwachungseinheit 7 die Spannungssignale an den Busleitungen ausliest und die Fehlerzählung des Busteilnehmers 6 nachvollzieht bzw. mitzählt, um zu erkennen, wann der Busteilnehmer 6 in den inaktiven Sende-Zustand schaltet und, falls weiterhin Nachrichten mit einer dem Busteilnehmer zugeordneten Nachrichten-ID gesendet werden, den Angriff zu erkennen.
  • Der Angreifer 8 kann weitergehend dazu eingerichtet sein, ein korrektes Nachvollziehen der Fehlerzählung des Busteilnehmers 6 durch die Überwachungseinheit 7 zu verhindern, indem er das Fehlersignal des Busteilnehmers 6 durch ein eigenes Spannungssignal überdeckt. Das ist in der unteren Teilfigur illustriert. Nachdem der Angreifer 8 ein Bit 23 mit logischem Wert „0“ sendet, um das Bit 22 des mit logischem Wert „1“ Busteilnehmers 6 zu überschreiben, sendet der Busteilnehmer, der von einem Fehler ausgeht bzw. einen solchen erkennt, ein Fehlersignal 26, das hier aus 6 Bits mit logischem Wert „1“ besteht (sogenanntes „PASSIVE ERROR FLAG“ im CAN-Bus, in welchem ein solches gesendet wird, wenn die interne Fehlerzählung des Busteilnehmers den Wert 128 überschreitet).
  • Das Fehlersignal 26 kann vom Angreifer 8 durch eine Folge von Bits 27 überdeckt bzw. überschrieben werden, so dass das Fehlersignal auf dem Bus, insbesondere für die Überwachungseinheit, nicht sichtbar ist. Dies führt dazu, dass die Überwachungseinheit die Fehlerzählung nicht nachvollziehen kann, während der Busteilnehmer 6 seine interne Fehlerzählung weiter erhöht und, bei mehrmaliger Wiederholung des Angriffs, letztendlich in den inaktiven Sende-Zustand schaltet, ohne dass dies von der Überwachungseinheit erkannt wird.
  • 4 illustriert einen Effekt eines Angriffsversuchs entsprechend 3. Es sind wieder zwei Reihen für vom Busteilnehmer 6 und vom Angreifer 8 über einer Zeitachse 20 aufgetragen, wobei in 4 nicht mehr einzelne gesendete Bits gezeigt werden, sondern lediglich Nachrichten bzw. Abschnitte von Nachrichten, die im Allgemeinen mehrere Bits umfassen (siehe 3) gezeigt sind.
  • Wie erläutert sendet der Busteilnehmer 6 eine erste Nachricht 301, wobei der Angreifer 8 ein Bit überschreibt, so dass der Busteilnehmer 6 ein Fehlersignal 261 sendet, das wiederum durch ein Spannungssignal 271 vom Angreifer 8 überdeckt wird. Der Busteilnehmer 6 wiederholt daraufhin das Senden der gleichen Nachricht (d.h. gleicher Dateninhalt) als erste erneute Nachricht 321, um deren Kommunikation auf dem Bus sicherzustellen. Der Angreifer 8 versucht beispielhaft nicht, dass Senden der erneuten Nachricht 321 zu stören bzw. diese zu überdecken.
  • Nach einer gewissen Zeitspanne, z.B. einer Nachrichten-Zeitperiode 34 des Busteilnehmers 6, wiederholt sich dieser Vorgang, d.h. der Busteilnehmer 6 sendet eine zweite Nachricht 302, wobei der Angreifer 8 ein Bit überschreibt, so dass der Busteilnehmer 6 ein Fehlersignal 262 sendet, das durch ein Spannungssignal 272 vom Angreifer 8 überdeckt wird. Der Busteilnehmer 6 wiederholt wieder das Senden der gleichen Nachricht als zweite erneute Nachricht 322.
  • Effekt des Angriffs ist also, dass die Anzahl bzw. Häufigkeit der Nachrichten, die dem Busteilnehmer zugeordnet sind, gegenüber der üblichen Anzahl, z.B. eine Nachricht pro Nachrichten-Zeitperiode 34 des Busteilnehmers, erhöht wird, z.B. verdoppelt (hier ist anzumerken, dass das Überdeckungssignal des Angreifers die gleiche Nachrichten-ID aufweist wie die überdeckte Nachricht, also auch dem Busteilnehmer zugeordnet ist). Falls der Angreifer auch die erneuten Nachrichten überschreiben sollte, würde dies ebenso zu einer Erhöhung der Anzahl der dem Busteilnehmer zugeordneten Nachrichten führen. Im Rahmen bevorzugter Ausführungen der Erfindung kann dieser Effekt erkannt werden und es können somit entsprechende Angriffsversuche festgestellt werden.
  • 5 zeigt ein Ablaufdiagramm gemäß einer bevorzugten Ausführungsform des Verfahrens zum Erkennen eines Angriffs auf einen zu sichernden Busteilnehmer.
  • Im bevorzugten Schritt 110 wird während eines nicht manipulierten Betriebs des Bussystems, d.h. während sichergestellt ist, dass kein Angriff vorliegt, z.B. während der Herstellung und/oder einer Konfiguration des Bussystems, eine durchschnittliche Sende-Häufigkeit und optional eine Varianz (oder Standardabweichung) von Nachrichten durch den (zu sichernden) Busteilnehmer bestimmt. Die Sende-Häufigkeit kann aus etwa aus Konfigurationsdaten des Busteilnehmers bestimmt werden, z.B. wenn der Busteilnehmer konfiguriert ist, in bestimmten Zeitabständen eine oder eine bestimmte Zahl von Nachrichten zu senden, etwa ein Sensor, der regelmäßig Messwerte sendet. Eine andere Möglichkeit besteht darin, während des nicht manipulierten Betriebs die vom Busteilnehmer gesendeten Nachrichten zu erfassen und aus den erfassten Sende-Zeitpunkten die durchschnittliche Sende-Häufigkeit und optional die Varianz zu berechnen. Dies erfolgt vorzugsweise durch die Überwachungseinheit.
  • In Schritt 120 wird eine (obere) Häufigkeitsgrenze vorgegeben. Dies kann anhand von gespeicherten Werten erfolgen. Alternativ, wenn Schritt 110 durchgeführt wurde, kann die Häufigkeitsgrenze basierend auf der bestimmten durchschnittlichen Sende-Häufigkeit und gegebenenfalls der bestimmten Varianz erfolgen. Beispielsweise kann die Häufigkeitsgrenze als bestimmtes Vielfaches (nicht notwendigerweise ganzzahlig) der durchschnittliche Sende-Häufigkeit vorgegeben werden, oder als die durchschnittliche Sende-Häufigkeit plus ein Vielfaches der Varianz.
  • In Schritt 130 werden durch eine mit dem Bus verbundene Überwachungseinheit Nachrichten, die eine dem Busteilnehmer zugeordnete Nachrichten-ID aufweisen (bzw. die dem Busteilnehmer zugeordnet sind), und dem Busteilnehmer zugeordnete Sendefehler-Signale erfasst. Da der Busteilnehmer, nachdem er einen Sendefehler erkennt, unmittelbar beginnt, ein Sendefehler-Signal zu senden, kann dieses dem Busteilnehmer anhand der Nachrichten-ID der (fehlerhaften) Nachricht zugeordnet werden.
  • In Schritt 140 wird durch die Überwachungseinheit entsprechend dem Sendefehler-Zählverfahren, das der Busteilnehmer implementiert und das der Überwachungseinheit bekannt ist, eine Sendefehleranzahl (in der Überwachungseinheit, unabhängig von der Fehlerzählung im Busteilnehmer) gebildet. Es wird also mit jedem Auftreten die Sendefehleranzahl, die von der Überwachungseinheit mitgezählt wird, entsprechend dem Sendefehler-Zählverfahren erhöht.
  • In Schritt 150 wird durch die Überwachungseinheit eine Sende-Häufigkeit von dem Busteilnehmer zugeordneten Nachrichten bestimmt. Dies erfolgt im Prinzip fortlaufend, z.B. mit jeder neuen dem Busteilnehmer zugeordneten Nachricht oder in bestimmten Zeitabständen. Selbstverständlich sollte, falls Schritt 110 durchgeführt wird, die Berechnungsweise der durchschnittlichen Häufigkeit derjenigen der Sende-Häufigkeit entsprechen.
  • In Schritt 160 wird von der Überwachungseinheit geprüft, ob die in Schritt 150 bestimmte Sende-Häufigkeit über der vorgegebenen Häufigkeitsgrenze liegt und gleichzeitig die in Schritt 140 bestimmte Sendefehleranzahl unter der Maximal-Sendefehleranzahl (die durch die Busspezifikation vorgegeben ist) liegt. Wenn dies der Fall ist, wird in Schritt 180 ein möglicher Angriff auf den Busteilnehmer erkannt.
  • Im optionalen Schritt 170 kann zusätzlich (durch die Überwachungseinheit) geprüft werden, ob die Sendefehleranzahl über der Maximal-Sendefehleranzahl ist oder über dieser liegt und ob, während dies der Fall ist, Nachrichten, die dem Busteilnehmer zugeordnet sind (erkennbar an der Nachrichten-ID), auf dem Bus gesendet werden. Wenn dies der Fall ist, wird ebenso ein möglicher Angriff auf den Busteilnehmer erkannt (Schritt 180).
  • Wenn die Bedingung des Schritts 160 und gegebenenfalls die Bedingung des Schritts 170 nicht erfüllt sind, wird mit Schritt 130 fortgefahren (Pfeil 175).
  • Im bevorzugten Schritt 190 können, nachdem ein möglicher Angriff erkannt wurde, entsprechende Maßnahmen eingeleitet werden. Dies kann umfassen zu prüfen, ob ein tatsächlicher Angriff vorliegt oder lediglich eine Fehlfunktion, die ähnliche Effekte hatte, z.B. indem geprüft wird, ob ein Gerät des Angreifers mit dem Bus verbunden ist, oder ob eine Software eines anderen oder des zu sichernden Busteilnehmers manipuliert wurde. Vorzugsweise umfasst Schritt 190 ein Senden einer Warn-Nachricht, die den möglichen Angriff anzeigt, durch die Überwachungseinheit auf dem Bus. Andere Busteilnehmer können dann beispielsweise in einen Zustand reduzierter Funktionalität schalten oder Nachrichten mit Nachrichten-IDs des möglicherweise angegriffenen Busteilnehmers ignorieren.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • DE 102013210182 A1 [0029]

Claims (11)

  1. Verfahren zum Erkennen eines Angriffs auf einen zu sichernden Busteilnehmer (6) eines Bussystems (2), wobei der Busteilnehmer (6) dazu konfiguriert ist, Nachrichten mit dem Busteilnehmer zugeordneten Nachrichten-Identifikationen auf einem Bus des Bussystems (2) zu senden, ein Sendefehler-Zählverfahren zu implementieren, gemäß dem der Busteilnehmer (6) bei Erkennen eines Sendefehlers diesen durch ein Sendefehler-Signal auf dem Bus anzeigt, und bei Überschreiten einer vorbestimmten Maximal-Sendefehleranzahl in einen inaktiven Sende-Zustand zu schalten, in dem der Busteilnehmer (6) keine Nachrichten sendet; wobei durch eine mit dem Bus verbundene Überwachungseinheit (7) Nachrichten, die eine dem Busteilnehmer (6) zugeordnete Nachrichten-Identifikation aufweisen, und dem Busteilnehmer zugeordnete Sendefehler-Signale erfasst werden (130); wobei durch die Überwachungseinheit (7) eine Sendefehleranzahl entsprechend dem Sendefehler-Zählverfahren gebildet wird (140); und wobei durch die Überwachungseinheit (7) eine Häufigkeit der Nachrichten, die eine dem Busteilnehmer zugeordnete Nachrichten-Identifikation aufweisen, bestimmt wird (150); wobei ein möglicher Angriff erkannt wird (180), wenn die Überwachungseinheit (7) feststellt, dass die Sendefehleranzahl unter der Maximal-Sendefehleranzahl liegt und die Häufigkeit über einer vorgegebenen Häufigkeitsgrenze liegt (160).
  2. Verfahren nach Anspruch 1, wobei, während sichergestellt ist, dass kein Angriff vorliegt, eine durchschnittliche Sendehäufigkeit von Nachrichten des Busteilnehmers (6) bestimmt wird (110); wobei die Häufigkeitsgrenze als Produkt eines Häufigkeits-Multiplikators mit der durchschnittlichen Sendehäufigkeit vorgegeben wird (120).
  3. Verfahren nach Anspruch 1, wobei, während sichergestellt ist, dass kein Angriff vorliegt, eine durchschnittliche Sendehäufigkeit und eine Varianz der Sendehäufigkeit von Nachrichten des Busteilnehmers (6) bestimmt werden (110); wobei die Häufigkeitsgrenze als Summe der durchschnittlichen Sendehäufigkeit mit dem Produkt eines Varianz-Multiplikators mit der Varianz vorgegeben wird (120).
  4. Verfahren nach einem der vorstehenden Ansprüche, wobei ein möglicher Angriff erkannt wird, wenn die Überwachungseinheit (7) feststellt, dass die Sendefehleranzahl über der Maximal-Sendefehleranzahl liegt und weiterhin Nachrichten mit einer Nachrichten-Identifikation, die dem Busteilnehmer (6) zugeordnet ist, gesendet werden (170).
  5. Verfahren nach einem der vorstehenden Ansprüche, wobei die Häufigkeit bestimmt wird als Anzahl von Nachrichten, die eine dem Busteilnehmer zugeordnete Nachrichten-Identifikation aufweisen, innerhalb einer bestimmten Zeitspanne oder als Kehrwert einer zeitlichen Länge, innerhalb derer eine bestimmte Anzahl von Nachrichten, die eine dem Busteilnehmer zugeordnete Nachrichten-Identifikation aufweisen, auftritt.
  6. Verfahren nach einem der vorstehenden Ansprüche, wobei, wenn ein möglicher Angriff erkannt wird, durch die Überwachungseinheit (7) eine Warn-Nachricht auf dem Bus gesendet wird, die anzeigt, dass ein möglicher Angriff vorliegt (190); wobei die Warn-Nachricht bevorzugt Informationen über den betroffenen Busteilnehmer (6) und/oder diesem zugeordnete Nachrichten-Identifikationen enthält.
  7. Überwachungseinheit (7) für ein Bussystem (2), die mit einem Bus des Bussystems (2) verbindbar oder verbunden ist und dazu eingerichtet ist, Nachrichten, die eine einem zu sichernden Busteilnehmer (6) zugeordnete Nachrichten-Identifikation aufweisen, und dem Busteilnehmer zugeordnete Sendefehler-Signale zu erfassen (130); eine Sendefehleranzahl entsprechend dem Sendefehler-Zählverfahren, das vom Busteilnehmer implementiert wird, zu bilden (140); eine Häufigkeit der Nachrichten, die eine dem Busteilnehmer (6) zugeordnete Nachrichten-Identifikation aufweisen, zu bestimmen (150); die Sendefehleranzahl mit einer Maximal-Sendefehleranzahl und die Häufigkeit mit einer vorgegebenen Häufigkeitsgrenze zu vergleichen (160); und einen möglichen Angriff zu erkennen (180), wenn beim Vergleich festgestellt wird, dass die Sendefehleranzahl unter der Maximal-Sendefehleranzahl liegt und die Häufigkeit über der vorgegebenen Häufigkeitsgrenze liegt.
  8. Überwachungseinheit nach Anspruch 7, die weiterhin dazu eingerichtet ist, während sichergestellt ist, dass kein Angriff vorliegt, die Sende-Zeitpunkte von Nachrichten zu erfassen, die eine dem Busteilnehmer (6) zugeordnete Nachrichten-Identifikation aufweisen; und eine durchschnittliche Sendehäufigkeit und/oder eine Varianz der Sendehäufigkeit von Nachrichten des Busteilnehmers (6) basierend auf den erfassten Sende-Zeitpunkten zu berechnen.
  9. Überwachungseinheit nach Anspruch 8, die weiterhin dazu eingerichtet ist, die Häufigkeitsgrenze basierend auf der durchschnittlichen Sendehäufigkeit und/oder der Varianz zu bestimmen bzw. vorzugeben.
  10. Überwachungseinheit nach einem der Ansprüche 7 bis 9, die weiterhin dazu eingerichtet ist, eine Warn-Nachricht auf dem Bus zu senden (190), wenn der mögliche Angriff erkannt wird (170, 180).
  11. Bussystem (2), das mehrere Busteilnehmer (6) und eine Überwachungseinheit (7) nach einem der Ansprüche 7 bis 10 umfasst, die mit einem Bus des Bussystems (2) verbunden sind, wobei die Überwachungseinheit (7) dazu eingerichtet ist, wenigstens einen der Busteilnehmer (6) zu sichern.
DE102022207911.6A 2022-08-01 2022-08-01 Verfahren zum Erkennen eines Angriffs auf einen zu sichernden Busteilnehmer, Überwachungseinheit und Bussystem Pending DE102022207911A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102022207911.6A DE102022207911A1 (de) 2022-08-01 2022-08-01 Verfahren zum Erkennen eines Angriffs auf einen zu sichernden Busteilnehmer, Überwachungseinheit und Bussystem

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102022207911.6A DE102022207911A1 (de) 2022-08-01 2022-08-01 Verfahren zum Erkennen eines Angriffs auf einen zu sichernden Busteilnehmer, Überwachungseinheit und Bussystem

Publications (1)

Publication Number Publication Date
DE102022207911A1 true DE102022207911A1 (de) 2024-02-01

Family

ID=89508555

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102022207911.6A Pending DE102022207911A1 (de) 2022-08-01 2022-08-01 Verfahren zum Erkennen eines Angriffs auf einen zu sichernden Busteilnehmer, Überwachungseinheit und Bussystem

Country Status (1)

Country Link
DE (1) DE102022207911A1 (de)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013210182A1 (de) 2013-05-29 2014-12-04 Robert Bosch Gmbh Verfahren zur Bereitstellung einer generischen Schnittstelle sowie Mikrocontroller mit generischer Schnittstelle

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013210182A1 (de) 2013-05-29 2014-12-04 Robert Bosch Gmbh Verfahren zur Bereitstellung einer generischen Schnittstelle sowie Mikrocontroller mit generischer Schnittstelle

Similar Documents

Publication Publication Date Title
EP3278529B1 (de) Angriffserkennungsverfahren, angriffserkennungsvorrichtung und bussystem für ein kraftfahrzeug
DE10333790B4 (de) ID-Registrierungsverfahren für einen Reifenluftdrucksensor, ID-Registrierungssystem, Reifenluftdrucküberwachungssystem, Reifenluftdrucksensor und Smart-Steuerungssystem
EP1298850B1 (de) Verfahren und Vorrichtung zur Überwachung eines Bussystems und Bussystem
DE112012006879B4 (de) Neuer Ansatz zum Handhaben eines Controller-Area-Network Bus-Off
DE102018122143A1 (de) Systeme und verfahren zur eindringungserkennung in das netzwerk im fahrzeug
DE112018001489T5 (de) Fahrzeuggebundene Kommunikationsvorrichtung, Computerprogramm und Nachrichtenermittlungsverfahren
DE102018114739A1 (de) Betriebsprotokoll und -verfahren des Fahrzeugnetzwerks
DE112019006487B4 (de) Elektronische Steuereinheit, elektronisches Steuersystem und Programm
WO2018077528A1 (de) Erkennung von manipulationen in einem can-netzwerk mittels überprüfung von can-identifiern
DE102019217030A1 (de) Zuweisen von bus-off-angriffen auf der basis von error-frames
DE112017006282T5 (de) Steuervorrichtung, Steuersystem, Steuerverfahren und Speichermedium
EP2795848A1 (de) Teilnehmerstation eines bussystems und verfahren zur übertragung von nachrichten zwischen teilnehmerstationen eines bussystems
EP3682610A1 (de) Verfahren und vorrichtung zum erkennen eines angriffs auf ein serielles kommunikationssystem
DE102020214099A1 (de) Verfahren zur Erkennung eines unerlaubten physischen Zugriffs auf ein Bussystem
DE112018003971T5 (de) Detektor, Detektionsverfahren und Detektionsprogramm
DE102020208536A1 (de) Gateway-vorrichtung, abnormitätsüberwachungsverfahren und speichermedium
DE102022207911A1 (de) Verfahren zum Erkennen eines Angriffs auf einen zu sichernden Busteilnehmer, Überwachungseinheit und Bussystem
DE102020213893A1 (de) Verfahren zur Erkennung eines unerlaubten physischen Zugriffs auf ein Bussystem
DE102010028485B4 (de) Verfahren und Vorrichtung zur Absicherung von über eine Schnittstelle zu übertragenden Datenpaketen
DE112014003345B4 (de) Datenausschlussvorrichtung
DE102012219093A1 (de) Cyber-Sicherheit in einem Kraftfahrzeugnetzwerk
EP3393830B1 (de) Verfahren und vorrichtung zur übertragung von daten von einer an einem rad eines fahrzeuges angeordneten radeinheit zu einer zentraleinheit des fahrzeuges
DE102017209806A1 (de) Verfahren und Vorrichtung zum Erkennen von Angriffen auf einen Feldbus
DE102021208459A1 (de) Verfahren zur authentischen Datenübertragung zwischen Steuergeräten eines Fahrzeugs, Anordnung mit Steuergeräten, Computerprogramm und Fahrzeug
DE112020005980T5 (de) Ermittlungsvorrichtung, Ermittlungsprogramm und Ermittlungsverfahren