which assumes that the attacker gain the control of
the engine ECU and generate abnormal messages by
arbitrarily modifying the messages sent by the
engine ECU. Abnormal messages correspond to
different movement states of the vehicle, the attacker
injects the message which is inconsistent with the
current movement state of the vehicle into the CAN
bus to launch the attack. Firstly, we collect engine
ECU’s messages in different movement states and
construct the abnormal datasets by using proposed
attack model. Secondly, we use the constructed
normal and abnormal datasets to train the DNN
model. Finally, new messages are classified using
the trained model. The experimental results show
that the model has the advantages of high
classification accuracy rate, low computational
complexity and good compatibility with vehicular
network. The contributions of this paper are as
follows:
1. Proposing a deep neural network model to
detect the attacks for CAN messages.
2. Introducing a novel attack model for the CAN
bus of the vehicle and quantifying the attacker's
ability. Different abnormal datasets are constructed
for different levels of attackers.
3. The performance of the model is verified by
experiments.
The structure of the paper is as follows:
The second part mainly introduces the
background of the CAN bus; the third part
introduces the detection technology for abnormal
messages of vehicles; the fourth part is mainly about
the system model and the attack model. The fifth
part describes our method, including the structure of
network model and the analysis of experimental
results; the last part is the conclusion.
2 BACKGROUND
2.1 CAN Bus
The Controller Area Network (CAN) bus protocol is
a serial communication protocol that supports
distributed real-time control with high
security(Gmbh, 1991). It is one of the most widely
used network communication protocols for vehicles.
According to speeds of the data transmission, CAN
bus can be divided into two categories, one is the
high-speed CAN bus with data rate of 125kbps to
1Mbps, mainly used in nodes with high real-time
requirements, such as engine management unit,
electronic transmission control, etc. The other is the
low-speed CAN bus with a data transmission rate of
5 kbps to 125 kbps. It is used in nodes with low real-
time requirements, such as seat adjustment, lighting,
and mirror adjustment.
2.2 The Structure and Transmission
Process of Messages on the CAN
Bus
Messages on the CAN bus are mainly divided into
four types: data frames (standard data frames and
extended data frames), remote frames, error frames,
and overload frames. Standard data frames are the
most common and numerous frame types in the
vehicle, Therefore, standard data frames are studied
in this paper. Its fields include: Start Field (SOF),
Identifier Field (ID), Control Field (Control), Data
Field (Data), Cyclic Redundancy Check Field
(CRC), Acknowledgement Field (ACK), and End
Field (EOF). The identifier field determines the
priority of sending messages, it is used to avoid two
nodes competing for the CAN bus at the same time;
the control field represents the size of the data field;
the data field represents the data information carried
by the message; the cyclic redundancy check field is
used to detect errors in the message; the
acknowledgment field confirms whether the node
has received a valid CAN message. The structure of
standard data frame is shown in Figure 1.
Figure 1. The structure of standard data frame.
Messages on the CAN bus support multiple
access, all nodes send and receive messages through
the CAN bus in the vehicle’s network. At the same
time, messages on the CAN bus are broadcast to all
nodes connected to the bus. Each node receives
messages from other nodes, but only accepts what it
needs and ignore the others. As shown in Figure 2,
after the messages sent by node 1 are broadcast to
nodes 2 and node 3, the two nodes will check the
message to see if they need. If so, receive them;
otherwise, ignore them.
The research about messages on the CAN bus
mainly focuses on the ID and Data fields. In the
standard data frame, the ID field has 11 bits, each ID
corresponds to an ECU with a specific function in
the vehicle; the Data field contains 0-64 bits of high-
dimensional data information transmitted in the
message, representing different parameter values of
the sensor associated with the ECU. In general, the