Device for securing diagnostic commands to a control unit, and corresponding motor vehicle
11455393 · 2022-09-27
Assignee
Inventors
- Alexander Leonhardi (Kirchheim/Teck, DE)
- Mats Aakesson (Lund, SE)
- Oliver Kust (Stuttgart, DE)
- Stefan Syberichs (Korntal-Muenchingen, DE)
Cpc classification
G06F11/0739
PHYSICS
G06F11/0796
PHYSICS
G06F21/70
PHYSICS
G06F21/57
PHYSICS
G06F21/51
PHYSICS
International classification
G06F11/07
PHYSICS
G06F21/57
PHYSICS
G06F21/51
PHYSICS
Abstract
A device for monitoring diagnostic commands to a control unit. The device includes an execution platform, and a security device connected to the execution platform, with a command filter and state machines. The execution platform is configured to generate the diagnostic commands based on predefined scripts. The command filter is configured to select valid commands from among the diagnostic commands, based on conditions following from states of the state machines. The security device is configured to relay the commands to the control unit.
Claims
1. A device for monitoring diagnostic commands to a control unit, comprising: an execution platform; and a security device, connected to the execution platform, including a command filter and state machines; wherein: the execution platform is configured to generate the diagnostic commands based on predefined scripts; the command filter is configured to select valid commands from among the diagnostic commands, based on conditions following from states of the state machines; and the security device is configured to relay or block the commands to the control unit.
2. The device as recited in claim 1, further comprising a dynamic area and a secured area, the dynamic area includes the execution platform, and the secured area includes the security device.
3. The device as recited in claim 2, further comprising a connectivity area, wherein the execution platform is configured to receive the scripts from the connectivity area.
4. The device as recited in claim 3, wherein the execution platform is configured to return information from the secured area into the dynamic area or the connectivity area.
5. The device as recited in claim 1, wherein the selecting of the valid commands takes place also based on certain responses by the target control unit.
6. The device as recited in claim 1, wherein a state block is imposed on request in order to update software of the control unit, based on predefined rules, and after successful verification of the updated software, the state block is discontinued.
7. The device as recited in claim 1, wherein the security device also includes a sequence filter, and the sequence filter is configured to check the valid commands for a permissible sequence or frequency, based on further rules.
8. The device as recited in claim 1, wherein the states include application states, and/or the states include device states.
9. The device as recited in claim 1, wherein the state machines are in a mutual information exchange, and/or the states are in a mutual blocking relationship.
10. A motor vehicle, comprising: a control unit; and a device for monitoring diagnostic commands to the control unit, the device including: an execution platform; and a security device, connected to the execution platform, including a command filter and state machines; wherein: the execution platform is configured to generate the diagnostic commands based on predefined scripts; the command filter is configured to select valid commands from among the diagnostic commands, based on conditions following from states of the state machines; and the security device is configured to relay or block the commands to the control unit.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) Exemplary embodiments of the present invention are illustrated in the figures and explained in greater detail below.
(2)
(3)
(4)
DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS
(5) The system architecture of example device 10 in accordance with the present invention illustrated in
(6) In the case of OTA applications such as remote diagnosis or firmware or software updates, dynamic area 12 may obtain scripts 15 from another domain, for example via a wireless connection of a backend infrastructure, referred to below as connectivity area 11. This connectivity area 11 may, but does not have to, be provided on a separate ECU without safety requirements. Scripts 15 are processed and converted into sequences of diagnostic commands 16 in dynamic area 12.
(7) In addition, a secured area 13 on a safety integrity level is provided which takes into account the safety relevance of an inadvertent activation of embedded target control unit 14 by external diagnostic commands 16. This secured area 13 may be associated with each ECU having a corresponding security integrity. Secured area (13) includes in particular a security device 19 that functions as a firewall in a manner of speaking, and monitors diagnostic commands 16 from dynamic area 12 and relays them only selectively to target control unit 14 to prevent inadvertent intervention in its functioning.
(8) Responses 30 by target control unit 14 are normally returned to dynamic area 12 and monitored by secured area 13. In the event of error messages, these may be evaluated by security device 19 in order to block diagnostic commands 16.
(9) Information 17 from security device 19 to dynamic area 12 or to connectivity area 11 may be, for example, information concerning blocked commands 29 or operating states of security device 19.
(10) As depicted in
(11) With these conditions 20, it is possible to define secured operating states of device 10 in the course of development. Depending on conditions 20, there is preferably a positive list of valid commands 29 that are allowed to pass through command filter 21, while invalid commands are suppressed. The filtering and blocking may take place according to various configuration specifications of security device 19. For example, the following are possible: 1. Blocking of any diagnostic commands 16, 2. Blocking those diagnostic commands 16 that originate from certain ECUs or that are addressed to a certain control unit 14, 3. Checking and filtering on the level of individual diagnostic commands (16) to allow certain valid commands 29 in certain states 25, 26, and to suppress, among other things, security access, reset, or other impermissible diagnostic commands 16, 4. Checking diagnostic commands 16 and their parameters to identify valid commands 29 based on certain parameters, and to prevent other types of access, such as writing to certain memory addresses of control unit 14, 5. Blocking diagnostic commands 16 whose occurrence exceeds a predefined frequency in order to avoid the failure mode, referred to as “blubbering idiot” in technical jargon. It is also possible to block diagnostic commands 16 having distortions, lags, or unintentional repetitions beyond a certain limit, or 6. Blocking diagnostic commands 16 to control unit 14 when it responds with certain error codes 30.
(12) One specific embodiment of security device 19 with a command filter 21 includes, among other things, the activities depicted in