IP Library › Granted Patent US 10,484,425
Granted Patent B2
US 10,484,425 · App. 15/719,071 · Granted Nov 19, 2019

Controller area network frame override

Inventor: Hristos N. Giannopoulos (Woburn, MA)
Assignee: The MITRE Corporation
H04L63/1483G06F13/4282H03M13/09
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,484,425
App. No.
15/719,071
Granted
Nov 19, 2019
Kind
B2
Abstract

The present disclosure relates to suppressing malicious transmissions by overriding frames on a Controller Area Network (CAN) bus. In an embodiment, a method operates by determining when a frame arrives at a CAN bus. A determination of whether to override the frame is made based on an arbitration ID of the frame received from the CAN bus. In response to determining to override the frame, a predetermined sequence of bits is transmitted on the CAN bus during transmission of a data length code (DLC) field in the frame. A message to complete the frame is generated based on the predetermined sequence of bits. Then, the message is transmitted on the CAN bus.

Claims (59)

1. A method to suppress malicious transmissions by overriding frames on a Controller Area Network (CAN) bus, comprising:

determining when a frame arrives at a CAN bus;

receiving, from the CAN bus, an arbitration identification (ID) of the frame;

determining whether to override the frame based on the arbitration ID;

in response to determining to override the frame, transmitting a predetermined sequence of bits on the CAN bus during transmission of a data length code (DLC) field of the frame to override the frame without triggering an error on the CAN bus;

generating a message that completes and validates the overridden frame based on the predetermined sequence of bits; and

transmitting the message on the CAN bus to complete transmission of the overridden frame.

2. The method of claim 1 , wherein the predetermined sequence of bits comprises a predetermined number of consecutive dominant bits.

3. The method of claim 1 , wherein determining whether to override the frame comprises:

determining whether to override the frame before receiving a cyclic redundancy check (CRC) of the frame.

4. The method of claim 1 , wherein determining whether to override the frame comprises:

determining whether a plurality of IDs comprises the arbitration ID.

5. The method of claim 4 , wherein determining whether to override the frame comprises:

receiving a plurality of statuses of a vehicle; and

determining whether to override the frame based on whether the plurality of statuses matches a plurality of criteria.

6. The method of claim 1 , wherein generating the message comprises:

calculating a CRC that validates the frame, and wherein the message includes the CRC.

7. The method of claim 1 , wherein transmitting the predetermined sequence of bits on the CAN bus comprises:

tracking a field of the frame to be transmitted on the CAN bus; and

determining that the field is the DLC field.

8. The method of claim 1 , wherein transmitting the predetermined sequence of bits comprises:

retrieving the predetermined sequence of bits from a memory.

9. The method of claim 8 , comprising:

receiving a DLC of a second frame related to the frame before receiving the frame;

in response to determining to override the second frame, determining whether the DLC includes a recessive bit;

in response to determining that the DLC includes the recessive bit, generating a new DLC having the recessive bit flipped to a dominant bit; and

storing the new DLC in the memory.

10. The method of claim 1 , wherein generating the message comprises:

retrieving a pre-stored message associated with the arbitration ID and the predetermined sequence of bits.

11. A system to suppress malicious transmissions by overriding frames on a Controller Area Network (CAN) bus, comprising:

one or more integrated circuits configured to:

determine when a frame arrives at a CAN bus;

receive, from the CAN bus, an arbitration identification (ID) of the frame;

determine whether to override the frame based on the arbitration ID;

in response to determining to override the frame, transmitting a predetermined sequence of bits on the CAN bus during transmission of a data length code (DLC) field of the frame to override the frame without triggering an error on the CAN bus;

generate a message that completes and validates the overridden frame based on the predetermined sequence of; and

transmit the message on the CAN bus to complete transmission of the overridden frame.

12. The system of claim 11 , wherein the predetermined sequence of bits comprises a predetermined number of consecutive dominant bits.

13. The system of claim 11 , wherein to determine whether to override the frame, the one or more integrated circuits are configured to:

determine whether to override the frame before receiving a cyclic redundancy check (CRC) of the frame.

14. The system of claim 11 , wherein to determine whether to override the frame, the one or more integrated circuits are configured to:

determine whether a plurality of IDs comprises the arbitration ID.

15. The system of claim 14 , wherein to determine whether to override the frame, the one or more integrated circuits are configured to:

receive a plurality of statuses of a vehicle; and

determine whether to override the frame based on whether the plurality of statuses matches a plurality of criteria.

16. The system of claim 11 , wherein to generate the message, the one or more integrated circuits are configured to:

calculate a cyclic redundancy check (CRC) that validates the frame, and wherein the message includes the CRC.

17. The system of claim 11 , wherein to transmit the predetermined value on the CAN bus, the one or more integrated circuits are configured to:

track a field of the frame to be transmitted on the CAN bus; and

determine that the field is the DLC field.

18. The system of claim 11 , wherein to transmit the predetermined value, the one or more integrated circuits are configured to:

retrieve the predetermined sequence of bits from a memory.

19. The system of claim 18 , wherein the one or more integrated circuits are configured to:

receive a DLC of a second frame related to the frame before receiving the frame;

in response to determining to override the second frame, determine whether the DLC includes a recessive bit;

in response to determining that the DLC includes the recessive bit, generate a new DLC having the recessive bit flipped to a dominant bit; and

store the new DLC in the memory.

20. The system of claim 11 , wherein the system is implemented in an Electronic Control Unit (ECU) coupled to the CAN bus.

21. The system of claim 11 , wherein the one or more integrated circuits comprise a field-programmable gate array (FPGA).

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 28, 2017
From: GIANNOPOULOS, HRISTOS N.
To: THE MITRE CORPORATION
Reel/Frame 043731/0699 →
Continuity (1)
Related Publication 20190098047A1 · Mar 28, 2019
Cited By (1)
US 12,335,277