CAN Bus Invalid Packet Detection via Whitelist Validation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In vehicular communication networks, hackers can manipulate critical systems by injecting invalid messages with higher priority CAN IDs, causing disruptions and starvation of essential messages, which existing technologies fail to effectively detect and mitigate.
Innovation Solution
A system and method that monitor CAN identifiers (CAN IDs) using time thresholds, historical data, and ACK Slot bits to detect invalid packets, storing valid and invalid packets in white and black lists respectively, and disabling invalid packets to prevent hacking attempts.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the CAN bus allows messages with higher priority CAN IDs to transmit, then message arbitration efficiency is improved, but the system becomes vulnerable to hacking and invalid message injection
Solution Approach 1:
The system performs preliminary learning and validation of CAN IDs during a learning mode before normal operation. Valid CAN IDs are stored in a whitelist database during this preliminary phase, so that during normal operation, only pre-validated IDs are accepted. This preliminary action prevents hacking attempts without affecting the priority-based arbitration efficiency.
Solution Approach 2:
The patent introduces an intermediary validation mechanism that sits between the CAN bus arbitration and the ECU processing. The hacking detection system intercepts messages, validates CAN IDs against the whitelist, and filters out invalid messages before they reach the target ECUs. This intermediary layer maintains the efficiency of priority-based arbitration while adding security validation.
2Reliability
If the system monitors and validates each CAN packet, then system security is improved, but the processing complexity and time overhead increase
Solution Approach 1:
The system performs preliminary learning and validation of CAN IDs during a learning mode before normal operation. Valid CAN IDs are stored in a whitelist database during this preliminary phase, so that during normal operation, only pre-validated IDs are accepted. This preliminary action prevents hacking attempts without affecting the priority-based arbitration efficiency.
Solution Approach 2:
The patent uses lightweight data structures (whitelist and blacklist databases) that store only essential CAN ID information. The validation process uses simple comparison operations rather than complex analysis. This approach provides robust security validation while minimizing processing overhead and system complexity.
3Measurement precision
If the system uses multiple validity detection methods (time threshold, historical data, ACK Slot bit), then detection accuracy is improved, but the processing time and computational load increase
Solution Approach 1:
The system implements a tiered validation approach where the whitelist check serves as the primary and most critical validation method. The time threshold and ACK Slot bit validation provide supplementary checks. By focusing on the most effective validation methods and implementing them in a prioritized manner, the system achieves high detection accuracy while controlling processing time through efficient check sequencing.
Data Source
AI summary
A system and method for detecting an invalid packet on a Controller Area Network (CAN) bus having a plurality of CAN nodes coupled thereto is provided. The method may include monitoring a CAN identifier (CAN ID) of each packet sent by each CAN node. The method may also include determining whether to detect the validity using a time threshold, historical data, or an acknowledgement (ACK) bit. For example, when the CAN ID is unknown, the method may include the use of validity detection process based upon the ACK Slot bit. Accordingly, the method may include detecting the validity of each packet using the selected method determined. In addition, the method may include storing the detected validity in a database having a listing for valid packets (white list) and a listing for invalid packets (black list). Moreover, the method may include disabling the invalid packets.


