DE102019133334A1 - System and method for increasing security in an E / E system - Google Patents

System and method for increasing security in an E / E system Download PDF

Info

Publication number
DE102019133334A1
DE102019133334A1 DE102019133334.2A DE102019133334A DE102019133334A1 DE 102019133334 A1 DE102019133334 A1 DE 102019133334A1 DE 102019133334 A DE102019133334 A DE 102019133334A DE 102019133334 A1 DE102019133334 A1 DE 102019133334A1
Authority
DE
Germany
Prior art keywords
data
security policy
security
components
vehicle
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
DE102019133334.2A
Other languages
German (de)
Inventor
Daniel Schreckling
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.)
Bayerische Motoren Werke AG
Original Assignee
Bayerische Motoren Werke AG
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 Bayerische Motoren Werke AG filed Critical Bayerische Motoren Werke AG
Priority to DE102019133334.2A priority Critical patent/DE102019133334A1/en
Publication of DE102019133334A1 publication Critical patent/DE102019133334A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies

Abstract

Die vorliegende Erfindung umfasst System und zur Erhöhung der Sicherheit in einem E/E, elektrisch-elektronischem, System im Fahrzeug. Das System umfasst eine Recheneinheit, die eingerichtet ist, zumindest eine Sicherheitsrichtlinie mit Bezug auf den Datenaustausch zwischen einer Mehrzahl an E/E-Komponenten umzusetzen, wobei jede E/E-Komponente Datenquelle und/oder Datensenke sein kann. Die Recheneinheit ist zudem eingerichtet, aus einer Vielzahl an möglichen Datenflüssen zwischen zumindest zwei E/E-Komponenten einen Datenfluss zu identifizieren, die die Sicherheitsrichtlinie verletzt und für den identifizierten Datenfluss der die Sicherheitsrichtlinie verletzt einen Konflikt zu generieren.The present invention comprises systems and for increasing the safety in an E / E, electrical-electronic, system in the vehicle. The system comprises a processing unit which is set up to implement at least one security policy with regard to the data exchange between a plurality of E / E components, wherein each E / E component can be a data source and / or a data sink. The processing unit is also set up to identify a data flow from a large number of possible data flows between at least two E / E components that violates the security policy and to generate a conflict for the identified data flow that violates the security policy.

Description

Die vorliegende Erfindung betrifft ein System und ein Verfahren, welches die Sicherheit in einem E/E-System im Fahrzeug aufgrund der Datenflüsse im E/E System garantiert.The present invention relates to a system and a method which guarantees the safety in an E / E system in the vehicle on the basis of the data flows in the E / E system.

