## Road Context-aware Intrusion Detection System for Autonomous Cars

Jingxuan Jiang Shandong University jingxuan jiang@mail.sdu.edu.cn

Chundong Wang, Sudipta Chattopadhyay Singapore University of Technology and Design firstname lastname@sutd.edu.sg

Wei Zhang Shandong University davidzhang@sdu.edu.cn

Abstract -Security is of primary importance to vehicles. The viability of performing remote intrusions onto the in-vehicle network has been manifested. In regard to unmanned autonomous cars, limited work has been done to detect intrusions for them while existing intrusion detection systems (IDSs) embrace limitations against strong adversaries. In this paper, we consider the very nature of autonomous car and leverage the road context to build a novel IDS, named R oad contexta ware IDS (RAIDS). When a computer-controlled car is driving through continuous roads, road contexts and genuine frames transmitted on the car's in-vehicle network should resemble a regular and intelligible pattern. RAIDS hence employs a lightweight machine learning model to extract road contexts from sensory information (e.g., camera images and distance sensor values) that are used to generate control signals for maneuvering the car. With such ongoing road context, RAIDS validates corresponding frames observed on the in-vehicle network. Anomalous frames that substantially deviate from road context will be discerned as intrusions. We have implemented a prototype of RAIDS with neural networks, and conducted experiments on a Raspberry Pi with extensive datasets and meaningful intrusion cases. Evaluations show that RAIDS significantly outperforms state-of-the-art IDS without using road context by up to 99.9% accuracy and short response time.

tracks down anomalies when an original ECU stops sending frames or an ECU belonging to adversaries injects frames. Whereas, CIDS should be oblivious of a compromised ECU sending forged frames. If a strong adversary can manipulate an original ECU to deliver fake frames, CIDS would malfunction since the fingerprint of the ECU is not peculiar. In other words, such an attack model is beyond the capability of CIDS.

Index Terms -Autonomous Car, Road Context, IDS

## I. INTRODUCTION

Security is critical for vehicles. A modern automobile embodies a protocol, like the Control Area Network (CAN) bus [1, 2], for in-vehicle communications among its electrical subsystems, including the steering wheel, brake, and engine, each of which is monitored and controlled through an electronic control unit (ECU). Researchers managed to manifest concrete intrusions to ECUs of manned vehicle to cause a breakdown or traffic accident [3]-[6]. Today, many technology giants, startups, and academic researchers are developing selfdriving autonomous cars, which, undoubtedly, demand particular care for security and safety [7, 8]. The fatal accidents in Uber's and Tesla's autopilot tests have alerted people to such unmanned vehicles [9, 10]. However, limited work has been done on designing an intrusion detection system (IDS) for the in-vehicle communications of autonomous car. Existing IDSs even have limitations against strong adversaries. Take the stateof-the-art CIDS [4] for example. In accordance with its knowledge of the fingerprints (i.e., clock skews) of all ECUs, CIDS

This work was done when Jingxuan Jiang was an intern in Singapore University of Technology and Design, Singapore. Chundong Wang is the corresponding author.

There is a fact that has not been considered in designing IDS to protect in-vehicle network: all frames transmitted on the CAN bus are generated due to the decisions made by the vehicle driver and it is the road context that guides a driver to make those decisions. Human drivers have highly individualized experiences and habits [11]. They react differently to the same road context, like a stop sign or a road bend. It is hence impractical to design an IDS with road context for manned vehicles. By contrast, an autonomous car is orthogonal to manned vehicles concerning the very nature of 'driver'. In a computer-controlled autonomous car, decisions are made by a well-trained self-driving model upon dynamic road contexts obtained through multiple sensors [12, 13]. Therefore, the road context and corresponding control signals, which eventually result in frames transmitted on the CAN bus, shall resemble a regular and intelligible pattern for autonomous car. Given an intrusion with forged frames upon continuous road contexts, a violation of the pattern must be perceivable.

Motivated by this observation, we develop a holistic IDS for autonomous cars, namely R oad contexta ware IDS ( RAIDS ), to detect anomalous CAN frames issued by strong adversaries. The main ideas of RAIDS, also the main contributions of this paper, are summarized as follows.

- · RAIDS is a two-stage framework that mainly consists of two neural networks to extract road context from sensory information (e.g., images taken by cameras, distances to front objects, etc.) and validate the genuineness of CAN frames, respectively, for the purpose of intrusion detection. Both neural networks are designed to be lightweight and efficient regarding the computational resources of an invehicle embedded computing system.
- · To extract road contexts, the neural network at the first stage of RAIDS processes camera images and other sensory information that are concurrently used by the selfdriving model to control the car. The second stage of RAIDS is a binary classifier that verifies whether the frames observed on the CAN bus are abnormal or not with

regard to the extracted road contexts.

We have built a prototype of RAIDS. A convolutional neural network (CNN) makes the backbone of RAIDS's first stage for extracting and abstracting road contexts from camera images. The second stage of RAIDS mainly leverages linear layers to efficiently discern anomalous CAN frames with extracted road context. To evaluate RAIDS, we follow state-of-the-art work [14] and implement an IDS that learns from historical CAN frames without considering road context. We run both IDSs in a Raspberry Pi with extensive datasets. On defending two types of intrusions, i.e., abrupt and directed intrusions, RAIDS substantially outperforms the IDS without road context by up to 99.9% accuracy and short response time.

The rest of this paper is organized as follows. In Section 2, we present the background and related works. In Section 3, we show the motivation of this paper and attack model we consider. In Section 4, we detail the design and implementation of RAIDS. In Section 5, we present the evaluation results of testing RAIDS. We conclude the paper in Section 6.

## II. BACKGROUND &amp; RELATED WORKS

Intrusion Detection System The necessity of intrusion detection system (IDS) is concrete for a vehicle. A number of IDSs have been proposed targeting the in-vehicle network [1, 4, 15]-[18]. An automobile is made of multiple electrical subsystems, each of which has an electronic control units (ECU) to communicate with other subsystems to control the vehicle. The Controller Area Network (CAN) is the most widely employed protocol for in-vehicle communications. ECUs encapsulate data in CAN frames and put them on the CAN bus. A CAN frame contains no identity information of sender or receiver for simplicity. The lack of identity in CAN frames facilitates adversaries in fabricating hazardous messages. Worse, modern vehicles are being connected to the outside world via multiple channels, which leave exploitable attack vectors for adversaries to leverage.

