Smartcities 03 00002 v2
Smartcities 03 00002 v2
Smartcities 03 00002 v2
Article
Identify a Spoofing Attack on an In-Vehicle CAN Bus
Based on the Deep Features of an ECU
Fingerprint Signal
Yun Yang 1, * , Zongtao Duan 1 and Mark Tehranipoor 2
1 School of Information & Engineering, Chang’an University, Xi’an 710064, China; ztduan@chd.edu.cn
2 Department of Electrical and Computer Engineering, Florida Institute for Cybersecurity Research,
University of Florida, Gainesville, FL 32611, USA; tehranipoor@ece.ufl.edu
* Correspondence: yangyun@chd.edu.cn
Received: 18 December 2019; Accepted: 10 January 2020; Published: 17 January 2020
Abstract: An in-vehicle controller area network (CAN) bus is vulnerable because of increased sharing
among modern autonomous vehicles and the weak protocol design principle. Spoofing attacks on a
CAN bus can be difficult to detect and have the potential to enable devastating attacks. To effectively
identify spoofing attacks, we propose the authentication of sender identities using a recurrent neural
network with long short-term memory units (RNN-LSTM) based on the features of a fingerprint
signal. We also present a way to generate the analog fingerprint signals of electronic control units
(ECUs) to train the proposed RNN-LSTM classifier. The proposed RNN-LSTM model is accelerated
on embedded Field-Programmable Gate Arrays (FPGA) to allow for real-time detection despite high
computational complexity. A comparison of experimental results with the latest studies demonstrates
the capability of the proposed RNN-LSTM model and its potential as a solution to in-vehicle CAN
bus security.
Keywords: controller area network (CAN); electronic control units (ECU); spoofing attack; deep
recurrent neural network
1. Introduction
Multi-master serial controller area network (CAN) protocol is widely adopted for the real-time
control of, and safety data communication among, electronic control units (ECUs) in modern intelligent
vehicles [1]. The security of a CAN bus is shown and widely accepted to be important among intelligent
transportation research [2,3]. Compared to other cybersecurity threats, attacks on vehicles directly
threaten the safety of humans’ lives. While a lot of work has been done on ensuring the quality,
reliability, and safety of the autonomous vehicle, less attention has been given to protecting them
from malicious attacks. Since the CAN bus is a core component of in-vehicle communication, and the
security weakness of the CAN bus design is intrinsic, adversaries can typically break the CAN bus to
attack a vehicle or take full control of the ECUs by injecting spoofing messages [4,5].
As the security of modern autonomous vehicles is a challenging task and the CAN bus is the de
facto standard of the automobile industry, the security issues of the CAN bus have become a major
concern for modern autonomous vehicle researchers and developers. One way to improve the security
of the CAN bus is to add message authentication or channel encryption to extend the CAN protocol.
However, implementing changes at the protocol level can cause backward compatibility issues with
the existing network. Furthermore, implementing authentication and encryption also increases the
payload of the CAN network, which must remain under 50% of its maximum to be able to transfer
critical messages in real-time. Hence, an efficient measurement should be compatible with the existing
CAN network protocol, and should not modify ECU firmware. Researchers have proposed solutions
covering both the physical layer [6,7] and the data link layer [8–10] of the standard CAN protocol.
However, most of these methods cannot evaluate the spoofing message attack scenario well. More
recently, deep neural networks, like the convolutional neural network (CNN) and the recurrent neural
network (RNN), achieved great success in the hardware security field. Different from popular CNN, the
standard RNN is powerful enough to train time sequence data by having cyclic architecture. Training
the conventional RNN mostly meets the gradient vanishing trouble, especially when the input data has
a long step size like CAN signal. RNN, with long short-term memory units, can address the training
difficulties of RNN and achieve a high detection accuracy and better performance. In this paper,
we propose the use of a recurrent neural network with long short-term memory units (RNN-LSTM)
as a classifier to improve the detection accuracy and decrease the misclassification rate. We build a
simulation model of the CAN bus to produce analog signals as training samples. To optimize the
time cost of RNN, we accelerated computation using Field-Programmable Gate Arrays (FPGA). The
contributions of this work are summarized as follows:
1) The RNN-LSTM is proposed to extract the deep features and authenticate CAN data frame IDs
based on the inherent characteristics of the electronic device. Experimental results show that our
method improves the accuracy of ECU identification.
2) A simulation model of the ECU’s communication physical layer is proposed to produce
simulating data.
3) The acceleration of the classifier with FPGA is proposed by parallel processing to satisfy
real-time detection.
The rest of this paper is organized as follows: Section 2 reviews related work and the security of
the intelligent vehicle and motivates the proposed method. Section 3 describes the background of ECU
fingerprints and the CAN bus protocol. In Section 4, we present our theory model and RNN-LSTM
algorithm for ECU fingerprint signal classification. The results of the experimental validation are
shown in Section 5. The paper is concluded and future work is envisioned in Section 6.
weakness in the error handling scheme of the CAN bus, which can make the attack difficult to detect
using the receiver [16].
One identifying characteristic of the attack Valasek et al. reported is an elevated rate of CAN bus
frames because their attack CAN message needs to disguise itself as if it were sent from a legitimate
source. This leads to the development of an intrusion detection system (IDS) that is based on time
intervals between every two messages detected on the CAN bus [17]. Unfortunately, recent attacks,
such as the bus-off attack, were designed to stop the legitimate source of transmitting and would
therefore likely enable attacks that do not need to elevate the CAN bus frame rate.
Noting that all existing attacks require compromised ECUs to send forged CAN bus frames
disguising as frames sent from a legitimate source, the last category of intrusion detection systems
calls for the authentication of sender identify upon frames being transmitted over CAN bus. This has
been proposed in two approaches: in [18,19], cryptographically secure authentication protocols were
proposed to authenticate frames; in [5,14], machine learning techniques were proposed to authenticate
frames using the physical characteristics of the frame.
There are two apparent weaknesses with cryptographic authentication being used on the CAN
bus. The first problem is the data rate. The CAN bus has a rather limited data rate of megabits per
second and needs to satisfy real-time control. This limits the strength of the encryption/one-way
function used in a cryptographic authentication scheme and makes it vulnerable to attacks with a
high computing power. A more severe problem is that the CAN bus serves as a diagnostic tool for
mechanics, making their access imperative. Any car mechanic will need authentication keys to access
it, and it is impractical to think keys shared with so many users will remain safe.
On the other hand, the physical characteristics of the sender utilize information readily available
on a targeted vehicle, while such physical features are difficult for attackers to obtain because of their
natural inaccessibility, especially a remote attacker. Parametric variation in ECUs, as well as twin-twist
wires carrying CAN bus frames, produces individually unique and identifiable characteristics, making
this approach promising. In [14], clock skews of sender ECU are used to authenticate its identity. By
applying the recursive least square (RLS) algorithm, a low misidentifying rate of 0.055% was reported.
However, the proposed IDS did not attempt to utilize features of the CAN message time series and
was therefore only able to authenticate ECUs sending periodic CAN messages and not those that send
periodic messages, which are likely spoofing frames. In [4,5], the classification of electrical CAN signal
using a support vector machine (SVM), a neural network (NN), and a bagged decision tree (BDT) was
investigated. In [4], by comparing time and frequency domain features of physical CAN signal with an
extended CAN ID field, an even lower average misclassification rate at 0.36% was reported.
We find an approach of intrusion detection through sender authentication with CAN frame electric
characteristics to be most well-founded among proposals to detect attacks on intelligent vehicle CAN
bus; moreover, we find it advantageous to utilize all time and frequency domain characteristics of
CAN frame signals as opposed to only using limited information, such as clock skew. Yet we find the
classification methods used in existing literature wanting. It is likely an algorithm more suitable for
this task will improve the false alarm rate.
We propose to use a long short-term memory (LSTM) recurrent neural network (RNN) to better
capture such identifying features. Compared to feed-forward neural networks, LSTM and RNN are
better suited to classifying time series data because of its internal state and relative insensitivity to gap
length, which are characteristic of analog electric behavior of CAN data frames. Recently, RNNs with
LSTM units are reported to perform well in extracting deep features of time series data [12,13].
3. Backgrounds
A modern autonomous vehicle contains multiple ECUs, each of which presents unique analog
signal characteristics available for fingerprinting the device [20]. Figure 1 illustrates the inherent
variation in the time domain analog signal between two devices transmitting the same messages.
(Carrier Sense Multiple Access/Collision Detection with Arbitration on Message Priority) [21], which
means that the higher priority CAN node can send messages and the lower priority one should be
postponed when two nodes try to access CAN bus and transmit data simultaneously. In this paper,
we focus on the physical layer of the CAN protocol. The electric characteristic of the CAN bus is
shown in the next figure according to the International Organization for
Smart Cities 2020, 3 20
Standardization(ISO)standard. Two logical states, including recessive and dominant, are defined.
Smart Cities 2020, 3 FOR PEER REVIEW 4
half-duplex, high-speed communication network. The speeds of the CAN are between 10 kbit/s and
1 Mbit/s depending on the length of the physical wiring. A CAN network uses CSMA/CD+AMP
(Carrier Sense Multiple Access/Collision Detection with Arbitration on Message Priority) [21], which
Voltage
means that the higher priority CAN node can send messages and the lower priority one should be
postponed when two nodes try to access CAN bus and transmit data simultaneously. In this paper,
we focus on the physical layer of the CAN protocol. The electric characteristic of the CAN bus is
shown in the next figure according to the International Organization for
Standardization(ISO)standard. Two logical states, including recessive and dominant, are defined.
Figure 1. Analog signals of two electronic control units (ECUs) transmitting the same data.
Figure 1. Analog signals of two electronic control units (ECUs) transmitting the same data.
Voltage
Dominant
‘0’
V
Vdiff(d) t
CANH
Vdiff(r)
Figure 2. The voltage values on the controller area network (CAN) bus of the recessive and
dominant state.
CANL
Recessive Recessive
4. System Model
‘1’ ‘1’
In this section, we present a theoretical model of CAN physical layer communication and an
Dominant
attack model for our deep machine learning algorithm
‘0’ to authenticate the CAN frame sender by
classifying ECU fingerprint.
t
Figure 2. The voltage values on the controller area network (CAN) bus of the recessive and
Figure 2. state.
dominant The voltage values on the controller area network (CAN) bus of the recessive and
dominant state.
4. System Model
4. System
In thisModel
section, we present a theoretical model of CAN physical layer communication and an attack
modelIn for
thisour deep machine
section, learning
we present algorithm
a theoretical to authenticate
model the CAN
of CAN physical frame
layer sender by classifying
communication and an
ECU fingerprint.
attack model for our deep machine learning algorithm to authenticate the CAN frame sender by
classifying ECU fingerprint.
Smart Cities 2020, 3 21
l0 + l∞ ( f / fm )b
L( f ) = (2)
1 + l∞ ( f / fm )b
C ( f ) = c∞ (3)
G( f ) = g0 f g (4)
where R is the resistance per unit length, L is the inductance per unit length, C is the capacitance
per unit length, and G is the conductance per unit length. Assuming that the length of the wire is
1km based on the American wire gauge (AWG16 or AWG24) standard, for the CAN transmission
line, the constant r evaluates to 174.55888 Ω or 286.17578 Ω, a evaluates to 0.0530734814 Ω4 Hz2 or
0.147696204 Ω4 Hz2 , l0 evaluates to 6.1729593 × 10−6 or 675.36888 × 10−6 , l∞ evaluates to 478.97099 ×
10−6 or 488.95186 × 10−6 , fm evaluates to 553760.63 or 806338.63, c∞ evaluates to 50 × 10−9 or 49 × 10−9 ,
g0 evaluates to 0.23487476 × 10−12 or 4.3 × 10−8 , and g evaluates to 1.38 or 0.7. Since the CAN bus uses
low-frequency communication and the length is small, C and L are very small and can be ignored in
the physical layer model of the CAN bus in the vehicle. The CAN bus physical layer characteristics
can be modeled as a simple two-port pure resistance network as follows:
1 1
" # " #
i1,i 2xi,i+1 Ri,i+1 ( f ) −2xi,i+1 Ri,i+1 ( f )
u1,i+1
= 1 1
(5)
i2,i u2,i+1
−2xi,i+1 Ri,i+1 ( f ) 2xi,i+1 Ri,i+1 ( f )
where xi,i+1 is the length of the bus wire between the ith node and (i + 1)th node, and Ri,i+1 ( f ) is the
equivalent resistance of the bus wire between the ith node and (i + 1)th node if we further denote the
following: 1
Ai,i+1 = 2xi,i+1 Ri,i+1 ( f )
1
Bi,i+1 = −2xi,i+1 Ri,i+1 ( f )
(6)
Ci,i+1 = −2x 1R ( f )
i,i + 1 i,i + 1
Di,i+1 = 2x R1 ( f )
i,i+1 i,i+1
The CAN bus physical layer model then becomes an abstract as a series of the cascade form a
two-port network using the ABCD parameter matrix. For instance, Figure 3 presents a cascading
two-port network CAN bus model using the transmission ABCD matrix [23,24].
Vehicular ECUs typically included a microcontroller core, memory units, digital and analog
input, logic outputs, and communication ports. A physical communication connection defined in a
standard CAN bus requires a CAN controller and a CAN transceiver. The CAN controller is designed
to interface with the microcontroller host, and the CAN transceiver is built to connect the ECU to the
physical CAN bus [25]. Therefore, we only need to construct a theoretical model for a CAN transceiver
SmartVehicular
Cities 2020, 3 ECUs
FOR PEER REVIEWincluded
typically a microcontroller core, memory units, digital and analog6
input, logic outputs, and communication ports. A physical communication connection defined in a
Vehicular
standard CANECUs typicallyaincluded
bus requires a microcontroller
CAN controller and a CAN core,transceiver.
memory units, The digital and analog
CAN controller is
input,
designed to interface with the microcontroller host, and the CAN transceiver is built to connectin
logic outputs, and communication ports. A physical communication connection defined thea
standard
Smart Cities
ECU to the CAN
2020, 3 bus requires
physical CAN busa[25].
CAN controllerweand
Therefore, onlya need
CANtotransceiver.
construct a The CAN controller
theoretical model for isa
22
designed
CAN transceiver to simulate the ECU nodes. Our physical layer model of the transceiver connect
to interface with the microcontroller host, and the CAN transceiver is built to is shownthe
in
ECU
Figure to the
4. physical
Based on CAN
the bus
previous[25]. Therefore,
physical wire we
andonly need
transceiverto construct
model, we a theoretical
can build model
the for a
in-vehicle
to simulate the ECU nodes. Our physical layer model of the transceiver is shown in Figure 4. Based on
CAN
CAN transceiver
communication to simulate the ECU nodes. Ournodes
physical layerinmodel of5.the transceiver is shown in
the previous physical model
wire andwith multiple
transceiver ECU
model, shown
we can build Figure
the in-vehicle CAN communication
Figure 4. Based on the previous physical wire and transceiver model, we can build the in-vehicle
model with multiple ECU nodes shown in Figure 5.
CAN communication
Node model with multiple ECU nodes shown inNode
Node Figure 5. Node
1 2 i i+1
Node Node Node Node
1 2 i i+1
CANH
CANL
Figure 3. The CAN bus model of cascaded tow port network with transmission ABCD matrix.
Figure 3. The CAN bus model of cascaded tow port network with transmission ABCD matrix.
Figure 3. The CAN bus model of cascaded tow port network with transmission ABCD matrix.
VDD
VDD
C2 4V
100nF 4V
VDD
GND VDD VDD
VDD
C2 4V
GND
100nF R9 4V
VDD 1.5kΩ
R5 VDD
GND
R3 U1 499Ω CANH
TX 2 GND 3 3 C3 R7 R9
12
8
6 7 1.5kΩ
R11
499Ω Out- 5 R5
2
1uF 50Ω
010101001001 Vocm
R3 4 U1 499Ω CANH
TX 1250kΩ 50%
Out+
2 3 1 C3C4
GND R4 R7
3
8
6
4
6 5 7 Key=A
R11
499Ω Out- 5
AD8138AR
RX 499Ω 2
1uF
1uF 50Ω
010101001001 Vocm
R6 R8 11
4 Out+ 8 50kΩ
1
GND C4 50%CANL
GND R4
GND 6 499Ω
4
5 50Ω Key=A
499Ω AD8138AR
RX 1uF
GND R6 8 R8 11
R10
VDD GND 1.5kΩ CANL
GND 499Ω 50Ω
4V
VDD 1 GND R10
VDD GND
1.5kΩ
4V C1
R1 100nF
10kΩ
VDD 1 GND
GND GND
C1
R1 GND
100nF
10kΩ
R2
10kΩ GND GND
GND GND
R2
GND
10kΩ
Smart Cities 2020, GND
3 FOR PEER REVIEW 7
GND Figure 4. The electric model of the transceiver.
Figure 4. The electric model of the transceiver.
Engine Suspension Speed
Control ECU Control ECU Control ECU
Figure 4. The electric model of the transceiver.
CAN Controller CAN Controller CAN Controller
R R
Figure 5. The CAN bus communication model with ECU nodes in the vehicle.
Figure 5. The CAN bus communication model with ECU nodes in the vehicle.
4.2. Spoofing Attack Model on CAN Bus
4.2. Spoofing Attack Model on CAN Bus
In this work, we are most concerned with providing intrusion detection against spoofing attacks
on theInCAN
this work, wespoofing
bus. The are most concerned
attack withasproviding
is defined intrusion
a compromised ECUdetection against
sending CAN spoofing
data frames
attacks on the CAN bus. The spoofing attack is defined as a compromised ECU sending CAN data
frames with a modified (forged) ID field that intends to masquerade as data or instruction from a
legitimate source ECU node.
Consider the following hypothetical attack scenario illustrated with Figure 6, where three ECUs
exist on the CAN bus, denoted as ECU1, ECU2, and ECU3, where ECU2 is a malicious ECU, i.e., a
Figure 5. The CAN bus communication model with ECU nodes in the vehicle.
Figure6.6.The
Figure TheCAN
CANbus
busspoofing
spoofingmessage
messageattack
attackmodel
modelwith
withECU
ECUnodes
nodesinin
the vehicle.
the vehicle.
TheThespoofing
spoofingattack
attackmodel
modelisisa ageneralized
generalizedmodelmodeldue duetotothe
thefact
factthat
thatthese
thesetypes
typesofofattacks
attacksare
are
easy to implement and can reduce the performance of communication.
easy to implement and can reduce the performance of communication. The following The following works describe
works
several reported
describe CAN
several bus attacks:
reported CAN in bus[2],attacks:
a compromised ECU sends attack
in [2], a compromised ECU messages to target
sends attack ECUs byto
messages
sending CAN data
target ECUs framesCAN
by sending of a greatly elevated
data frames of aframe rate
greatly to causeframe
elevated the desired
rate to effect
causebefore a genuine
the desired effect
sender communicates.; in [15,16], the attacker causes enough communication
before a genuine sender communicates.; in [15,16], the attacker causes enough communication errors for a genuine
errors
sender to eliminate it from CAN bus communication. The compromised ECU can then send attack
messages without elevating the frame rate. It can also be theorized that an intrusive ECU could be
attached to the CAN bus when compromising an ECU is too difficult.
In each case, the spoofing attack would be detected by an intrusion detection system that can
authenticate sender identity. Once detected, the driver could be alerted, while CAN bus communication
can be halted by simply shorting the CANH and CANL [2]. On the other hand, it follows that such
a system will need to have a very low false-alarm rate and detection rate to ensure practicality and
security to the extent that such parameters become an obvious metric of the performance of intrusion
detection systems.
CAN bus time-series signals. In RNN with LSTM architecture, each LSTM unit has three gates: input
it , forget ft , and output ot . For LSTM with input xt at the time t, three gates are calculated as follows:
it = σ(xt Wxi ,xt + ht−1 Whi ,ht−1 + bi )
ft = σ(xt Wx f ,xt + ht−1 Wh f ,ht−1 + b f ) (7)
ot = σ(xt Wx ,x + ht−1 Wh ,h + bo )
o t o t−1
where σ is the sigmoid function, W is the weight matrix, and b is biased. The hidden state of RNN
is denoted with h. For t ∈ {1, 2, · · · , T}, the output sequence y can be iteratively computed by the
following equation:
yt = W y ∗ LSTM(xt , ht−1 ; W ) + b y (8)
The standard RNN-LSTM algorithm can involve complicated computation and should be trained
off-line to ensure performance. To ensure real-time classification, RNN-LSTM needs to be computed in
parallel, which is difficult for the embedded microprocessor of ECUs typically found in vehicles. A
FPGA-based accelerator is implemented to satisfy this requirement.
1) To optimize the computation procedure, we firstly deal with a higher computation of LSTM gates
based on FPGA. For the flatted multiplications on the matrix of each LSTM gate, our accelerator
can achieve the xt Wx + ht−1 Wh computation, where Wx ∈ R100∗10 , Wh ∈ R100∗10 , xt ∈ R100∗1 , and
ht−1 ∈ R10∗1 . The non-linear activation function sigmoid and tanh includes the exponentiation and
division, which are very expensive in FPGA. So, we approximated them with segmented linear
functions hard_sigmoid and hard_tanh, which are calculated as follows:
1 (x ≥ 2.5)
(−2.5 < x < 2.5)
hard_sigmoid(x) = 0.2x + 0.5 (9)
0 (x ≤ −2.5)
1 (x ≥ 1)
(−1 < x < 1)
hard_tanh(x) = x (10)
−1 (x ≤ −1)
2) To reduce the communication consumption, we must consider the storage position in FPGA
for the weights and biases of the RNN model, which are usually near 10M. We have adopted a
compromise between in-vehicle CAN communication and limited memory space in the ECU
platform, where the network parameters, the matrix, or the vector are saved in external DRAM
and can be read into FPGA through AXI4 stream interface. An overview of our RNN-SLTM
acceleration implementation on the ZYNQ-7010 embedded platform is presented in Figure 7.
All experiments are performed on a computer with Intel(R) Xeon(R) CPU E3-1225 V6 (3.30
GHz), 32GB DDR4.
TX
ECU
AXI
CANH CAN CAN ARM FPGA
Transceiver Controller Processor Core
CANL RX AXI
U1
Sigmoid V1
ARM processor realizes attack detection U2
* + * V2
and RNN parameter transmission
(embedded C language implementation) U10 * + *
V10
SLAVE_AXI * + *
AXI WX
ARM DMA * + *
DDR
Processor *
Memory + *
* + *
* + *
CENTRAL_AXI
* + *
* + *
* + *
AXI MASTER_AXI
DMA
Implementation of RNN
accelerated IP core on FPGA chip
(implemented by Verilog HDL)
Figure 7.7.An
Anoverview of the
overview of recurrent neural network
the recurrent with longwith
neural network short-term
long memory units
short-term (RNN-LSTM)
memory units
hardware implementation.
(RNN-LSTM) hardware implementation.
5. Experimental Results
All experiments are performed on a computer with Intel(R) Xeon(R) CPU E3-1225 V6 (3.30 GHz),
32GB DDR4.
4
Simulation CAN Signal
2
Figure 9. The simulation data based on the theoretical model of the CAN bus physical layer.
Figure 9. The simulation data based on the theoretical model of the CAN bus physical layer.
Smart Cities 2020, 3 27
Table 1. The testing result of simulation data based on the CAN bus.
Evaluation N
Score >=
Threshold
Trigger
Alarm
Y
Classification N
Result = ECU
ID
Figure 10.
Figure The simulation
10. The simulation data
data based
based on
on the
the theoretical
theoretical model
model of
of the
the CAN
CAN bus
bus physical
physical layer.
layer.
Table 3. The field-programmable gate arrays’ (FPGA) resource utilization of the RNN acceleration
Smart Cities 2020, 3 28
of data from the PS side, performing the parallel computing in the PL part, and returning the results to
the PS side. The RNN accelerator IP can perform matrix multiplication operations, which constitute
the majority of operations in the testing stage of the RNN model.
The whole RNN accelerator performs 100*10*10 multiplication-addition operations in one batch.
For the computing of one batch, each FPGA PE unit can perform one fixed-point multiplication and
one ideal in one cycle instead of floating-point computing. There are four available AXI DMA ports
and each one can send packages of 32 bits at 100 MHz and can be able to stream weights and vector
values between FGPA core and external DDR memory. So, the RNN-LSTM acceleration detection is as
follows: FPGA running at 100 MHz are 10.8 times faster than on the ARM core running at 650 MHz.
The on-chip resource utilization is reported by Vivado(v2018.3) after implementation, which is shown
in Table 3. The power consumption report, by Vivado power, for ARM (CPU0 on & CPU1 off) and
FPGA is similar 1.8 ± 0.1 W. These results indicate that the proposed RNN-LSTM accelerated model
can be a suitable lower cost, real-time, in-vehicle application scenario.
Table 3. The field-programmable gate arrays’ (FPGA) resource utilization of the RNN acceleration model.
6. Conclusions
To improve the detection of spoofing attacks on an in-vehicle CAN bus, we propose a novel and
effective theoretical model of a CAN physical layer for the authentication of CAN data frame IDs. After
collecting big simulation CAN signal data based on the proposed theoretical model, we apply a RNN
with the LSTM unit to extract the deep features of the analog CAN signal and detect the malicious
spoofing ECU nodes on an in-vehicle CAN bus. The performance of the proposed RNN-LSTM model
is comparing with BDT, NN, and SVM model. The experimental result shows that RNN-LSTM works
best for the detecting spoofing attack problem of an in-vehicle CAN bus. Of course, since the big
training dataset is simulated, the proposed model has been verified by real in-vehicle CAN data. To
satisfy the real-time restriction of CAN bus communication, we designed a hardware accelerator to
process the proposed deep model. In the future, more diverse real CAN bus signals will be collected
and used in validating and improving the proposed RNN-LSTM model, and the optimization of the
FPGA accelerator will be designed to promote the proposed deep neural network.
Author Contributions: Writing, original draft preparation, Y.Y.; supervision, Z.D.; conceptualization, review and
editing, M.T. All authors have read and agreed to the published version of the manuscript.
Funding: This work was supported by the Key Research Item for Industry in Shaanxi Province under Grant
2018GY-136.The work of Y. Yang was supported by the China Scholarship Council under Grant 201706565053.
Acknowledgments: The authors thank anonymous reviewers for their constructive comments and suggestions.
Conflicts of Interest: The authors declare no conflict of interest.
References
1. Tuohy, S.; Glavin, M.; Hughes, C.; Jones, E.; Trivedi, M.; Kilmartin, L. Intra-vehicle networks: A review. IEEE
Trans. Intell. Transp. Syst. 2015, 16, 534–545. [CrossRef]
2. Miller, C.; Valasek, C. Remote exploitation of an unaltered passenger vehicle. Black Hat USA 2015, 2015, 91.
3. Groza, B.; Murvay, P.-S.; Murvay, S. Security solutions for the controller area network: Bringing authentication
to in-vehicle networks. IEEE Veh. Technol. Mag. 2018, 13, 40–47. [CrossRef]
Smart Cities 2020, 3 29
4. Avatefipour, O.; Hafeez, A.; Tayyab, M.; Malik, H. Linking received packet to the transmitter through
physical-fingerprinting of controller area network. In Proceedings of the 2017 IEEE Workshop on Information
Forensics and Security (WIFS), Rennes, France, 4–7 December 2017; pp. 1–6.
5. Choi, W.; Jo, H.J.; Woo, S.; Chun, J.Y.; Park, J.; Lee, D.H. Identifying ECUs using inimitable characteristics of
signals in controller area networks. IEEE Trans. Veh. Technol. 2018, 67, 4757–4770. [CrossRef]
6. Murvay, P.-S.; Groza, B. Source identification using signal characteristics in controller area networks. IEEE
Signal Process. Lett. 2014, 21, 395–399. [CrossRef]
7. Choi, W.; Joo, K.; Jo, H.J.; Park, M.C.; Lee, D.H. VoltageIDS: Low-level communication characteristics for
automotive intrusion detection system. IEEE Trans. Inf. Forensics Secur. 2018, 13, 2114–2129. [CrossRef]
8. Woo, S.; Jo, H.J.; Lee, D.H. A practical wireless attack on the connected car and security protocol for in-vehicle
CAN. IEEE Trans. Intell. Transp. Syst. 2015, 16, 993–1006. [CrossRef]
9. Woo, S.; Jo, H.J.; Kim, I.S.; Lee, N.H. A practical security architecture for in-vehicle CAN-FD. IEEE Trans.
Intell. Transp. Syst. 2016, 17, 2248–2261. [CrossRef]
10. Zago, G.M.; de Freitas, E.P. A quantitative performance study on CAN and CAN FD vehicular networks.
IEEE Trans. Ind. Electron. 2018, 65, 4413–4422. [CrossRef]
11. Theissler, A. Anomaly detection in recordings from in-vehicle networks. In Proceedings of the First
International Workshop, BigDap 2014, Madrid, Spain, 11–12 September 2014; p. 23.
12. Kang, M.-J.; Kang, J.-W. Intrusion detection system using deep neural network for in-vehicle network security.
PLoS ONE 2016, 11, e0155781. [CrossRef] [PubMed]
13. Taylor, A.; Leblanc, S.; Japkowicz, N. Anomaly detection in automobile control network data with long
short-term memory networks. In Proceedings of the 2016 IEEE International Conference on Data Science
and Advanced Analytics (DSAA), Montreal, QC, Canada, 17–19 October 2016.
14. Cho, K.-T.; Shin, K.G. Fingerprinting electronic control units for vehicle intrusion detection. In Proceedings
of the 25th USENIX Security Symposium, Austin, TX, USA, 10–12 August 2016.
15. Cho, K.-T.; Shin, K.G. Error handling of in-vehicle networks makes them vulnerable. In Proceedings of the
2016 ACM SIGSAC Conference on Computer and Communications Security, Vienna, Austria, 24–28 October
2016.
16. Iehira, K.; Inoue, H.; Ishida, K. Spoofing attack using bus-off attacks against a specific ECU of the CAN bus.
In Proceedings of the 15th EEE Annual Consumer Communications & Networking Conference (CCNC), Las
Vegas, NV, USA, 12–15 January 2018.
17. Song, M.; Kim, H.R.; Kim, H.K. Intrusion detection system based on the analysis of time intervals of CAN
messages for in-vehicle network. In Proceedings of the 2016 International Conference on Information
Networking (ICOIN), Kota Kinabalu, Malaysia, 13–15 January 2016.
18. Van Herrewege, A.; Singelee, D.; Verbauwhede, I. CANAuth-A simple, backward compatible broadcast
authentication protocol for CAN bus. In Proceedings of the ECRYPT Workshop on Lightweight Cryptography,
Louvain-la-Neuve, Belgium, 28–29 November 2011.
19. Kurachi, R.; Matsubara, Y.; Takada, H.; Adachi, N.; Miyashita, Y.; Horihata, S. CaCAN-centralized
authentication system in CAN (Controller Area Network). In Proceedings of the 12th International
Conference on Embedded Security in Cars (ESCAR 2014), Hamburg, Germany, 18–19 November 2014.
20. Gerdes, R.M.; Mina, M.; Russell, S.F.; Daniels, T.E. Physical-layer identification of wired ethernet devices.
IEEE Trans. Inf. Forensics Secur. 2012, 7, 1339–1353. [CrossRef]
21. Farsi, M.; Ratcliff, K.; Barbosa, M. An overview of controller area network. Comput. Control Eng. J. 1999, 10,
113–120. [CrossRef]
22. IEEE. 524-2016—IEEE Guide for the Installation of Overhead Transmission Line Conductors; IEEE: Piscataway, NJ,
USA, 2017; pp. 1–162.
23. Zdenek, K.; Jiri, S. Simulation of CAN bus physical layer using SPICE. In Proceedings of the 2013 International
Conference on Applied Electronics, Pilsen, Czech Republic, 10–12 September 2013.
24. Shao, H.; Luo, F.; Xu, J. Simulation of CAN physical layer based on SystemVision. In Proceedings of the 12th
International Conference on Natural Computation, Fuzzy Systems and Knowledge Discovery (ICNC-FSKD),
Changsha, China, 13–15 August 2016.
Smart Cities 2020, 3 30
25. Poudel, B.; Giri, N.K.; Munir, A. Design and comparative evaluation of GPGPU-and FPGA-based MPSoC ECU
architectures for secure, dependable, and real-time automotive CPS. In Proceedings of the 28th International
Conference on Application-specific Systems, Architectures and Processors (ASAP), Seattle, WA, USA, 10–12
July 2017.
26. Chang, A.X.M.; Culurciello, E. Hardware accelerators for recurrent neural networks on FPGA. In Proceedings
of the 2017 IEEE International Symposium on Circuits and Systems (ISCAS), Baltimore, MD, USA, 28–31
May 2017.
© 2020 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access
article distributed under the terms and conditions of the Creative Commons Attribution
(CC BY) license (http://creativecommons.org/licenses/by/4.0/).