Das E/E-System (elektrisch-elektronisches System) umfasst insbesondere Steuerungs-, Regelungs-, Überwachungs- und Diagnosefunktionen im Fahrzeug. Es umfasst die Kraftfahrzeugelektrik und -elektronik, die Vernetzung, die Schnittstellen und die optimale Strom-, Signal- und Datenverteilung zwischen der Vielzahl an E/E-Komponenten (z.B. Steuergeräte, Sensoren, Netzwerk, Diagnosesystem, Infotainmentsystem) sowie zu externen Komponenten (Integration mobiler Endgeräte, Car-to-Car-Kommunikation, Car-to-Infrastruktur-Kommunikation. Durch die Komplexität, die sich durch die Vielzahl an Komponenten des E/E-Systems mit Bezug auf die Datenerfassung, -speicherung und - verarbeitung und den Datenfluss zwischen den Komponenten ergibt, kommt es zunehmend zu Dateninkonsistenzen und fehlerhafter Datenverarbeitung. Durch die Schnittstellen zu externen Komponenten besteht die Gefahr von Angriffen bzw. Attacken von außen auf das E/E-System. Dadurch kann die Datensicherheit in E/E-Systemen beeinträchtigt werden.The E / E system (electrical-electronic system) includes, in particular, control, regulation, monitoring and diagnostic functions in the vehicle. It includes the vehicle electrics and electronics, the networking, the interfaces and the optimal distribution of power, signals and data between the multitude of E / E components (e.g. control units, sensors, network, diagnostic system, infotainment system) as well as to external components (integration mobile end devices, car-to-car communication, car-to-infrastructure communication - due to the complexity resulting from the multitude of components of the E / E system with regard to data acquisition, storage and processing and the data flow between the components, data inconsistencies and incorrect data processing are increasing. The interfaces to external components pose a risk of external attacks on the E / E system. This can impair data security in E / E systems .

Die Aufgabe der Erfindung besteht darin, eine Lösung bereitzustellen, die aufgrund der Datenflüsse im E/E System die Sicherheit im Fahrzeug garantiert.The object of the invention is to provide a solution that guarantees safety in the vehicle due to the data flows in the E / E system.

Diese Aufgabe wird erfindungsgemäß durch die Merkmale der unabhängigen Ansprüche gelöst. Bevorzugte Ausführungsformen sind Gegenstand der abhängigen Ansprüche.According to the invention, this object is achieved by the features of the independent claims. Preferred embodiments are the subject of the dependent claims.

Die vorstehend genannte Aufgabe wird durch ein System zur Erhöhung der Sicherheit in einem E/E, elektrisch-elektronischem, System im Fahrzeug gelöst, umfassend:

  • eine Recheneinheit, die eingerichtet ist:
    • - zumindest eine Sicherheitsrichtlinie mit Bezug auf den Datenaustausch zwischen einer Mehrzahl an E/E-Komponenten umzusetzen, wobei jede E/E-Komponente Datenquelle und/oder Datensenke sein kann;
    • - aus einer Vielzahl an möglichen Datenflüssen zwischen zumindest zwei E/E-Komponenten einen Datenfluss zu identifizieren, die die Sicherheitsrichtlinie verletzt; und
    • - für den identifizierten Datenfluss, der die Sicherheitsrichtlinie verletzt einen Konflikt zu generieren.
The above-mentioned object is achieved by a system for increasing safety in an E / E, electrical-electronic, system in the vehicle, comprising:
  • an arithmetic unit that is set up:
    • - to implement at least one security policy with regard to the data exchange between a plurality of E / E components, wherein each E / E component can be a data source and / or data sink;
    • - to identify a data flow that violates the security policy from a large number of possible data flows between at least two E / E components; and
    • - Generating a conflict for the identified data flow that violates the security policy.

Der Begriff Fahrzeug umfasst im Rahmen des Dokumentes mobile Verkehrsmittel, die dem Transport von Personen (Personenverkehr), Gütern (Güterverkehr) oder Werkzeugen (Maschinen oder Hilfsmittel) dienen. Insbesondere umfasst der Begriff Fahrzeug Kraftfahrzeuge sowie Kraftfahrzeuge, die zumindest teilweise elektrisch angetrieben sein können (Elektroauto, Hybridfahrzeuge).In the context of the document, the term vehicle includes mobile means of transport that are used to transport people (passenger transport), goods (freight transport) or tools (machines or aids). In particular, the term vehicle includes motor vehicles and motor vehicles that can be at least partially electrically driven (electric car, hybrid vehicles).

Das Fahrzeug kann von einem Fahrzeugführer gesteuert werden. Darüber hinaus oder alternativ dazu kann das Fahrzeug ein zumindest teilweise automatisiert fahrendes Fahrzeug sein. Unter dem Begriff „automatisiertes fahrendes Fahrzeug“ bzw. „automatisiertes Fahren“ kann im Rahmen des Dokuments ein Fahren mit automatisierter Längs- oder Querführung oder ein autonomes Fahren mit automatisierter Längs- und Querführung verstanden werden. Bei dem automatisierten Fahren kann es sich beispielsweise um ein zeitlich längeres Fahren auf der Autobahn oder um ein zeitlich begrenztes Fahren im Rahmen des Einparkens oder Rangierens handeln. Der Begriff „automatisiertes Fahren“ umfasst ein automatisiertes Fahren mit einem beliebigen Automatisierungsgrad. Beispielhafte Automatisierungsgrade sind ein assistiertes, teilautomatisiertes, hochautomatisiertes oder vollautomatisiertes Fahren. Diese Automatisierungsgrade wurden von der Bundesanstalt für Straßenwesen (BASt) definiert (siehe BASt-Publikation „Forschung kompakt“, Ausgabe 11/2012). Beim assistierten Fahren führt der Fahrer dauerhaft die Längs- oder Querführung aus, während das System die jeweils andere Funktion in gewissen Grenzen übernimmt. Beim teilautomatisierten Fahren übernimmt das System die Längs- und Querführung für einen gewissen Zeitraum und/oder in spezifischen Situationen, wobei der Fahrer das System wie beim assistierten Fahren dauerhaft überwachen muss. Beim hochautomatisierten Fahren übernimmt das System die Längs- und Querführung für einen gewissen Zeitraum, ohne dass der Fahrer das System dauerhaft überwachen muss; der Fahrer muss aber in einer gewissen Zeit in der Lage sein, die Fahrzeugführung zu übernehmen. Beim vollautomatisierten Fahren kann das System für einen spezifischen Anwendungsfall das Fahren in allen Situationen automatisch bewältigen; für diesen Anwendungsfall ist kein Fahrer mehr erforderlich. Die vorstehend genannten vier Automatisierungsgrade entsprechen den SAE-Level 1 bis 4 der Norm SAE J3016 (SAE - Society of Automotive Engineering). Ferner ist in der SAE J3016 noch der SAE-Level 5 als höchster Automatisierungsgrad vorgesehen, der in der Definition der BASt nicht enthalten ist. Der SAE-Level 5 entspricht einem fahrerlosen Fahren, bei dem das System während der ganzen Fahrt alle Situationen wie ein menschlicher Fahrer automatisch bewältigen kann.The vehicle can be controlled by a vehicle driver. In addition or as an alternative to this, the vehicle can be an at least partially automated driving vehicle. The term “automated driving vehicle” or “automated driving” can be understood in the context of the document to mean driving with automated longitudinal or lateral guidance or autonomous driving with automated longitudinal and lateral guidance. The automated driving can be, for example, driving on the motorway for a longer period of time or driving for a limited time as part of parking or maneuvering. The term “automated driving” includes automated driving with any degree of automation. Exemplary degrees of automation are assisted, partially automated, highly automated or fully automated driving. These degrees of automation were defined by the Federal Highway Research Institute (BASt) (see BASt publication “Research compact”, edition 11/2012). With assisted driving, the driver continuously performs the longitudinal or lateral guidance, while the system takes on the other function within certain limits. In the case of partially automated driving, the system takes over the longitudinal and lateral guidance for a certain period of time and / or in specific situations, whereby the driver has to continuously monitor the system as with assisted driving. In the case of highly automated driving, the system takes over the longitudinal and lateral guidance for a certain period of time without the driver having to constantly monitor the system; however, the driver must be able to take control of the vehicle within a certain period of time. With fully automated driving, the system can automatically cope with driving in all situations for a specific application; a driver is no longer required for this application. The four degrees of automation mentioned above correspond to SAE levels 1 to 4 of the SAE J3016 standard (SAE - Society of Automotive Engineering). In addition, SAE J3016 provides SAE level 5 as the highest degree of automation, which is not included in the definition of BASt. SAE level 5 corresponds to driverless driving, in which the system can automatically cope with all situations like a human driver during the entire journey.

Der Begriff Datensicherheit umfasst im Rahmen dieses Dokuments technische Maßnahmen und Aspekte, die dem Schutz von Daten mit Bezug auf die Vertraulichkeit der Daten, der Datenintegrität, und der Verfügbarkeit und Authentizität der Daten.In the context of this document, the term data security includes technical measures and aspects that relate to the protection of data the confidentiality of the data, the data integrity, and the availability and authenticity of the data.

Der Begriff E/E (elektrisch-elektronisches) System umfasst im Rahmen dieses Dokuments die Fahrzeugelektrik, die Fahrzeugelektronik, die Vernetzung des Fahrzeugs, die Schnittstellen zum bzw. vom Fahrzeug, sowie deren Strom-, Signal- und Datenübertragung bzw. -verarbeitung über typische Kommunikationsverbindungen wie z.B. Ethernet, CAN, FR (FlexRay), etc. Somit umfasst der Begriff E/E-Komponente im Rahmen dieses Dokuments sämtliche Komponenten des E/E-Systems wie z.B. Sensoren, Aktoren, Steuergeräte, Gateways, Schnittstellen wie z.B. USB (Universal Serial Bus) - Schnittstellen, OBD (On-Board-Diagnose)-Schnittstellen, TCU (Telematics Control Unit bzw. Telematiksteuergerät), Head-Unit, BLE (Bluetooth Low Energy), etc.In the context of this document, the term E / E (electrical-electronic) system includes vehicle electrics, vehicle electronics, the networking of the vehicle, the interfaces to and from the vehicle, as well as their power, signal and data transmission and processing via typical Communication connections such as Ethernet, CAN, FR (FlexRay), etc. Thus, the term E / E component in this document includes all components of the E / E system such as sensors, actuators, control devices, gateways, interfaces such as USB ( Universal Serial Bus) interfaces, OBD (on-board diagnosis) interfaces, TCU (Telematics Control Unit or telematics control unit), Head-Unit, BLE (Bluetooth Low Energy), etc.

Eine Sicherheitsrichtlinie bzw. Security Policy umfasst im Rahmen dieses Dokuments eine Sicherheitsrichtlinie mit Bezug auf die Vertraulichkeit und/oder Integrität und/oder Verfügbarkeit und/oder Authentizität von Daten und/oder die Flussziele, -quellen und Flussstationen von Daten, die mit Bezug auf das E/E-System zwischen zwei oder mehreren E/E-Komponenten bzw. über zumindest eine E/E-Komponente ausgetauscht werden.Within the scope of this document, a security policy or security policy comprises a security policy with reference to the confidentiality and / or integrity and / or availability and / or authenticity of data and / or the flow destinations, sources and flow stations of data that are related to the E / E system can be exchanged between two or more E / E components or via at least one E / E component.

Der Begriff Datenfluss umfasst im Rahmen dieses Dokuments die Übertragung von Daten von einer E/E-Komponente an eine andere E/E-Komponente, von einer E/E Komponente an eine Software- oder Hardwarekomponente innerhalb einer E/E Komponente oder zwischen zwei Software- oder Hardwarekomponenten innerhalb einer E/E Komponente. Der Datenfluss kann eine Übertragung über eine E/E-Komponente umfassen (z.B. Datenübertragung zwischen Luftschnittstelle bzw. weitere typische Kommunikationsverbindungen wie Ethernet, CAN, FR, etc.) umfassen. Jeder Datenfluss kann statisch sein. Dies bedeutet, dass eine Sicherheitsrichtlinie beim Austritt einer Nachricht aus einer Datenquelle (die E/E-Komponente ist) und/oder beim Eintritt in eine Datensenke (die E/E-Komponente ist) überprüft wird. Darüber hinaus oder alternativ dazu kann ein Datenfluss dynamisch sein. In diesem Fall wird an jede Nachricht, die im E/E-System übertragen wird, eine oder mehrere für den jeweiligen Pfad relevante Sicherheitsrichtlinie hinzugefügt. Dies garantiert eine dynamische Sicherstellung der Einhaltung von Sicherheitsrichtlinien zu jeder Nachricht.In the context of this document, the term data flow encompasses the transfer of data from an E / E component to another E / E component, from an E / E component to a software or hardware component within an E / E component or between two pieces of software - or hardware components within an E / E component. The data flow can include a transmission via an E / E component (e.g. data transmission between the air interface or other typical communication connections such as Ethernet, CAN, FR, etc.). Any data flow can be static. This means that a security policy is checked when a message exits a data source (which is the E / E component) and / or when it enters a data sink (which is the E / E component). In addition or as an alternative to this, a data flow can be dynamic. In this case, one or more security guidelines relevant for the respective path are added to each message that is transmitted in the E / E system. This guarantees dynamic compliance with security guidelines for every message.

Der Begriff Konflikt umfasst im Rahmen dieses Dokuments die Erkennung einer Verletzung zumindest einer Sicherheitsrichtlinie. Der Konflikt kann Informationen darüber umfassen, auf welchem Pfad die Verletzung stattgefunden hat und welche Bedingung bzw. Bedingungen der zumindest einen Sicherheitsrichtlinie verletzt wurden.In the context of this document, the term conflict encompasses the detection of a violation of at least one security policy. The conflict can include information about the path on which the violation took place and which condition or conditions of the at least one security policy were violated.

Das System umfasst eine Recheneinheit, die eingerichtet ist, zumindest eine Sicherheitsrichtlinie mit Bezug auf den Datenaustausch zwischen einer Mehrzahl an E/E-Komponenten zu empfangen. Jede E/E-Komponente kann eine Datenquelle und/oder eine Datensenke und/oder eine Kommunikationsverbindung zwischen einer Datenquelle und/oder einer Datensenke sein.The system comprises a processing unit which is set up to receive at least one security policy with reference to the data exchange between a plurality of E / E components. Each E / E component can be a data source and / or a data sink and / or a communication link between a data source and / or a data sink.

Die Recheneinheit ist insbesondere eingerichtet, aus einer Vielzahl an möglichen Datenflüssen, die zwischen der Vielzahl an E/E-Komponenten stattfinden können, einen Datenfluss zu identifizieren, die eine bzw. die zumindest eine Sicherheitsrichtlinie verletzt.The processing unit is set up in particular to identify a data flow from a multitude of possible data flows that can take place between the multitude of E / E components that violates one or the at least one security guideline.

Die Recheneinheit ist zudem eingerichtet, für den identifizierten Datenfluss, der die zumindest eine Sicherheitsrichtlinie verletzt, einen Konflikt zu generieren. Der Konflikt kann beispielsweise zur Laufzeit in den E/E-Komponenten identifiziert werden. Dies kann erfolgen, indem in den entsprechenden E/E-Komponenten, beispielsweise in einer Datensenke (z.B. Steuergerät), während der Laufzeit zumindest eine Sicherheitsrichtlinie, die an den von einer Datenquelle empfangenen Daten hängen bzw. mit den von einer Datenquelle empfangenen Daten übermittelt wurden, prüfen und mit potentiellen Sicherheitsrichtlinien, die für die jeweilige Datensenke gelten, vergleicht) Darüber hinaus oder alternativ dazu kann der Konflikt beispielsweise zur Designzeit durch den Einsatz von Model Checking identifiziert werden. Model Checking ist ein Verfahren zur vollautomatischen Verifikation einer Systembeschreibung gegen eine Spezifikation. Die Systembeschreibung kann das E/E-System umfassen. Die Spezifikation kann die zumindest eine Sicherheitsrichtlinie umfassen. Der Konflikt kann auch durch den Fluss eines Datums generiert werden, wenn das Datum nicht entsprechend der Sicherheitsrichtlinie im System propagiert und gegen eine Richtlinie verstößt. Der Konflikt besteht in dem Fall aus nicht erfüllten Constraints der Sicherheitsrichtlinie.The processing unit is also set up to generate a conflict for the identified data flow that violates the at least one security policy. The conflict can, for example, be identified in the E / E components at runtime. This can be done by having at least one security guideline attached to the data received from a data source or transmitted with the data received from a data source in the corresponding E / E components, for example in a data sink (e.g. control unit) during runtime , check and compare with potential security guidelines that apply to the respective data sink) In addition or as an alternative to this, the conflict can be identified, for example, at design time through the use of model checking. Model checking is a procedure for the fully automatic verification of a system description against a specification. The system description can include the E / E system. The specification can include the at least one security policy. The conflict can also be generated by the flow of a date if the date does not propagate in the system according to the security policy and violates a policy. In this case, the conflict consists of unfulfilled constraints in the security policy.