One common mechanism of IDS is to observe and analyze frames transmitted among ECUs so that anomalous CAN frames can be detected. For example, M¨ uter and Asaj [16] proposed an entropy-based approach. They found that frames on the CAN bus are more 'regular' than ones on the computer networks, which leads to a relatively low entropy for CAN frames. As a result, injecting or dropping CAN frames should evidently increase the entropy of in-vehicle network and in turn expose an intrusion. Song et al. [18] worked in a similar fashion but used the time interval between CAN frames to inspect suspicious frames. Taylor et al. [14] emphasized on the data transmitted on CAN bus and proposed a recurrent neural network (RNN) based anomaly detector. Their RNN is trained with historical normal CAN bus data so as to predict forthcoming frames and apprehend abnormal ones. Whereas, their experiments for detecting anomalous frames were done by manually flipping unused bits of data in a CAN frame to emulate an 'unusual case'. Such a manipulation is irrational as skilled adversaries must have a good knowledge of transmitted data and tend to fabricate meaningful but harmful frames. Wasicek et al. [6] proposed to learn the 'intra-vehicle context' by collecting the values of multiple sensors installed in a vehicle's subsystems and building reference models to detect anomalies. We note that their 'context' is the internal context among a vehicle's subsystems and has no relation to road context. In the meantime, Cho and Shin [4] proposed Clock-based IDS (CIDS) that used the clock skew of ECUs to fingerprint them. Leveraging the unique clow skew of each ECU, CIDS can not only detect the occurrence of intrusions, but also locate the compromised ECU.

Autonomous Car &amp; Neural Network There are different levels of automated driving [19]. In this paper, we consider an autonomous car that is computer-controlled most of the time except for emergency cases, such as an intrusion to in-vehicle network. Multiple sensors are installed to control an autonomous car, including cameras, ultrasonic distance sensors, radar, etc. Such sensory information reflects and resembles real-world road context, and advises the self-driving model to generate control signals. Control signals are transformed to data encapsulated in frames transmitted on the CAN bus.

Numerical sensor values, like the distance to front objects, are computer-readable and can be directly utilized by the self-driving model of autonomous car. The camera images, however, must be processed to acquire high-level informative properties. Nowadays, neural networks have emerged as the mainstream approach that deals with images for self-driving. For example, the convolutional neural network (CNN) has been proved to be effective in extracting image features to maneuver the autonomous car [13, 20]-[22]. A CNN makes use of convolutional layers that apply multiple kernels to extract embedded visual features. A kernel is a small matrix of numbers. An image can be viewed as a large matrix that comprises many small sub-matrices with the kernel size. Convolutional layer convolves (i.e., slides) each kernel over sub-matrices of image to do matrix multiplication. The output of a convolutional layer is thus a feature map that bundles results of convolving multiple kernels. In a CNN, feature maps of several convolutional layers, after being computed through hidden layers for reduction of computations and avoidance of overfitting, will eventually make a vector that resembles the features per image. Such a feature vector is expressive and meaningful in image understanding [21, 23].

## III. PROBLEM FORMULATION

## A. Motivation

Most IDSs were developed with regard to human-driven vehicles. Today, many technology giants, startups, and academic researchers are developing autonomous cars, which, undoubtedly, demand particular care for security and safety, especially after two fatal accidents that successively happened in Uber's and Tesla's self-driving tests [9, 10].

Limited work has been done on detecting intrusions to the in-vehicle network of autonomous car. Worse, state-of-the-

(a) Human-driven Car 1 (b) Human-driven Car 2 (c) Autonomous Car

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-74c6833b-abf4-49db-a0c3-105c43a8bc0f.jpg)

Fig. 1. An Illustration of Different Reactions of Human-driven and Autonomous Cars on a Stop Sign

art IDSs embrace limitations against strong adversaries. For example, CIDS [4] is able to detect intrusions when a foreign ECU injects messages or an existing ECU stops sending messages based on its knowledge of fingerprints (i.e., clock skews) of ECUs. However, if adversaries compromise an ECU and use it to send fake messages, CIDS will be ineffective as the fingerprint is not suspicious. In other words, CIDS should be oblivious of compromised ECUs sending fake messages. Such intrusion cases are beyond the capability of CIDS.

In practice, frames transmitted on the CAN bus are generated when drivers encounter dynamic road contexts. Let us assume a stop sign as the road context ahead. A driver must decelerate and eventually stop the car for a moment. The ECU of accelerator accordingly produces and delivers CAN frames with decreasing speed values. Figure 1(a) and Figure 1(b) illustrate how two human drivers react when they move towards a stop sign. One driver gradually reduces speed. The other one decelerates only when being close to the stop sign. Because human drivers have different experiences and habits, they behave differently on the same road context and their reactions entail diverse CAN frames [11].

When a car is controlled by a well-trained self-driving machine learning model, however, its behaviors should be smooth and stable. As shown by Figure 1(c), an autonomous car starts to reduce speed on spotting the stop sign and steadily slows down in order to approach the stop line. This results in CAN frames with consistently decreasing speed values. Concretely, the road context (i.e., a stop sign) and CAN frames (i.e., decreasing speed values) construct a regular and consistent pattern for autonomous car. Assume that adversaries compromise the accelerator of autonomous car shown in Figure 1(c) and continually put frames with non-decreasing speed values on the CAN bus. These abnormal frames are easy to be ruled out as they significantly deviate from the pattern supposed for a stop sign.

To sum up, given a specific road context, the consequential CAN frames generated by an autonomous car are regular and predictable. If we monitor ongoing road context and validate against observed CAN frames, anomalous frames shall be detectable. This observation motivates us to make a new Road context-aware IDS (RAIDS) for autonomous car.

## B. Attack Model

A number of network connections exist in an autonomous vehicle to help it communicate with the outside world. These connections yet provide attack vectors for adversaries to exploit. We assume that strong adversaries further have good knowledge of in-vehicle network, including the format and frequency of CAN frames issued by an ECU, and also manage to force an ECU to encapsulate and send their data in CAN frames. With such knowledge, adversaries are able to remotely access and manipulate critical ECUs of an autonomous car, such as the steering wheel, brake, and accelerator. In this paper, we consider an attack model that is beyond the capability of state-of-the-art IDSs, i.e., forgery attack .

The process of a forgery attack is as follows. Once adversaries compromise an ECU on the in-vehicle network, they first intercept the normal frames sent and received by the ECU in order to study the ECU's behavior and data format. Then adversaries start forging and sending CAN frames strictly with the original frequency. Nevertheless, the data put in forged frames is made either inappropriate or opposite due to the malicious intentions of adversaries. For example, upon a left turn, adversaries may replace CAN frames of the steering wheel with right turn angles so as to wreck the car.