Der Konflikt kann zusätzlich Informationen darüber umfassen, auf welchem Pfad die Verletzung stattgefunden hat und welche Bedingung bzw. Bedingungen der zumindest einen Sicherheitsrichtlinie verletzt wurden.The conflict can additionally include information about the path on which the violation took place and which condition or conditions of the at least one security policy were violated.

Vorteilhafterweise kann somit für sämtliche Datenflüsse, die im E/E-System stattfinden können, festgestellt werden, ob die zumindest eine Sicherheitsrichtlinie, die für den Datenaustausch im E/E-System definiert wurde, eingehalten wird.It can thus advantageously be determined for all data flows that can take place in the E / E system whether the at least one security guideline that was defined for the data exchange in the E / E system is being adhered to.

Vorzugsweise umfasst die zumindest eine Sicherheitsrichtlinie

  • - eine Sicherheitsanforderung zwischen einer Datenquelle und einer Datensenke; und/oder
  • - eine Restriktion zwischen einer Datenquelle und einer Datensenke.
The at least one security policy preferably comprises
  • - a security requirement between a data source and a data sink; and or
  • - a restriction between a data source and a data sink.

Die zumindest eine Sicherheitsrichtlinie kann zumindest eine Sicherheitsanforderungen zwischen einer Datenquelle und einer Datensenke umfassen. Darüber hinaus oder alternativ dazu kann die Sicherheitsrichtlinien zumindest eine Restriktion zwischen einer Datenquelle und einer Datensenke im E/E-System umfassen. Im dynamischen Fall umfassen die Datenquellen, Mechanismen, die an die von der jeweiligen Datenquelle übertragenen Daten eine Sicherheitsrichtlinie anhängen können, die dann in den entsprechenden Datensenken (z.B. Steuergeräten) verarbeitet werden können.The at least one security policy can include at least one security requirement between a data source and a data sink. In addition or as an alternative to this, the security guidelines can include at least one restriction between a data source and a data sink in the E / E system. In the dynamic case, the data sources include mechanisms that can attach a security policy to the data transmitted by the respective data source, which can then be processed in the corresponding data sinks (e.g. control units).

Vorteilhafter Weise kann somit festgestellt werden, ob die Sicherheitsanforderungen und/oder die Restriktionen, die für den Datenfluss zwischen einer Datenquelle und einer Datensenke definiert sind, eingehalten werden.It can thus advantageously be determined whether the security requirements and / or the restrictions that are defined for the data flow between a data source and a data sink are being complied with.

Vorzugsweise beschreibt jeder Konflikt eine konkrete Verletzung der zumindest einen Sicherheitsrichtlinie.Each conflict preferably describes a specific violation of the at least one security policy.

Jeder Konflikt, der durch die Recheneinheit generiert wurde, kann eine konkrete Verletzung der zumindest einen Sicherheitsrichtlinien beschreiben. Die Beschreibung der konkreten Verletzung der zumindest einen Sicherheitsrichtlinie kann Informationen darüber umfassen, welche Sicherheitsrichtlinie(n) auf welchem Pfad die Verletzung stattgefunden hat und welche Bedingung bzw. Bedingungen der zumindest einen Sicherheitsrichtlinie verletzt wurden.Each conflict that was generated by the processing unit can describe a specific violation of the at least one security policy. The description of the specific violation of the at least one security policy can include information about which security policy (s) on which path the violation took place and which condition or conditions of the at least one security policy were violated.

Vorteilhafterweise kann somit exakt festgestellt werden, auf welchem Pfad im E/E-System die Verletzung der zumindest einen Sicherheitsrichtlinie stattgefunden hat und welche Bedingung bzw. welche Bedingungen der zumindest einen Sicherheitsrichtlinie verletzt wurde(n). Advantageously, it can thus be determined exactly on which path in the E / E system the violation of the at least one security policy took place and which condition or conditions of the at least one security policy was (were) violated.

Gemäß einem zweiten Aspekt wird die zugrundeliegende Aufgabe durch ein Verfahren zur Erhöhung der Sicherheit in einem E/E, elektrisch-elektronischem, System im Fahrzeug gelöst, umfassend:

  • Umsetzen, an einer Recheneinheit, zumindest einer Sicherheitsrichtlinie mit Bezug auf den Datenaustausch zwischen einer Mehrzahl an E/E-Komponenten, wobei jede E/E-Komponente Datenquelle und/oder Datensenke sein kann;
  • Identifizieren, durch die Recheneinheit, eines Datenflusses aus einer Vielzahl an möglichen Datenflüssen zwischen zumindest zwei E/E-Komponenten, der die zumindest eine Sicherheitsrichtlinie verletzt; und
  • Generieren, durch die Recheneinheit, eines Konflikts für den identifizierten Datenfluss, der zumindest eine Sicherheitsrichtlinie verletzt.