Forgery attack has two variants.

- · Abrupt intrusion : adversaries abruptly place anomalous CAN frames with abnormal data at a random time to cause a disorder.
- · Directed intrusion : adversaries monitor the road context at runtime and, upon a specific scenario, like a road bend or traffic light, place anomalous CAN frames that significantly violate the road context.

Both types of intrusions are harmful. Assuming that the selfdriving model is unaware of any intrusion, the consequence of directed intrusion is more detrimental as the CAN frames imposed by it are to inflict a sudden flip to the vehicle's state, like the aforementioned right turn upon a left turn.

## IV. RAIDS

## A. Overview of RAIDS

As its name suggests, the essence of RAIDS is to leverage the ongoing road context to validate whether CAN frames on the in-vehicle network are normal or not for an autonomous car. If the CAN frames closely match the corresponding road context, RAIDS deems that there is no security threat. Otherwise, RAIDS will report the occurrence of intrusion.

Figure 2 illustrates the architecture of RAIDS 1 . As shown by the leftmost of Figure 2, the ongoing road context is reflected by a variety of sensory information, such as the distances to surrendering objects, the water level implying a rainy slippery road, and camera images showing the front scene. Numerical sensory information is computer-readable while camera images must be processed. The self-driving model depends on sensory information to decide how to maneuver the

1 The images used in Figure 2, Figure 3, Figure 4, and Figure 5 are from the dataset of Udacity self-driving challenge [24] under MIT license.

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-2bab2435-2911-44f4-83f5-aa2e3dae76de.jpg)

Vector of CAN Frames

Fig. 2. An Illustration of RAIDS's Architecture

autonomous car. In the meantime, sensory information is also delivered to RAIDS. RAIDS is mainly composed of two neural networks. One neural network is responsible for processing the camera images which cannot be instantly utilized. The image is first preprocessed through techniques like normalization and centering. Then RAIDS uses one neural network, as shown at the central part of Figure 2, to extract and abstract image features. These image features will be concatenated with other numerical sensory information to make a vector of road context. On the other hand, as illustrated by the lower half of Figure 2, the self-driving model produces control signals upon the sensory information, which eventually conveys a number of CAN frames transmitted on the in-vehicle network. These CAN frames are formulated into another vector that is fed along with the vector of road context as two inputs to the second neural network of RAIDS. As shown by the rightmost part of Figure 2, with well-trained parameters learned from historical road contexts and CAN frames, the second neural network shall tell whether abnormal frames emerge on the CAN bus or not. RAIDS immediately informs the self-driving model once any anomaly is detected.

If an intrusion is reported, RAIDS suggests that the selfdriving model should 1) first disable external network connections to block remote adversaries, 2) stop the vehicle for emergency if possible, and 3) raise a switch request to human driving. These steps aim to mitigate the impact of intrusions.

## B. Road Context

We define the road context as the information an autonomous car is encountering when it is cruising . In summary, the road context includes but not limited to, 1) the road conditions, like lane line, cross, bend, joint, and fork of roads, 2) the traffic light, pedestrians, vehicles, obstacles, bumps, and pits around the autonomous car, 3) the weather conditions,

(a) The Road Context of a Straight Road

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-0fb4c521-ed5f-4211-b0b8-89496303034c.jpg)

(b) The Road Context of a Road Bend

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-c64d394d-512c-419b-95c8-9ef6bf81ecf1.jpg)

Fig. 3. An Illustration of the Impact of Road Context on CAN Frames

such as rain, fog, cloud, and snow, and 4) the sunrise, sunset, night and tunnel lights. These road contexts are perceived by multiple sensors installed in the autonomous car, such as cameras, ultrasonic distance sensors, water sensor, etc.

The road context determines control signals made by the vehicle driver, which, with regard to the computer-controlled autonomous car, is the self-driving model. Different road contexts shall entail different signals, which in turn generate different frames on the in-vehicle CAN bus. Figure 3 instantiates the impact of road curves on the control signal. As shown in Figure 3(a), on a highway that is continuously straight, the self-driving model demands the autonomous car to move straightforward and run at a velocity of 70km/h. By contrast, upon a road bend as illustrated in Figure 3(b), the framework shall decrease the car's velocity to 45km/h and turn to the left with an angle of 30 °. Assuming that on the road shown in Figure 3(b), a frame with a steering angle of 0 ° for moving straightforward, rather than the rational frame

Fig. 4. The Architecture of RAIDS's CNN

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-958ee3e3-7ccb-4298-9dd5-e6a3e261062f.jpg)

of left turn with 30 °, emerges on the CAN bus, an intrusion should have taken place because the anomalous frame is not congruent with the ongoing road context.

CAN frames are ever-changing due to dynamic road contexts from time to time. The tight relation between road context and CAN frames indicates that road context must be exploited as a crucial parameter to detect intruions initiated onto the in-vehicle network. We hypothesize that the selfdriving model of autonomous car is intact and always makes wise and regular decisions upon dynamic road contexts. In other words, an autonomous car is a contrast to manned vehicles in which human drivers may behave inconsistently from time to time even regarding the same road context [11]. In addition, we note that the focus of this paper is on detecting security threats imposed by adversaries onto ECUs and invehicle network. Readers may refer to other studies for the vulnerability exploration of deep learning models that drive a vehicle [25]-[28].

## C. Extracting Road Context

We first need to extract the road context in order to leverage it for intrusion detection. As a matter of fact, most of the road context is reflected by the front scene that autonomous car is facing, including the aforementioned road condition, traffic light and weather. Such a scene is tracked by multiple sensors. Numerical sensory information, like the distance to front objects, can be directly utilized by RAIDS since they are both human- and computer-readable. The images captured by cameras, however, need to be converted into a format that RAIDS can deploy. As a result, the difficulty of obtaining road context lies in how to process camera images.

As mentioned in Section II, the feature vector obtained in a deep neural network is a promising abstraction of road context contained in an image for RAIDS to leverage for intrusion detection. Concretely, we construct a CNN as the backbone of the first stage of RAIDS to extract and abstract the road context from camera images. Figure 4 sketches the architecture of the CNN employed by RAIDS to process images. It mainly consists of two convolutional layers. After being preprocessed, the first convolutional layer would apply 24 kernels, each of which is 3 × 3 with a subsampling step 2 of 2, to generate a

2 A subsampling of 2 means that the convolutional layer moves each kernel by 2, rather than 1, when sliding over the large matrix of image, to reduce the dimensionality of feature map but without losing important information of the image. So the size of feature map for one kernel is 100 2 × 100 2 = 50 × 50 .