According to a second aspect, the underlying object is achieved by a method for increasing safety in an E / E, electrical-electronic, system in the vehicle, comprising:
  • Implementation, on a computing unit, of at least one security policy with reference to the data exchange between a plurality of E / E components, wherein each E / E component can be a data source and / or data sink;
  • Identifying, by the computing unit, a data flow from a plurality of possible data flows between at least two E / E components that violates the at least one security policy; and
  • Generating, by the processing unit, a conflict for the identified data flow that violates at least one security policy.

Vorzugsweise umfasst die zumindest eine Sicherheitsrichtlinie:

  • - eine Sicherheitsanforderung zwischen einer Datenquelle und einer Datensenke; und/oder
  • - eine Restriktion zwischen einer Datenquelle und einer Datensenke.
The at least one security policy preferably comprises:
  • a security requirement between a data source and a data sink; and or
  • - a restriction between a data source and a data sink.

Vorzugsweise beschreibt jeder Konflikt eine konkrete Verletzung einer Sicherheitsrichtlinie.Each conflict preferably describes a specific violation of a security policy.

Diese und andere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden aus dem Studium der folgenden detaillierten Beschreibung bevorzugter Ausführungsformen und der beiliegenden Figuren verdeutlicht. Es ist ersichtlich, dass - obwohl Ausführungsformen separat beschrieben werden - einzelne Merkmale daraus zu zusätzlichen Ausführungsformen kombiniert werden können.

  • 1 zeigt schematisch ein E/E, elektrisch-elektronisches, System im Fahrzeug;
  • 2 zeigt ein beispielhaftes Verfahren zur Erhöhung der Sicherheit in einem E/E, elektrisch-elektronischem, System im Fahrzeug;
  • 3 zeigt eine beispielhafte Darstellung eines Steuergeräts bzw. einer ECU eines E/E-Systems;
  • 4A zeigt eine beispielhafte Darstellung einer Datenquelle bzw. eines Sensors eines E/E-Systems;
  • 4B zeigt eine beispielhafte Darstellung einer Datensenke bzw. eines Aktors eines E/E-Systems;
  • 5 zeigt beispielhaft die Erkennung eines Angriffs im E/E-System eines Fahrzeugs;
  • 6 zeigt beispielhaft die Erkennung eines Konflikts im E/E-System eines Fahrzeugs zur Designzeit.
These and other objects, features and advantages of the present invention will become apparent from a study of the following detailed description of preferred embodiments and the accompanying figures. It is evident that - although embodiments are described separately - individual features can be combined therefrom to form additional embodiments.
  • 1 shows schematically an E / E, electrical-electronic, system in the vehicle;
  • 2 shows an exemplary method for increasing safety in an E / E, electrical-electronic, system in the vehicle;
  • 3rd shows an exemplary illustration of a control unit or an ECU of an E / E system;
  • 4A shows an exemplary representation of a data source or a sensor of an E / E system;
  • 4B shows an exemplary representation of a data sink or an actuator of an E / E system;
  • 5 shows an example of the detection of an attack in the E / E system of a vehicle;
  • 6th shows an example of the detection of a conflict in the E / E system of a vehicle at design time.

1 zeigt schematisch ein beispielhaftes E/E, elektrisch-elektronischem, System im Fahrzeug. 1 shows schematically an exemplary E / E, electrical-electronic, system in the vehicle.

Das beispielhafte E/E-System umfasst eine Vielzahl an E/E-Komponenten umfassen, die Datenquellen sind. Das beispielhafte E/E-System umfasst als Datenquelle einen Sensor 122, einen OBD (On-Board-Diagnose)-Anschluss 124, einen USB-Anschluss 126, sowie einen Angreifer 128, der über die Kommunikationsverbindung des OBD-Anschlusses 124 und des USB-Anschlusses 126 einen Angriff auf das E/E-System durchführen kann. In diesem Fall können Daten durch die Datenquellen als Datenfluss über eine Kommunikationsverbindung 112 zu einem Steuergerät bzw. einer ECU fließen und dort in einer Speichereinheit 111 hinterlegt werden. Das Infotainmentsystem 140 kann sowohl eine Datenquelle als auch eine Datensenke sein, d.h. es kann ein Datenfluss vom Infotainmentsystem 140 zum Steuergerät 110 führen (und beispielsweise auch in der Speichereinheit 111) hinterlegt werden. Es kann aber auch ein Datenfluss vom Steuergerät 110 zum Infotainmentsystem 140 stattfinden. Die Aktoren 132, 134 und 136 sind Datensenken. Es kann ein Datenfluss zwischen dem Steuergerät 110 und dem jeweiligen Aktor 132, 134 bzw. 136 stattfinden. Bei dem Datenfluss können Daten, die von Datenquellen stammen, direkt fließe oder vorher durch das Steuergerät verarbeitet werden. Somit ist das Steuergerät 110 auch sowohl Datenquelle (für den Datenfluss an die Aktoren 132, 134 und 136) als auch Datensenke (für den Datenfluss der Datenquellen 122, 124, 126, 128 und 140).The exemplary E / E system includes a plurality of E / E components that are data sources. The exemplary E / E system includes a sensor as a data source 122 , an OBD (on-board diagnosis) port 124 , a USB port 126 , as well as an attacker 128 via the communication link of the OBD port 124 and the USB port 126 an attack can perform on the E / E system. In this case, data can flow through the data sources as a data flow over a communication link 112 to a control unit or an ECU and there in a memory unit 111 be deposited. The infotainment system 140 can be both a data source and a data sink, ie it can be a data flow from the infotainment system 140 to the control unit 110 lead (and for example also in the storage unit 111 ). However, there can also be a data flow from the control unit 110 to the infotainment system 140 occur. The actuators 132 , 134 and 136 are data sinks. There can be a flow of data between the control unit 110 and the respective actuator 132 , 134 or. 136 occur. In the data flow, data that originate from data sources can flow directly or be processed beforehand by the control unit. Thus the control unit is 110 also both data source (for the data flow to the actuators 132 , 134 and 136 ) as well as data sink (for the data flow of the data sources 122 , 124 , 126 , 128 and 140 ).

Ein System zur Erhöhung der Sicherheit in einem E/E-System in dieses beispielhafte E/E-System integriert werden.A system for increasing security in an E / E system can be integrated into this exemplary E / E system.

Das System zur Erhöhung der Sicherheit im E/E-System umfasst eine Recheneinheit, die eingerichtet ist, zumindest eine Sicherheitsrichtlinie mit Bezug auf den Datenaustausch zwischen einer Mehrzahl an E/E-Komponenten umzuseten. Wie bereits ausgeführt, kann jede E/E-Komponente eine Datenquelle und/oder eine Datensenke und/oder eine Kommunikationsverbindung zwischen einer Datenquelle und/oder einer Datensenke sein. Die Recheneinheit ist eingerichtet, aus einer Vielzahl an möglichen Datenflüssen, die zwischen der Vielzahl an E/E-Komponenten stattfinden können, einen Datenfluss zu identifizieren, die die bzw. die zumindest eine Sicherheitsrichtlinie verletzt. Die Implementierung von Sicherheitsrichtlinien wird weiter unten mit Bezug auf 3, 4A und 4B beschrieben.The system for increasing security in the E / E system comprises a processing unit which is set up to implement at least one security policy with regard to the data exchange between a plurality of E / E components. As already stated, each E / E component can be a data source and / or a data sink and / or a communication connection between a data source and / or a data sink. The processing unit is set up to identify a data flow from a multitude of possible data flows that can take place between the multitude of E / E components that violates the or the at least one security guideline. The implementation of security policies is discussed below with reference to 3rd , 4A and 4B described.

Die zumindest eine Sicherheitsrichtlinie kann zumindest eine Sicherheitsanforderungen zwischen einer Datenquelle und einer Datensenke umfassen. Darüber hinaus oder alternativ dazu kann die Sicherheitsrichtlinien zumindest eine Restriktion zwischen einer Datenquelle und einer Datensenke im E/E-System umfassen. Im dynamischen Fall können die Datenquellen zum Beispiel, Mechanismen umfassen, die an die von der jeweiligen Datenquelle übertragenen Daten eine Sicherheitsrichtlinie anhängen können, die dann in den entsprechenden Datensenken (z.B. Steuergeräten) verarbeitet werden können. Die Recheneinheit ist zudem eingerichtet, für den identifizierten Datenfluss, der die zumindest eine Sicherheitsrichtlinie verletzt, einen Konflikt zu generieren. Der Konflikt kann beispielsweise zur Laufzeit in den E/E-Komponenten identifiziert werden. Dies kann erfolgen, indem in den entsprechenden E/E-Komponenten, beispielsweise in einer Datensenke (z.B. Steuergerät), während der Laufzeit zumindest eine Sicherheitsrichtlinie, die an den von einer Datenquelle empfangenen Daten hängen bzw. mit den von einer Datenquelle empfangenen Daten übermittelt wurden, prüfen und mit potentiellen Sicherheitsrichtlinien, die für die jeweilige Datensenke gelten, vergleicht) Darüber hinaus oder alternativ dazu kann der Konflikt beispielsweise durch den Einsatz von Model Checking identifiziert werden. Model Checking ist ein Verfahren zur vollautomatischen Verifikation einer Systembeschreibung gegen eine Spezifikation. Die Systembeschreibung kann das E/E- System umfassen. Die Spezifikation kann die zumindest eine Sicherheitsrichtlinie umfassen. Der Konflikt kann Informationen darüber umfassen, auf welchem Pfad die Verletzung stattgefunden hat und welche Bedingung bzw. Bedingungen der zumindest einen Sicherheitsrichtlinie verletzt wurden.The at least one security policy can include at least one security requirement between a data source and a data sink. In addition or as an alternative to this, the security guidelines can include at least one restriction between a data source and a data sink in the E / E system. In the dynamic case, the data sources can, for example, include mechanisms that can attach a security policy to the data transmitted by the respective data source, which can then be processed in the corresponding data sinks (e.g. control units). The processing unit is also set up to generate a conflict for the identified data flow that violates the at least one security policy. The conflict can, for example, be identified in the E / E components at runtime. This can be done by having at least one security guideline attached to the data received from a data source or transmitted with the data received from a data source in the corresponding E / E components, for example in a data sink (e.g. control unit) during runtime , check and compare with potential security guidelines that apply to the respective data sink) In addition or as an alternative to this, the conflict can be identified, for example, through the use of model checking. Model checking is a procedure for the fully automatic verification of a system description against a specification. The system description can include the E / E system. The specification can include the at least one security policy. The conflict can include information about the path on which the violation took place and which condition or conditions of the at least one security policy were violated.

Jeder Konflikt, der durch die Recheneinheit generiert wird, kann eine konkrete Verletzung der zumindest einen Sicherheitsrichtlinien beschreiben. Die Beschreibung der konkreten Verletzung der zumindest einen Sicherheitsrichtlinien kann Informationen darüber umfassen, welche Sicherheitsrichtlinie (n) auf welchem Pfad die Verletzung stattgefunden hat und welche Bedingung bzw. Bedingungen der zumindest einen Sicherheitsrichtlinie verletzt wurden.Each conflict that is generated by the processing unit can describe a specific violation of the at least one security policy. The description of the specific violation of the at least one security policy can include information about which security policy (s) on which path the violation took place and which condition or conditions of the at least one security policy were violated.

Vorteilhafterweise kann somit für sämtliche Datenflüsse, die im E/E-System stattfinden können, festgestellt werden, ob die zumindest eine Sicherheitsrichtlinie, die für den Datenaustausch im E/E-System definiert wurde, eingehalten wird. Insbesondere kann exakt festgestellt werden, auf welchem Pfad im E/E-System die Verletzung der zumindest einen Sicherheitsrichtlinie stattgefunden hat und welche Bedingung bzw. welche Bedingungen der zumindest einen Sicherheitsrichtlinie verletzt wurde(n).It can thus advantageously be determined for all data flows that can take place in the E / E system whether the at least one security guideline that was defined for the data exchange in the E / E system is being adhered to. In particular, it can be determined exactly on which path in the E / E system the violation of the at least one security guideline took place and which condition or conditions of the at least one security guideline was (were) violated.

2 zeigt ein Verfahren 200 zur Erhöhung der Sicherheit in einem E/E, elektrisch-elektronischem, System im Fahrzeug, das von einem System 100 wie mit Bezug auf 1 beschrieben ausgeführt werden kann. 2 shows a procedure 200 to increase the safety in an E / E, electrical-electronic, system in the vehicle that is controlled by a system 100 as with reference to 1 described can be executed.

Das Verfahren 200 umfasst:

  • Umsetzen 210, durch eine Recheneinheit, zumindest einer Sicherheitsrichtlinie mit Bezug auf den Datenaustausch zwischen einer Mehrzahl an E/E-Komponenten, wobei jede E/E-Komponente Datenquelle und/oder Datensenke sein kann;
  • Identifizieren 220, durch die Recheneinheit, eines Datenflusses aus einer Vielzahl an möglichen Datenflüssen zwischen zumindest zwei E/E-Komponenten, der die zumindest eine Sicherheitsrichtlinie verletzt; und
  • Generieren 230, durch die Recheneinheit, eines Konflikts für den identifizierten Datenfluss, der zumindest eine Sicherheitsrichtlinie verletzt.
The procedure 200 includes:
  • Implement 210 by a computing unit, at least one security policy with reference to the data exchange between a plurality of E / E components, wherein each E / E component can be a data source and / or data sink;
  • Identify 220 , by the processing unit, a data flow from a large number of possible data flows between at least two E / E-components that violate at least one security policy; and
  • to generate 230 , by the processing unit, a conflict for the identified data flow that violates at least one security policy.

Die zumindest eine Sicherheitsrichtlinie umfasst:

  • - eine Sicherheitsanforderung zwischen einer Datenquelle und einer Datensenke; und/oder
  • - eine Restriktion zwischen einer Datenquelle und einer Datensenke.
The at least one security policy includes:
  • a security requirement between a data source and a data sink; and or
  • - a restriction between a data source and a data sink.

Jeder Konflikt kann eine konkrete Verletzung der zumindest einen Sicherheitsrichtlinie beschreiben.Each conflict can describe a specific violation of at least one security policy.

3 zeigt eine beispielhafte Darstellung eines Steuergeräts bzw. einer ECU 300 eines E/E-Systems, wie mit Bezug auf 1 beschrieben. Das Steuergerät 300 kann auf die Kommmunikationskanäle CAN1 301, 302, CAN 2 303, Ethernet Eth 1 302 und Ethernet Eth 2 zugreifen. Zudem gibt es eine USB-Schnittstelle 305. 4A zeigt eine beispielhafte Darstellung einer Datenquelle bzw. eines Sensors 400 eines E/E-Systems, wie mit Bezug auf 1 beschrieben. Die Datenquelle 400 hat Zugriff auf Kommunikationskanäle CAN 1 401 und Eth 2 302. Zudem Umfasst sie einen OBD-Anschluss 412 und einen Sensor 410. 4B zeigt eine beispielhafte Darstellung einer Datensenke bzw. eines Aktors 450 eines E/E-Systems, wie mit Bezug auf 1 beschrieben. Der Aktor 450 hat Zugriff auf Kommunikationskanäle CAN 1 451 und Ethernet Eth 1 452. Zudem kann der Aktor Steuernd bzw. Regelnd auf eine LED (Light Emitting Diode) 466 zugreifen. 3rd shows an exemplary representation of a control unit or an ECU 300 of an E / E system, as with reference to 1 described. The control unit 300 can access the communication channels CAN1 301 , 302 , CAN 2 303 , Ethernet Eth 1 302 and Ethernet Eth 2 access. There is also a USB interface 305 . 4A shows an exemplary representation of a data source or a sensor 400 of an E / E system, as with reference to 1 described. The data source 400 has access to communication channels CAN 1 401 and Eth 2 302 . It also includes an OBD connection 412 and a sensor 410 . 4B shows an exemplary representation of a data sink or an actuator 450 of an E / E system, as with reference to 1 described. The actuator 450 has access to communication channels CAN 1 451 and Ethernet Eth 1 452 . In addition, the actuator can control or regulate access to an LED (Light Emitting Diode) 466.