Fig. 5. An Illustration of Extracting Features from Images by RAIDS's CNN

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-adc53ded-aef9-4bf6-b81f-083e43c4c28f.jpg)

feature map (50 × 50 × 24). This feature map goes through a rectified linear unit (ReLU), which is the activation function used in our implementation, and then reaches the second convolutional layer. The second convolutional layer applies 64 kernels, each of which also has 3 × 3 size with a subsampling step of 2. The second feature map is hence 25 × 25 × 64, and would entail a feature vector of 100 × 1 after passing one dropout layer and two dense layers.

Figure 5 exemplifies the feature maps visualized after two convolutional layers for two images from Udacity dataset [24] when they are being processed by the CNN of RAIDS. A comparison between Figure 5(a) and Figure 5(b) confirms that different road contexts lead to different intermediate features. In the end, the feature vector of each image would be assembled with numerical sensor values into a new vector as one of the inputs to the second stage of RAIDS.

The CNN extracting image features for RAIDS works synchronously with the self-driving model of autonomous car, because RAIDS should verify CAN frames produced by the self-driving model on the same road context. RAIDS's CNN is simpler than the self-driving model's. The reason is twofold. First, the self-driving model does not terminate with image features but has to accordingly do further computations to determine control signals subsuming left or right steering with a degree, acceleration with a velocity, brake with a force, etc. Second, the feature vector generated by the CNN of RAIDS can be coarse-grained as long as they are sufficiently accurate for detecting intrusions at the second stage of RAIDS.

## D. Intrusion Detection with Road Context

After obtaining the vector of road context and CAN frames corresponding to the road context, we can establish a model between them by learning over historical records of road contexts and CAN frames. With the model, RAIDS validates whether observed CAN frames approximately match the newly-arrived image and sensor values. By doing so, RAIDS determines the genuineness of CAN frames. A substantial discrepancy would lead to a report of intrusion.

TABLE I

THE DATASETS AND INTRUSIONS USED TO EVALUATE RAIDS

| Datasets    | Sources                                            | Genuine Steering Angle Ranges in Radian   | Manipulations of Abrupt Intrusion                                                                                       | Manipulations of Directed Intrusion                                                                                                                                                |
|-------------|----------------------------------------------------|-------------------------------------------|-------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Udacity     | Udacity self-driving challenge [24]                | [-2.05, 1.90]                             | Randomly select 30% images and for an image, add or sub-                                                                | Select the largest 15% and smallest 15% angles. Flip the sign of a selected angle if its absolute value is larger than 0.3; otherwise, add or subtract a random value in [0.5, 1]. |
| Udacity sim | Udacity simulator [29]                             | [-0.94, 1.00]                             | tract a random value in [0.1, 0.9] to its corresponding angle.                                                          | Select the largest 15% and smallest 15% angles. Flip the sign of a selected angle if its absolute value is larger than 0.3; otherwise, add or subtract a random value in [0.5, 1]. |
| Apollo      | Road Hackers platform in Baidu Apollo Project [30] | [-0.38, 0.21]                             | Randomly select 30% images and for an image, add or sub- tract a random value in [0.08, 0.5]to its corresponding angle. | Select the largest 15% and smallest 15% angles. Flip the sign of a selected angle if its absolute value is larger than 0.3; otherwise, add or subtract a random value in [0.5, 1]. |
| Chen 2017   | Recorded by Sully Chen in 2017 [31]                | [-1.99, 0.55]                             | Randomly select 30% images and for an image, add or sub- tract                                                          | Select the largest 15% and smallest 15% angles. Flip the sign of a selected angle if its absolute value is larger than 0.3; otherwise, add or subtract a random value in [0.5, 1]. |
| Chen 2018   | Recorded by Sully Chen in 2018 [31]                | [-2.01, 0.68]                             | random value in [0.2, 0.9] to its corresponding angle.                                                                  | Select the largest 15% and smallest 15% angles. Flip the sign of a selected angle if its absolute value is larger than 0.3; otherwise, add or subtract a random value in [0.5, 1]. |
| Comma.ai    | Comma.ai highway driving [32]                      | [-1.64, 1.29]                             | Randomly select 30% images and for an image, add or sub- tract a random value in [0.25, 1] to its corresponding angle.  | Select the largest 15% and smallest 15% angles. Flip the sign of a selected angle if its absolute value is larger than 0.3; otherwise, add or subtract a random value in [0.5, 1]. |

As historical records of sensory information and CAN frames are known as normals, how to detect intrusions on the in-vehicle network regarding road context turns to be a problem of developing a supervised learning model to check CAN frames upon forthcoming sensory information. Assume that N items of sensory information are used for training. The i th sensory information ( 0 ≤ i &lt; N ) has a vector of road context r i obtained through the first stage of RAIDS. Still for the i th sensory information, CAN frames issued by ECUs like steering wheel, accelerator, and brake have been collected and presented in a vector c i . In the perspective of supervised learning, we can make a label λ i ('1' for normal and '0' for anomaly) for r i and c i . Given these N tuples forming a training dataset, i.e.,

$$\begin{smallmatrix} \{ \langle r _ { 0 }, c _ { 0 }, \lambda _ { 0 } \rangle, \langle r _ { 1 }, c _ { 1 }, \lambda _ { 1 } \rangle, \dots, \langle r _ { i }, c _ { i }, \lambda _ { i } \rangle, \dots, \\ \langle r _ { N - 1 }, c _ { N - 1 }, \lambda _ { N - 1 } \rangle \}, \end{smallmatrix} \quad ( 1 ) \quad \begin{smallmatrix} \mathbf Q \colon \mathbf D \\ \mathfrak { t } \mathfrak { u } \\ d \colon \end{smallmatrix}$$

RAIDS's supervised learning attempts to seek out a model,

$$g ( r _ { i }, c _ { i } ) \approx \lambda _ { i }, ( 0 \leq i < N ). \quad \quad ( 2 ) \quad \ \.$$

Or put in another way,

$$g \colon R \times C \to \Lambda,$$

in which R C , , and Λ are the domain spaces of road contexts, CAN frames, and labels, respectively.

The function g should be one that the best describes the relationship between R C , , and Λ . For a new element of R × C , which will be forthcoming road context r x and its corresponding vector of CAN frames v x , RAIDS computes g r ( x , v x ) and obtains a label λ x . If λ x is '0', RAIDS deems there would be no intrusion at that moment. Otherwise, RAIDS informs the self-driving model of a possible intrusion on the CAN bus. Consequently, the second stage of RAIDS is formatted as a problem of binary classification. In the prototype of RAIDS, we build a classifier that is mainly composed of two linear layers. There are two reasons to do so. First, r i , v i , and λ i are numerical vectors. Linear layers are sufficient to speculate their relationship. Second, linear layers bring about relatively simpler computations, which are especially efficient concerning the response time of IDS and the computational resources of an embedded computing system.

## E. Training and Testing

As mentioned, the backbones of the first and second stages are a CNN and a binary classifier, respectively. They are based on Keras [33] and PyTorch [34] frameworks. We follow an end-to-end learning fashion [13, 35] to train RAIDS. The loss function is BCELoss (Binary Cross-Entropy loss) provided by PyTorch for binary classification [36]. We would use six datasets to evaluate RAIDS (more details can be found in Section V). In each dataset, we use 70% images and CAN frames for training while the 30% remainders are used for the purpose of testing. We note that because datasets have different image sizes, RAIDS would have different implementation variants to deal with respective datasets.

## V. EVALUATION

We have performance evaluations to answer three questions.

- Q1 . Does RAIDS achieve high accuracy in intrusion detection? Is the performance of RAIDS stable over different datasets?
- Q2 . How is the efficacy of RAIDS? Does it cost reasonable response time to detect an intrusion in an embedded computing system?
- Q3 . Is RAIDS effective in detecting intrusions under more difficult road contexts?

## A. Evaluation Setup

Datasets We have used six datasets from five sources. Their descriptions are presented in Table I. Except Udacity sim that includes images recorded in a synthesized simulator, all other datasets were collected in the real world. These datasets contain a large number of records with images and corresponding data conveyed in CAN frames.

Road Context As mentioned in Section IV-B, the road context is a broad concept and covers many aspects of the environment where a vehicle is cruising. Concretely, we would place emphasis on the road conditions reflected by camera images, such as lane lines, road bends, and turns. There are two reasons to do so. First, not all datasets provide extra numerical sensor values. Second, less sensory information imposes more challenges in precisely obtaining road context.

On the other hand, at the standpoint of adversaries, we would focus on intrusions onto the steering wheel. The reason is threefold. First, the steering angle is one vital control signal for autonomous car and attracts wide attention for research. Second, the steering angle is ever-changing along the road while the control signals from accelerator and brake remain relatively stable for a moving vehicle. Figure 6 sketches two

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-ac5af796-2935-43ba-a8e7-f068b0088a46.jpg)

(a) The Curve of Steering Angle

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-631eb49d-c5e1-4838-aa78-0eb00f57a6df.jpg)

(b) The Curve of Vehicle Speed

Fig. 6. The Curves of Steering Angle and Vehicle Speed over Time with Udacity's HMB 6 Dataset

curves for the steering angle and vehicle speed at runtime, respectively, with one Udacity sub-dataset (HMB 6). It is evident that the curve of vehicle speed is much smoother than that of steering angle. Therefore, an intrusion to compromise steering angle is more difficult to be detected. Third, some datasets, like Chen 2017 and Chen 2018, only include the runtime values of steering angle.

Intrusions We consider forgery attack (cf. Section III-B) in evaluation. We have performed abrupt and directed intrusions to the values of steering angle with each dataset. In contrast to existing works that encapsulated meaningless data in CAN frames or fabricated artificial CAN frames, our intrusions would generate a CAN frame that should be with an allowable value but does not match the ongoing road context. In other words, such forged CAN frames emerge alongside inappropriate road contexts. The rightmost two columns of Table I brief how we manipulate steering angles to produce abrupt and directed intrusion cases. Note that the datasets have different ranges for steering angles. For example, for the HMB 6 sub-dataset of Udacity shown by Figure 6(a), steering angles fall in [-0.17, 0.11] while the range for Chen 2018 is [-1.99, 0.55]. For each dataset, we hence apply appropriate values to modify the steering angles so as to make intrusion cases which are not trivial to be perceived.

Competitor Some existing IDSs like CIDS are ineffective against forgery attacks. We implement an IDS without considering the road context (referred to as IDS wo rc) for comparison. It is identical to the start-of-the-art IDS proposed by Taylor et al. [14]. In brief, IDS wo rc depends on learning CAN frames with RNN to determine whether an arriving frame contains genuine data or not. For IDS wo rc, 70% of each dataset is used for training while 30% is for testing, the same as what we do with RAIDS. For both RAIDS and IDS wo rc, training is performed in a Linux server while testing is done in a Raspberry Pi 3 Model B+ [37]. Python 3.5 is installed in both the server and Raspberry Pi. We assume that an embedded system being with Raspberry Pi's computing powers exists within the in-vehicle network gateway [38] where the IDS resides for autonomous car.

Metrics The main metric we use to compare RAIDS and IDS wo rc is the detection accuracy in testing, i.e., the ratio of detected normal and intrusion cases against overall cases. A higher detection accuracy means a better effectiveness of IDS. We also measure the ratios of undetected intrusion cases as well as false alarms by which an IDS wrongly labels a normal CAN frame to be anomalous. To study the efficiency of RAIDS, we record the average and maximum response time RAIDS spends in processing all cases of a dataset.

## B. Detection Accuracy

Detection Accuracy Figure 7 summarizes the detection accuracies of RAIDS and IDS wo rc with six datasets under abrupt and directed intrusions. Two observations can be obtained from Figure 7. An apparent one is that, RAIDS consistently achieves high detection accuracies across different datasets under both abrupt and directed intrusions. In particular, the highest accuracy for RAIDS is 99.9% with Apollo under directed intrusion while its lowest accuracy is 89.5% with Comma.ai under abrupt intrusion. Comparatively, IDS wo rc yields lower detection accuracies. IDS wo rc's highest accuracy is 84.5% with Apollo under directed intrusion while its lowest accuracy is 71.8% with Comma.ai under abrupt intrusion. The significant gap between RAIDS's and IDS wo rc's accuracies confirms the high effectiveness of RAIDS. RAIDS differs from IDS wo rc in that RAIDS leverages the road context for intrusion detection. IDS wo rc solely relies on the data of historical CAN frames to apprehend the newly-arrived CAN frame. As shown in Figure 6(b), the runtime volatile curve of steering angle alone is difficult to be modeled, unless it is associated with corresponding road context, like what RAIDS does. So the model built by IDS wo rc lacks reliability. RAIDS, on the other hand, extracts a feature vector of road context from each image and involves the feature vector for validating corresponding CAN frames. RAIDS thus establishes a sound model that maps a specific road context, like a road bend shown in Figure 3(b), to CAN frames. In summary, if adversaries put frames with abnormal data on the in-vehicle CAN bus, the unreliable model of IDS wo rc is ineffective in identifying the anomaly; however, on account of the involvement of road context, RAIDS has a high likelihood of detecting the intrusion.