Für das System bzw. Verfahren zur Erhöhung der Sicherheit in einem E/E, elektrisch-elektronischem, System im Fahrzeug wie mit Bezug auf 1 und zwei beschrieben kann ein entsprechendes Modell wie in 3, 4A und 4B beispielhaft dargestellt, generiert werden.For the system or method for increasing the security in an E / E, electrical-electronic, system in the vehicle as with reference to 1 and two described can be a corresponding model as in 3rd , 4A and 4B exemplified, generated.

In dem Modell des E/E-Systems trägt jede Nachricht, die über einen Datenfluss zwischen E/E-Komponenten des Systems ausgetauscht wird, eine Sicherheitsrichtlinie (nicht gezeigt). Die Sicherheitsrichtlinie beschreibt eine Menge an Bedingungen, die erfüllt werden müssen, wenn auf die Daten der Nachricht lesend oder schreibend durch eine Datensenke zugegriffen wird. Diese Bedingungen können beispielsweise durch eine einfache, parametrisierte Boolesche Struktur - beispielsweise durch Paralocks wie von Niklas Broberg und David Sands definiert - definiert werden und beschreiben, wann, wie und was von einer E/E-Komponente zu einer anderen E/E-Komponente fließen darf (im Sinne von Datenfluss). Die E/E-Komponenten können als Knoten 301, 302, 303, 304, 305, 306, 340, 350, 360, 401, 402, 410, 412, 424, 426, 428, 451, 452, 461, 462, 463, 465, 466 modelliert werden und tragen Sicherheitsrichtlinien an Start- und/oder Endpunkten der Pfeile (nicht gezeigt). An den Endpunkten der Pfeile können Eingangsrichtlinien zum nächsten Knoten definiert sein, an den Startpunkten können Ausgangsrichtlinien definiert sein. Eingangsrichtlinien beschreiben die Bedingungen, die erfüllt sein müssen, damit die Nachricht bzw. das Datenpaket in den Knoten fließen darf. Ausgangsrichtlinien beschreiben die Bedingungen, die Nachrichten bzw. Datenpakete erben, wenn sie einen Knoten verlassen. Interne Funktionalität eines Knotens, der nicht durch dasselbe Modell beschrieben ist, ist durch ein Flussmodell (Flow Model) 312, 322, 432, 442, 472, 482 beschrieben. Ein Flussmodell beschreibt auf abstrakte Art und Weise, unter welchen Bedingungen die Information wohin fließt, also beispielsweise in eine Variable (Var 1, Var 2) 314, 316, 324, 434, 436, 444, 476, 477, 484, einen Speicherbereich (Vol Mem Region) 360, 426, 461 eine Datenbank (DB) 350, 424, 462, etc. Es existiert auch externer Daten- bzw. Nachrichten- bzw. Informationsfluss in das Modell, welches dazu dienen kann, einen Systemstatus (System State) 330, 464 zu definieren. Ein Systemstatus 330, 464 kann beispielsweise einen Zeitstempel bzw. eine Zeit, eine Geschwindigkeit des Fahrzeugs sowie weitere externe Bedingungen umfassen. Die Informationen über den Systemstatus 330, 464 kann in Bedingungen verwendet werden, um Sicherheitsrichtlinien zu definieren. Beispiel einer Bedingung für die Definition einer Sicherheitsrichtlinie kann die Überprüfung eines Zertifikats durch das Steuergerät umfassen, nachdem die Gültigkeit des Zertifikats abgelaufen ist. Auch ein Status des Steuergeräts (ECU State) 340, 428, 463 fließt in das Modell mit ein. Das Flussmodel definiert die Effekte, die während der Ausführung der Software auf der E/E-Komponente (z.B. auf einem Steuergerät) stattfinden werden. So kann vor der Ausführung geprüft werden, ob aufgrund der Ausführung der Steuergerätesoftware ein Konflikt erzeugt wird und welche Sicherheitseigenschaften die einzelnen Daten in den Datensenken auf der ECU nach der Ausführung, haben werden. Das Flussmodel kann somit zur Laufzeit vor der Ausführung der Software ausgeführt werden. Das kann - wie weiter oben ausgeführt - im E/E-System während der Laufzeit erfolgen.In the model of the E / E system, each message that is exchanged via a data flow between E / E components of the system carries a security policy (not shown). The security guideline describes a number of conditions that must be met if the data in the message is read or written by a data sink. These conditions can for example be defined by a simple, parameterized Boolean structure - for example by Paralocks as defined by Niklas Broberg and David Sands - and describe when, how and what flows from one E / E component to another E / E component may (in terms of data flow). The E / E components can be used as nodes 301 , 302 , 303 , 304 , 305 , 306 , 340 , 350 , 360 , 401 , 402 , 410 , 412 , 424 , 426 , 428 , 451 , 452 , 461 , 462 , 463 , 465 , 466 are modeled and have security guidelines at the start and / or end points of the arrows (not shown). Entry guidelines to the next node can be defined at the end points of the arrows, exit guidelines can be defined at the starting points. Inbound guidelines describe the conditions that must be met so that the message or data packet can flow into the node. Outbound policies describe the conditions that messages or data packets inherit when they leave a node. Internal functionality of a node that is not described by the same model is through a flow model 312 , 322 , 432 , 442 , 472 , 482 described. A flow model describes in an abstract way under which conditions the information flows where, e.g. in a variable (Var 1, Var 2) 314 , 316 , 324 , 434 , 436 , 444 , 476 , 477 , 484 , a memory area (Vol Mem Region) 360 , 426 , 461 a database (DB) 350 , 424 , 462 , etc. There is also an external flow of data or messages or information in the model, which can be used to establish a system status (System State) 330 , 464 define. A system status 330 , 464 can include, for example, a time stamp or a time, a speed of the vehicle and other external conditions. The information about the system status 330 , 464 can be used in conditions to define security policies. An example of a condition for the definition of a security policy can include the checking of a certificate by the control device after the validity of the certificate has expired. Also a status of the control unit (ECU State) 340 , 428 , 463 flows into the model. The flow model defines the effects that will take place during the execution of the software on the E / E component (e.g. on a control unit). Thus, before the execution, it can be checked whether a conflict is generated due to the execution of the control unit software and which security properties the individual data in the data sinks on the ECU will have after execution. The flow model can thus be executed at runtime before the software is executed. As explained above, this can be done in the E / E system during runtime.

3, 4A und 4B zeigen ein Modell von drei typischen E/E-Komponenten bzw. Knoten. Nachrichten bzw. Datenpakete können in einem Dienst kombiniert werden, der im Fahrzeug läuft. Beispiele für einen solchen Dienst sind das Speichern eines Strings der VIN (Vehicle Identification Number bzw. Fahrzeugidentifikationsnummer) und dessen aktuelle GNSS (Global Navigation Satellite System bzw. globales Navigationssatellitensystem) - Position kann in einer Speichereinheit 350, 360, 424, 426, 461, 462 hinterlegt werden und dann an einen externen Dienstleister bzw. an ein System eines externen Dienstleisters übermittelt werden. Wie weiter oben ausgeführt, können alle ausgetauschten Daten beispielsweise mit entsprechenden Sicherheitsrichtlinien ausgestattet sein, die zur Laufzeit überprüfe werden können. Vorteilhafterweise können die im Rahmen dieses Dokuments beschriebenen Anwendungen und Ausführungen im Fahrzeug während des Fahrzeugbetriebs durchgeführt werden. 3rd , 4A and 4B show a model of three typical E / E components or nodes. Messages or data packets can be combined in one service that runs in the vehicle. Examples of such a service are the storage of a string of the VIN (Vehicle Identification Number or vehicle identification number) and its current GNSS (Global Navigation Satellite System or global navigation satellite system) position can be in a memory unit 350 , 360 , 424 , 426 , 461 , 462 be deposited and then to a external service provider or to a system of an external service provider. As stated above, all of the exchanged data can, for example, be equipped with appropriate security guidelines that can be checked at runtime. The applications and designs described in the context of this document can advantageously be carried out in the vehicle while the vehicle is in operation.