The second observation obtained from Figure 7 is that the detection accuracy under directed intrusion is consistently higher than that under abrupt intrusion, especially for RAIDS. For example, with Udacity, Apollo and Comma.ai datasets, the accuracy of RAIDS under directed intrusion is 4.0%, 5.4% and 7.2% higher than that under abrupt intrusion, respectively. As mentioned in Section III-B, directed intrusion should be more hazardous than abrupt intrusion because the former intends to incur a sudden change at a specific occasion onto the in-vehicle communications. Such a sudden change, whereas, brings in more significant violation to ongoing road context, which

(a) Abrupt Intrusion

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-cf962573-e2d5-4daf-96c1-b9ccf73cfd5d.jpg)

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-046fdd0c-bdcd-4f18-9090-e083d21374d1.jpg)

(b) Directed Intrusion

Fig. 7. The Accuracies of Two IDSs under Two Types of Intrusions with Six Datasets

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-35d26983-67f7-43bc-a61b-c63214191234.jpg)

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-e884c966-fd8a-4a88-b592-3c6300b1b88d.jpg)

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-82ac3ac3-9e7e-457f-ab60-12a6f2bc9861.jpg)

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-943a7aea-18fa-48f3-ac71-d4d11ee8eb95.jpg)

(a) Udacity under Abrupt Intrusion

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-d33caf0d-1164-48ff-a490-af7449528ab9.jpg)

(e) Apollo under Abrupt Intrusion

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-f29fad1b-e4a0-4937-b000-2f583de1208b.jpg)

(b) Udacity under Directed Intrusion

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-47d9d811-ed91-460b-ac11-61e7a402b165.jpg)

(f) Apollo under Directed Intrusion

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-73732896-ab34-49b2-b378-6d5290a2f1ad.jpg)

(i)

Chen 2018 under Abrupt Intrusion (j)

Chen 2018

under

Directed

Intru-

(c) Udacity sim under Abrupt Intrusion

(d) Udacity sim under Directed Intrusion

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-302728eb-4a3d-4f75-91a5-d8c6f95d72cc.jpg)

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-d9a3bec2-ec9f-4f7e-82d9-1925aa07b73c.jpg)

(g) Chen 2017 under Abrupt Intrusion (h) Chen 2017 under Directed Intrusion

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-7ca9b9a1-353e-4b12-960a-196c0bc28442.jpg)

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-45870f18-4ac4-4eb9-be0f-0d78e5c8991f.jpg)

(k)

Comma.ai under Abrupt Intrusion

(l)

Comma.ai under Directed Intrusion sion

Fig. 8. The Percentages of Unreported Intrusions and False Alarms for Two IDSs under Abrupt and Directed Intrusions

exactly matches the capability of RAIDS and can be easily captured. This explains why RAIDS yields higher detection accuracy under directed intrusion. On the other hand, as shown in Figure 6(a), there exist dramatic increase and decrease of steering angle at runtime in reality. Consequently, IDS wo rc does not raise much difference in accuracy, i.e., at most 5.4% with Apollo.

Unreported Intrusions We also record the percentages of detected and unreported intrusions as well as detected normals and false alarms for six datasets under two types of intrusions. These results help us gain a deeper understanding of the accuracies of RAIDS and IDS wo rc. They are detailed in Figure 8. Let us first focus on the percentages of detected intrusion cases as the percentage of false alarms are generally low. An obvious observations is that, in all 16 diagrams, RAIDS detects most of the intrusion cases while IDS wo rc even cannot detect half of them. For example, in Figure 8(i), the percentages of detected and unreported intrusion cases are 87.2% and 12.8%, respectively, for RAIDS with Chen 2018 under abrupt intrusion; however, they are 35.0% and 65.0% for IDS wo rc, respectively. In other words, without considering road context, IDS wo rc ignores many intrusion cases. This in turn justifies the importance of road context in intrusion detection. In addition, as mentioned, the accuracy of Apollo under directed intrusion is 99.9%. From Figure 8(f), we can see that there is hardly unreported intrusion or false alarm. This reaffirms the highest accuracy achieved by RAIDS.

Second, let us make a comparison between abrupt and

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-2ce3ec76-8b33-4cb0-8111-9ef4ce0416a3.jpg)

(a)

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-25e83543-bad4-4663-8a7c-1cdc1f437a7a.jpg)

Abrupt Intrusion

(b) Directed Intrusion

Fig. 9. The Average and Maximum Response Time of RAIDS under Two Intrusions

directed intrusions. Take Chen 2018 dataset for example again with Figure 8(i) and Figure 8(j). The percentage of detected intrusion cases for RAIDS increases from 87.2% under abrupt intrusion to 96.5% under directed intrusion. Such an increase confirms that directed intrusion is likely to incur intrusion cases that are easier to be perceived. Comparatively, the percentage of detected intrusion cases for IDS wo rc also jumps from 35.0% under abrupt intrusion to 42.5% under directed intrusion. Although the difference is considerable (42.5% -35.0% = 7.5%), it is less than that of RAIDS (96.5% -87.2% = 9.3%). These numbers agree with the second observation we have had with Figure 7, and explain why the accuracy of IDS wo rc does not increase as much as that of RAIDS from abrupt intrusion to directed intrusion.

## C. Response Time

With Raspberry Pi, we have measured the response time of RAIDS in detecting intrusions for six datasets. The two diagrams in Figure 9 capture the average and maximum response time of processing all records of images and corresponding CAN frames under abrupt and directed intrusions, respectively. The results shown in Figure 9 state that none of the average response time is greater than 0.40 second. More important, the maximum response time, which meas the worstcase response time, is mostly no greater than 0.52 second, except with Chen 2018 for which RAIDS cost 0.66 second under abrupt intrusion. Concretely, the short response time justifies the efficiency of RAIDS.

The average response time does not deviate much from the maximum response time because each record contains almost the same quantity of data, i.e., image and CAN frames, for RAIDS to handle. The marginal deviation is mainly caused by other running programs and system scheduling in a real embedded system. We note that we have used an economical Raspberry Pi for testing. The computational resources of Raspberry Pi includes an inexpensive 1.4GHz ARM CPU and 1GB DRAM. With regard to employing RAIDS in real-world autonomous cars, a more powerful embedded system with high-end CPU and large RAM space could be leveraged to reduce the response time, which surely improves efficiency and applicability of RAIDS.