Darüber hinaus können im Vorfeld Anwendungen bei der Architekturspezifikation während der Design-Zeit realisiert werden. In diesem Fall können die Daten selbst als Dummy-Daten betrachtet werden. Daher werden die Sicherheitsrichtlinien über ein Gitter mit Definitionen einer kleinsten Obergrenze und größten Untergrenze definiert werden, um die Sicherheitsrichtlinien vergleichbar zu machen. Während des Checkens bzw. Prüfens werden alle Pfade simuliert und es werden Kombinationen von Sicherheitsrichtlinien generiert. Beim Propagieren werden die Bedingungen der Sicherheitsrichtlinien gegen die Eingangsrichtlinien überprüft und/oder durch die Ausgangsrichtlinien ersetzt. Die Konflikte, die durch den Model-Checker entdeckt werden, beschreiben Mengen von Bedingungen, die nicht erfüllt werden. Daher definiert jeder Konflikt klar, welche Bedingungen erfüllt sein müssen und auf welchem Pfad im E/E-Systemmodell der Konflikt aufgetreten ist. Das vorstehend beschriebene Modell kann auch mit klassischen Model Checkern überprüft werden. Allerdings hat sich herausgestellt, dass ein Problem der Zustandsexplosion im E/E-Systemmodell besteht. Daher ist effizientes Checken mittels Bounded Model Checking oder Symbolic Model Checking erforderlich.In addition, applications for the architecture specification can be implemented in advance during the design time. In this case, the data itself can be regarded as dummy data. The security guidelines are therefore defined using a grid with definitions of a smallest upper limit and largest lower limit in order to make the security guidelines comparable. During the check, all paths are simulated and combinations of security guidelines are generated. When propagating, the conditions of the security guidelines are checked against the entry guidelines and / or replaced by the exit guidelines. The conflicts that are discovered by the model checker describe sets of conditions that are not met. Each conflict therefore clearly defines which conditions must be met and on which path in the E / E system model the conflict occurred. The model described above can also be checked with classic model checkers. However, it has been found that there is a state explosion problem in the E / E system model. Efficient checking using bounded model checking or symbolic model checking is therefore required.

5 zeigt beispielhaft die Erkennung eines Angriffs im E/E-System eines Fahrzeugs. Dies kann während der Laufzeit bzw. während des Fahrzeugbetriebs im E/E-System im Fahrzeug (Vehicle) wie mit Bezug auf 3, 4A und 4B beschrieben, durchgeführt werden. 5 shows an example of the detection of an attack in the E / E system of a vehicle. This can be done during runtime or during vehicle operation in the E / E system in the vehicle, as with reference to 3rd , 4A and 4B described, be carried out.

Insbesondere können kritische Bereiche im E/E-System zur Laufzeit identifiziert werden, die durch Angreifer genutzt werden können. Dies ermöglicht auch die Erkennung eines Angriffsversuchs zur Laufzeit. Der Angreiferknoten (Attacker bzw. Angreifer) 560 umfasst interne Logik und kann lesend und/oder schreibend auf die Kommunikationskanäle 561, 562 zugreifen. Somit können verschiedene Angriffe identifiziert werden (passive, aktive, destruktive, etc.). Zur Designzeit können auch verschiedene Angriffsmodelle definiert werden. Beispielsweise kann der Angreiferknoten in bestehende Komponenten modelliert werden, z.B. durch Simulation einer schadhaften Software in einem Steuergerät.In particular, critical areas in the E / E system can be identified during runtime that can be used by attackers. This also enables the detection of an attempted attack at runtime. The attacker node (attacker or attacker) 560 includes internal logic and can read and / or write on the communication channels 561 , 562 access. Different attacks can thus be identified (passive, active, destructive, etc.). Various attack models can also be defined at design time. For example, the attacker node can be modeled in existing components, for example by simulating defective software in a control unit.

In diesem Beispiel hat der Angreiferknoten 560 Zugriff auf zwei Kommunikationspfade 561, 562. Auf dem ersten Kommunikationspfad 592 versucht er, authentisierte Nachrichten zu lesen und platziert diese wieder auf dem Kommunikationspfad 592. Gemäß der Sicherheitsrichtlinie darf der Aktor 526 die Nachrichten nicht akzeptieren. Der Angreiferknoten 560 versucht auch, gänzlich neue Nachrichten auf einem anderen Pfad 593 zu platzieren 562. Über diesen Pfad 593 darf die ursprüngliche Nachricht nicht kommen. Auch diese Nachricht darf der Aktor 526 gemäß der Sicherheitsrichtlinie nicht akzeptieren. Angriffe wie diese erscheinen recht einfach. Betrachtet man allerdings das Innere von Steuergeräten bzw. ECUs, die Daten speichern können, wieder lesen und Daten in verschiedenen Nachrichten kombinieren können, wird der Informationsfluss sehr komplex und kann manuell nicht nachvollzogen werden.In this example, the attacker node has 560 Access to two communication paths 561 , 562 . On the first communication path 592 it tries to read authenticated messages and places them back on the communication path 592 . According to the safety guideline, the actuator may 526 not accepting the messages. The attacker node 560 also tries entirely new messages on a different path 593 to place 562 . Via this path 593 the original message must not come. The actuator may also send this message 526 according to the security policy do not accept. Attacks like this seem pretty straightforward. However, if you look at the inside of control units or ECUs that can store data, read it again and combine data in different messages, the flow of information becomes very complex and cannot be traced manually.

Dies erhöht die Sicherheit von E/E-Systemen zur Laufzeit. Darüber hinaus kann diese Vorgehensweise zur Design-Zeit verwendet werden, um Sicherheitsrichtlinien in einer ECU zu definieren, die an einen Zulieferer übermittelt werden können. Es kann hinterher auch dazu verwendet werden, die Sicherheitsrichtlinien zu überprüfen. Modellierte Angriffsknoten können darüber hinaus im physischen E/E-System genutzt werden, um kritische Tests auf Pentester-Seite durchzuführen.This increases the security of E / E systems during runtime. In addition, this approach can be used at design time to define safety guidelines in an ECU that can be communicated to a supplier. It can also be used afterwards to review the security guidelines. Modeled attack nodes can also be used in the physical E / E system to carry out critical tests on the pentester side.

6 zeigt beispielhaft die Erkennung eines Design-Fehlers im E/E-System eines Fahrzeugs. Sensor 1 621 erzeugt in diesem Beispiel ungeschützte Daten, so dass beispielsweise keine Datenintegrität und/oder keine Datenauthentizität und/oder keine Vertraulichkeit der Daten vorliegt (vgl. Pfad 691). Steuergerät ECU 1 612 kann diese Eigenschaften ändern, indem es den ein MAC (Message Authentication Code) hinzufügt und die Daten verschlüsselt (vgl. Pfad 692). Die Nachrichten, die im Weiteren durch das E/E-Modell zur Design-Zeit übertragen bzw. propagiert werden, beschreiben diese Eigenschaften. Wie bereits ausgeführt, ist es inhärente Eigenschaft eines Model Checkers, dass sich dieser den Pfad jeder Nachricht merkt. Der Aktor Actuator 626 kann eine Sicherheitsrichtlinie aufweisen, die erfordert, dass nur Nachrichten von Sensor 1 621 akzeptiert werden, deren Authentizität sichergestellt ist. Der Model Checker generiert alle möglichen Nachrichtenflüsse durch das E/E-System, um diese Anforderung der Sicherheitsrichtlinie zu überprüfen. Falls eine Nachricht, die nicht von Sensor 1 stammt (Beispielsweise vom Dienst Service 603 über die Pfade 695, 696, 697) am Aktor Actuator 626 ankommt, ist beim Design des E/E-Systems ein Fehler aufgetreten. Das Gateway 640 trennt in diesem Fall die Domänen nicht korrekt, wenn Aktor Actuator 626 eine solche Nachricht nicht verweigert. Vorteilhafter Weise können somit Fehler, die beim Design des E/E-Systems unterlaufen sind, erkannt werden. 6th shows an example of the detection of a design error in the E / E system of a vehicle. Sensor 1 621 generates unprotected data in this example, so that there is no data integrity and / or no data authenticity and / or no confidentiality of the data (see path 691 ). Control unit ECU 1 612 can change these properties by adding a MAC (Message Authentication Code) and encrypting the data (see path 692 ). The messages that are subsequently transmitted or propagated by the E / E model at design time describe these properties. As already stated, it is an inherent property of a model checker that it remembers the path of every message. The actuator actuator 626 may have a security policy that requires only messages from sensor 1 621 are accepted, the authenticity of which is guaranteed. The Model Checker generates all possible message flows through the E / E system in order to check this requirement of the security policy. If a message that does not come from sensor 1 (e.g. from the Service 603 over the paths 695 , 696 , 697 ) on the actuator actuator 626 an error has occurred in the design of the E / E system. The gateway 640 in this case does not separate the domains correctly if Aktor Actuator 626 such a message is not refused. In this way, errors that occurred in the design of the E / E system can advantageously be recognized.