(b) Unreported Intrusions and False Alarms with Comma.ai night

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-b1668ac3-6ea3-4c41-b7b8-f8dd0c86bd55.jpg)

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00732v1-figure-19373ea5-b171-49bc-880f-cbfc305a2fc0.jpg)

Fig. 10. A Comparison between Daytime and Nighttime Datasets for RAIDS

## D. The Impact of Daytime and Night

It is non-trivial to extract meaningful features from nighttime images due to the generally low visibility of road conditions [39]. In fact, Uber's fatal accident happened at night when a pedestrian was crossing a road [9]. Comma.ai provides a sub-dataset with nighttime images and CAN frames (referred to as Comma.ai night). We have done abrupt and directed intrusions with it. Because of space limitation, we present the results under directed intrusion. Figure 10(a) captures the comparison of IDS wo rc's and RAIDS's accuracies between daytime Comma.ai and nighttime Comma.ai night. In fact, the accuracy of IDS wo rc does not fluctuate much since it is oblivious of the change of day and night. Nevertheless, due to the weaker perception of road context at night, the accuracy of RAIDS drops by 3.3%.

Let us do a comparison between Figure 8(l) for Comma.ai and Figure 10(b) for Comma.ai night. In particular, from Figure 8(l) to Figure 10(b), the percentages of unreported intrusions and false alarms for RAIDS increase by 4.6% and 2.7%, respectively. In other words, a bit more intrusion and normal cases have been wrongly deemed to be anomalous with regard to the relatively obscure nighttime road contexts. This exposes the reason for the accuracy drop of RAIDS.

## VI. CONCLUSION

Security is always critical for traffic vehicles. In this paper, we investigate how to effectively detect intrusions to the invehicle communications of autonomous car. In an unmanned autonomous car, a self-driving model reads sensory information reflecting dynamic road contexts and generates control signals that are eventually transformed into frames transmitted on the CAN bus. The ever-changing control signals at runtime require the involvement of road contexts in detecting intrusions for autonomous car. We accordingly develop RAIDS. RAIDS extracts and abstracts road contexts from sensory information into a feature vector. It then leverages such an expressive feature vector of road context to assert the genuineness of observed CAN frames. We have built a prototype for RAIDS through lightweight neural networks, and evaluated it in an embedded computing system with extensive datasets. Experimental results confirm that RAIDS achieves up to 99.9% accuracy with short response time.

## REFERENCES

- [1] T. Hoppe, S. Kiltz, and J. Dittmann, 'Security threats to automotive CAN networks-practical examples and selected short-term countermeasures,' Reliability Engineering &amp; System Safety , vol. 96, no. 1, pp. 11 - 25, 2011, special Issue on Safecomp 2008.
- [2] P. Joshi, S. Ravi, S. Samii, U. D. Bordoloi, S. Shukla, and H. Zeng, 'Offset assignment to signals for improving frame packing in CAN-FD,' in 2017 IEEE Real-Time Systems Symposium (RTSS) . IEEE, 2017, pp. 167-177.
- [3] S. Checkoway, D. McCoy, B. Kantor, D. Anderson, H. Shacham, S. Savage, K. Koscher, A. Czeskis, F. Roesner, and T. Kohno, 'Comprehensive experimental analyses of automotive attack surfaces,' in Proceedings of the 20th USENIX Conference on Security , ser. USENIX Security '11. Berkeley, CA, USA: USENIX Association, 2011, pp. 77-92.
- [4] K.-T. Cho and K. G. Shin, 'Fingerprinting electronic control units for vehicle intrusion detection,' in Proceedings of the 25th USENIX Security Symposium , ser. USENIX Security '16. Austin, TX: USENIX Association, 2016, pp. 911-927.
- [5] J.-W. K. Min-Joo Kang, 'Intrusion detection system using deep neural network for in-vehicle network security,' PloS one , vol. 11, no. 6, p. e0155781, 2016.
- [6] A. Wasicek, M. D. Pes´ e, A. Weimerskirch, Y. Burakova, and K. Singh, 'Context-aware intrusion detection in automotive control systems,' pp. 1-14, June 2017, 5th Embedded Security in Cars (ESCar '17).
- [7] K. Koscher, A. Czeskis, F. Roesner, S. Patel, T. Kohno, S. Checkoway, D. McCoy, B. Kantor, D. Anderson, H. Shacham et al. , 'Experimental security analysis of a modern automobile,' in 2010 IEEE Symposium on Security and Privacy . IEEE, 2010, pp. 447-462.
- [8] J. Petit and S. E. Shladover, 'Potential cyberattacks on automated vehicles,' IEEE Transactions on Intelligent Transportation Systems , vol. 16, no. 2, pp. 546-556, 2015.
- [9] D. Wakabayashi, 'Self-driving uber car kills pedestrian in arizona, where robots roam,' March 2018, https://www.nytimes.com/2018/03/19/technology/uber-driverlessfatality.html.
- [10] S. Levin, 'Tesla fatal crash: 'autopilot' mode sped up car before driver killed, report finds,' June 2018, https://www.theguardian.com/technology/2018/jun/07/tesla-fatal-crashsilicon-valley-autopilot-mode-report.
- [11] A. Liu and D. Salvucci, 'Modeling and prediction of human driver behavior,' in Proceedings of the Ninth International Conference on Human-Computer Interaction , 2001.
- [12] C. Chen, A. Seff, A. Kornhauser, and J. Xiao, 'DeepDriving: Learning affordance for direct perception in autonomous driving,' in Proceedings of the 2015 IEEE International Conference on Computer Vision (ICCV) , ser. ICCV '15. Washington, DC, USA: IEEE Computer Society, 2015, pp. 2722-2730.
- [13] M. Bojarski, D. Del Testa, D. Dworakowski, B. Firner, B. Flepp, P. Goyal, L. D. Jackel, M. Monfort, U. Muller, J. Zhang et al. , 'End to end learning for self-driving cars,' arXiv preprint: 1604.07316 , 2016.
- [14] A. Taylor, S. Leblanc, and N. Japkowicz, 'Anomaly detection in automobile control network data with long short-term memory networks,' in 2016 IEEE International Conference on Data Science and Advanced Analytics (DSAA) , Oct 2016, pp. 130-139.
- [15] M. M¨ uter, A. Groll, and F. C. Freiling, 'A structured approach to anomaly detection for in-vehicle networks,' in 2010 International Conference on Information Assurance and Security , Aug 2010, pp. 92-98.
- [16] M. M¨ uter and N. Asaj, 'Entropy-based anomaly detection for in-vehicle networks,' in 2011 IEEE Intelligent Vehicles Symposium (IV) , June 2011, pp. 1110-1115.
- [17] P. Kleberger, T. Olovsson, and E. Jonsson, 'Security aspects of the invehicle network in the connected car,' in 2011 IEEE Intelligent Vehicles Symposium (IV) . IEEE, June 2011, pp. 528-533.
- [18] H. M. Song, H. R. Kim, and H. K. Kim, 'Intrusion detection system based on the analysis of time intervals of CAN messages for invehicle network,' in Proceedings of the 2016 International Conference on Information Networking (ICOIN) , ser. ICOIN '16. Washington, DC, USA: IEEE Computer Society, 2016, pp. 63-68.
- [19] S. Intentional, 'Taxonomy and definitions for terms related to driving automation systems for on-road motor vehicles (SAE J 3016-2018),' 2018, https://webstore.ansi.org/Standards/SAE/SAE30162018.
- [20] J. M. Alvarez, T. Gevers, Y. LeCun, and A. M. Lopez, 'Road scene segmentation from a single image,' in Proceedings of the 12th European Conference on Computer Vision -Volume Part VII , ser. ECCV'12. Berlin, Heidelberg: Springer-Verlag, 2012, pp. 376-389.
- [21] A. S. Razavian, H. Azizpour, J. Sullivan, and S. Carlsson, 'CNN features off-the-shelf: An astounding baseline for recognition,' in Proceedings of the 2014 IEEE Conference on Computer Vision and Pattern Recognition Workshops , ser. CVPRW '14. Washington, DC, USA: IEEE Computer Society, 2014, pp. 512-519.
- [22] K. He, X. Zhang, S. Ren, and J. Sun, 'Deep residual learning for image recognition,' in 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR) , June 2016, pp. 770-778.
- [23] G. Eilertsen, J. Kronander, G. Denes, R. K. Mantiuk, and J. Unger, 'HDR image reconstruction from a single exposure using deep CNNs,' ACM Trans. Graph. , vol. 36, no. 6, pp. 178:1-178:15, Nov 2017.
- [24] Udacity, 'The Udacity open source self-driving car project,' April 2018, https://github.com/udacity/self-driving-car.
- [25] K. Pei, Y. Cao, J. Yang, and S. Jana, 'DeepXplore: Automated whitebox testing of deep learning systems,' in Proceedings of the 26th Symposium on Operating Systems Principles , ser. SOSP '17. New York, NY, USA: ACM, 2017, pp. 1-18.
- [26] Y. Tian, K. Pei, S. Jana, and B. Ray, 'DeepTest: Automated testing of deep-neural-network-driven autonomous cars,' in Proceedings of the 40th International Conference on Software Engineering , ser. ICSE '18. New York, NY, USA: ACM, 2018, pp. 303-314.
- [27] B. Wang, Y. Yao, S. Shan, H. Li, B. Viswanath, H. Zheng, and B. Y. Zhao, 'Neural cleanse: Identifying and mitigating backdoor attacks in neural networks,' in 2019 IEEE Symposium on Security and Privacy (SP) , May 2019, pp. 1-16.
- [28] J. Su, D. V. Vargas, and K. Sakurai, 'One pixel attack for fooling deep neural networks,' IEEE Transactions on Evolutionary Computation , pp. 1-13, 2019.
- [29] U. Inc., 'Udacity's self-driving car simulator,' July 2017, https://github.com/udacity/self-driving-car-sim.
- [30] Apollo.auto, 'Roadhackers platform in Baidu Apollo project,' April 2018, http://data.apollo.auto/static/pdf/road hackers en.pdf.
- [31] S. Chen, 'Sully Chen's driving datasets (2017 &amp; 2018),' April 2018, https://github.com/SullyChen/driving-datasets.
- [32] Comma.ai, 'The Comma.ai driving dataset,' October 2016, https://github.com/commaai/research.
- [33] F. Chollet et al. , 'Keras: Deep learning for humans,' February 2019, https://keras.io.
- [34] A. Paszke, S. Gross, S. Chintala, and G. Chanan, 'PyTorch,' February 2019, https://pytorch.org/.
- [35] A. Gurghian, T. Koduri, S. V. Bailur, K. J. Carey, and V. N. Murali, 'DeepLanes: End-to-end lane position estimation using deep neural networks,' in The IEEE Conference on Computer Vision and Pattern Recognition (CVPR) Workshops , June 2016.
- [36] PyTorch, 'PyTorch BCELoss function,' February 2019, https://pytorch.org/docs/stable/nn.html.
- [37] The Raspberry Pi Foundation, 'Raspberry Pi 3 Model B+,' 2018, https://www.raspberrypi.org/products/raspberry-pi-3-model-b-plus/.
- [38] T. Hoppe, S. Kiltz, and J. Dittmann, 'Security threats to automotive CAN networks - practical examples and selected short-term countermeasures,' in Proceedings of the 27th International Conference on Computer Safety, Reliability, and Security , ser. SAFECOMP '08. Berlin, Heidelberg: Springer-Verlag, 2008, pp. 235-248.
- [39] M. Harris, 'Night Vision for Self-Driving Cars,' October 2017, https://spectrum.ieee.org/cars-that-think/transportation/self-driving/doselfdriving-cars-need-night-vision.
Jingxuan Jiang Chundong Wang Sudipta Chattopadhyay Wei Zhang
Road Context-aware Intrusion Detection System for Autonomous Cars
Security is of primary importance to vehicles. The viability of performing
remote intrusions onto the in-vehicle network has been manifested. In regard to
unmanned autonomous cars, limited work has been done to detect intrusions for
them while existing intrusion detection systems (IDSs) embrace limitations
against strong adversaries. In this paper, we consider the very nature of
autonomous car and leverage the road context to build a novel IDS, named Road
context-aware IDS (RAIDS). When a computer-controlled car is driving through
continuous roads, road contexts and genuine frames transmitted on the car's
in-vehicle network should resemble a regular and intelligible pattern. RAIDS
hence employs a lightweight machine learning model to extract road contexts
from sensory information (e.g., camera images and distance sensor values) that
are used to generate control signals for maneuvering the car. With such ongoing
road context, RAIDS validates corresponding frames observed on the in-vehicle
network. Anomalous frames that substantially deviate from road context will be
discerned as intrusions. We have implemented a prototype of RAIDS with neural
networks, and conducted experiments on a Raspberry Pi with extensive datasets
and meaningful intrusion cases. Evaluations show that RAIDS significantly
outperforms state-of-the-art IDS without using road context by up to 99.9%
accuracy and short response time.