Claims (6)

System (100) zur Erhöhung der Sicherheit in einem E/E, elektrisch-elektronischem, System im Fahrzeug, umfassend: eine Recheneinheit, die eingerichtet ist: - zumindest eine Sicherheitsrichtlinie mit Bezug auf den Datenaustausch zwischen einer Mehrzahl an E/E-Komponenten umzusetzen, wobei jede E/E-Komponente Datenquelle und/oder Datensenke sein kann; - aus einer Vielzahl an möglichen Datenflüssen zwischen zumindest zwei E/E-Komponenten einen Datenfluss zu identifizieren, die die Sicherheitsrichtlinie verletzt; und - für den identifizierten Datenfluss der die Sicherheitsrichtlinie verletzt einen Konflikt zu generieren.System (100) for increasing safety in an E / E, electrical-electronic, system in the vehicle, comprising: an arithmetic unit that is set up: - to implement at least one security policy with reference to the data exchange between a plurality of E / E components, wherein each E / E component can be a data source and / or data sink; to identify a data flow that violates the security policy from a large number of possible data flows between at least two E / E components; and - Generating a conflict for the identified data flow that violates the security policy. System (100) gemäß Anspruch 1, wobei die zumindest eine Sicherheitsrichtlinie umfasst: - eine Sicherheitsanforderung zwischen einer Datenquelle und einer Datensenke; und/oder - eine Restriktion zwischen einer Datenquelle und einer Datensenke.System (100) according to Claim 1 , wherein the at least one security policy comprises: a security requirement between a data source and a data sink; and / or a restriction between a data source and a data sink. System (100) gemäß Anspruch 1 oder 2, wobei jeder Konflikt eine konkrete Verletzung der zumindest einen Sicherheitsrichtlinie beschreibt.System (100) according to Claim 1 or 2 , with each conflict describing a specific violation of the at least one security policy. Verfahren (200) zur Erhöhung der Sicherheit in einem E/E, elektrisch-elektronischem, System im Fahrzeug, umfassend: Umsetzen (210), durch eine Recheneinheit, zumindest einer Sicherheitsrichtlinie mit Bezug auf den Datenaustausch zwischen einer Mehrzahl an E/E-Komponenten, wobei jede E/E-Komponente Datenquelle und/oder Datensenke sein kann; Identifizieren (220), durch die Recheneinheit, eines Datenflusses aus einer Vielzahl an möglichen Datenflüssen zwischen zumindest zwei E/E-Komponenten, der die zumindest eine Sicherheitsrichtlinie verletzt; und Generieren (230), durch die Recheneinheit, eines Konflikts für den identifizierten Datenfluss, der zumindest eine Sicherheitsrichtlinie verletzt.Method (200) for increasing the security in an E / E, electrical-electronic, system in the vehicle, comprising: Implementation (210), by a computing unit, of at least one security policy with reference to the data exchange between a plurality of E / E components, wherein each E / E component can be a data source and / or data sink; Identifying (220), by the computing unit, a data flow from a plurality of possible data flows between at least two E / E components that violates the at least one security policy; and Generating (230), by the processing unit, a conflict for the identified data flow which violates at least one security policy. Verfahren (200) gemäß Anspruch 4, wobei die zumindest eine Sicherheitsrichtlinie umfasst: - eine Sicherheitsanforderung zwischen einer Datenquelle und einer Datensenke; und/oder - eine Restriktion zwischen einer Datenquelle und einer Datensenke.Method (200) according to Claim 4 , wherein the at least one security policy comprises: a security requirement between a data source and a data sink; and / or a restriction between a data source and a data sink. Verfahren (200) gemäß Anspruch 4 oder 5, wobei jeder Konflikt eine konkrete Verletzung der zumindest einen Sicherheitsrichtlinie beschreibt.Method (200) according to Claim 4 or 5 , with each conflict describing a specific violation of the at least one security policy.
DE102019133334.2A 2019-12-06 2019-12-06 System and method for increasing security in an E / E system Pending DE102019133334A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102019133334.2A DE102019133334A1 (en) 2019-12-06 2019-12-06 System and method for increasing security in an E / E system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102019133334.2A DE102019133334A1 (en) 2019-12-06 2019-12-06 System and method for increasing security in an E / E system

Publications (1)

Publication Number Publication Date
DE102019133334A1 true DE102019133334A1 (en) 2021-06-10

Family

ID=75962216

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019133334.2A Pending DE102019133334A1 (en) 2019-12-06 2019-12-06 System and method for increasing security in an E / E system

Country Status (1)

Country Link
DE (1) DE102019133334A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009038035A1 (en) * 2009-08-19 2011-02-24 Bayerische Motoren Werke Aktiengesellschaft Method for configuring infotainment applications in a motor vehicle
US20140007184A1 (en) * 2012-06-29 2014-01-02 Phillip A. Porras Method and System for Protecting Data Flow at a Mobile Device
DE102013108932A1 (en) * 2013-08-19 2015-02-19 Bayerische Motoren Werke Aktiengesellschaft Safety relevant system in a vehicle

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009038035A1 (en) * 2009-08-19 2011-02-24 Bayerische Motoren Werke Aktiengesellschaft Method for configuring infotainment applications in a motor vehicle
US20140007184A1 (en) * 2012-06-29 2014-01-02 Phillip A. Porras Method and System for Protecting Data Flow at a Mobile Device
DE102013108932A1 (en) * 2013-08-19 2015-02-19 Bayerische Motoren Werke Aktiengesellschaft Safety relevant system in a vehicle

Similar Documents

Publication Publication Date Title
EP1959606B1 (en) Safety unit
DE102011100106A1 (en) System for diagnosing a component in a vehicle
DE102019205700B4 (en) Testing system
DE102011084254A1 (en) Communication system for a motor vehicle
DE112016005669T5 (en) On-board communication device, on-board communication system and method for prohibiting special processing for a vehicle
DE102019214453A1 (en) Method for performing a function of a motor vehicle
DE102018221063A1 (en) Configuration of a control system for an at least partially autonomous motor vehicle
DE102019115727A1 (en) Electronic control device, monitoring method, recording medium and gateway device
DE102019214420A1 (en) Method for at least assisted crossing of a junction by a motor vehicle
EP3732913A1 (en) Control unit and method for the tamper-proof detection of operational safety-related integrity monitoring data
WO2008095518A1 (en) Use of a distributed diagnostic architecture in autosar
DE102019214423A1 (en) Method for remote control of a motor vehicle
DE102019214461A1 (en) Method for remote control of a motor vehicle
DE102019214471A1 (en) Method for remote control of a motor vehicle
DE112020005622B4 (en) Information processing device, information processing method and computer program
EP4003823B1 (en) Method for initializing a motor vehicle
DE112017003053T5 (en) ACTIVITY MONITOR
DE102019214482A1 (en) Method for the safe, at least partially automated, driving of a motor vehicle
DE102019133334A1 (en) System and method for increasing security in an E / E system
DE102019214413A1 (en) Method for at least partially automated driving of a motor vehicle
DE102019133331A1 (en) System and method for the optimized increase of security in an E / E system
DE102019214484A1 (en) Procedure for the secure determination of infrastructure data
DE102019211118A1 (en) Method for testing a motor vehicle
DE102019125393A1 (en) Devices, methods and computer programs for a server, an administration system and a vehicle
DE102019219667B3 (en) Computer program product for a peer-to-peer computer network

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication