Advanced Driver Assistant System Paper
Advanced Driver Assistant System Paper
Advanced Driver
Assistant System
Threats, Requirements, Security Solutions
EXECUTIVE SUMMARY
This paper discusses security vulnerabilities and potential solutions for Advanced
Driver Assistance Systems (ADAS). We introduce ADAS system architecture and
present use cases. We further provide detailed threat analysis of two leading
ADAS use cases: (1) lane departure warning and (2) adaptive cruise control. Based
on threat analysis results we identify security problem areas and state security
requirements for each. We devote the last part of this paper to ADAS security
solutions that can meet identified objectives.
This study makes several key contributions to addressing ADAS security problems
Establish critical needs to addressing security problems via detailed
threat analysis
Define main security problem areas for ADAS
Identify challenges and requirements for securing ADAS control functions
Establish the mission of securing E2E ADAS data path
Define trust foundation for secure ADAS platforms
Make recommendations for ADAS security solution menu
1. Introduction
Demand for Advanced Driver Assistance Systems (ADAS) is caused by desire to
build safer vehicles and roads in order to reduce the number of road fatalities
and by legislation in the leading countries. ADAS is made of the following physical
sensors: radar, LIDAR, ultrasonic, photonic mixer device (PMD), cameras, and night-
vision devicesthat allow a vehicle to monitor near and far fields in every direction
and of evolving and improving sensor fusion algorithms that ensure vehicle, driver,
passengers, and pedestrians safety based on factors such as traffic, weather,
dangerous conditions, etc. Modern ADAS systems act in real time via warnings
to the driver or by actuation of the control systems directly and are precursors
to the autonomous vehicles of the future.
Lead Author: Meiyuan Zhao
Research Scientist
Security & Privacy Research, Intel Labs
[email protected]
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
2
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
Cruise control
Electronic self-locking differential
Automatic cruise control
Electronic break power distributor
Anitblocking system Speed limit information
3
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
SMART
SENSOR COMMUNICATION
COMMUNICATION PORTAL
SENSOR
COMMUNICATION PORTAL
CLOCK POWER SMART
ACTUATOR
SMART
PROTOCOL
SENSOR
SENSOR CENTRAL
PROCESSOR PROCESSOR
This system is considered as a close-loop control system, where the vehicle control actuation actions are computed based
on received data from sensors. And the outcome of the ADAS actuation actions is fed back in the loop as sensor input. All the
computing units in ADAS of the vehicular system are generally referred to as electronic control units (ECUs). The sensing and
actuation ECUs are relatively resource constrained units, compared with the central processor of ADAS.
One of the key advancements in ADAS design is the concept of sensor fusion. This is the process by which the internal pro-
cessing takes input from the multiplicity of external sensors and creates a map of possible impediments around the vehicle. The
map then facilitates the computation that creates a series of possible actions and reactions through situational analysis. Figure 3
shows an example ADAS-enabled vehicle with a collection of sensors to enable sensor fusion and actions.
4
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
Sensor fusion and situational analysis can be done case 3. ADAS Security Problem Areas
by case for different ADAS functions and occurs at mul-
Before looking into details of security threats, let us
tiple levels. It is beneficial to have early fusion (determining
first examine, at high level, what are the major areas of
conditions as early as possible) and a centralized processing
concerns for ADAS system in dealing with hostile running
brain (improving quality of detection and reducing CPU
environment and malicious actions by adversaries. In gen-
power consumption). Figure 4 demonstrates an approach
eral, any malicious actions that could cause ADAS system
where sensor fusion occurs in both the sensor processor
to behave outside its specification are referred to as threats
and the central brain. With this design, the system provides
to ADAS. And the interfaces that allow such threats to occur
a horizontal architecture that can support multiple ADAS
are referred to as attack surfaces. Now the key questions are:
applications in parallel. Such architecture is an advancement
what is the specified behavior of an ADAS system, and how
from vertical systems that only support individual ADAS ap-
do attackers cause the system to misbehave? The answers
plications case by case. We base our security analysis on this
to these questions lead to the discovery of three major ADAS
conceptual architecture.
security problem areas.
SITUATIONAL ANALYSIS
SENSOR FUSION
CLASSIFICATION CLASSIFICATION
5
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
6
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
Small scale ECUs to meet security primitive Can read/write/jam/forge the radio channel
requirements for secure update Can add/remove functionality
Updating relatively large scale computing platforms is Can boot/operate removed parts in alternate
straightforward since there are available system update environments
and recovery technologies and services suitable for such
Expected attacker capability: University Challenge
platforms. ADAS, however, may have smaller scale micro-
controllers for sensors and actuators. Such small scale Will invest up to 6 months engineering effort and $50K
platforms may not have sufficient cryptographic or security part/equipment/computation to develop tools to attack
primitive support. Hence, the challenge is to achieve the many vehicles
same security objectives with lightweight system update Compared with the typical computing system, the difference
security technology. in ADAS system is mostly on the physical aspect, besides the
Long lifetime vs. limited cryptographic strength cyber actions and capabilities. For instance, the ADAS function
Control systems like the vehicles typically have long life- used for controlling operation of the vehicle physically offers
times. Cryptographic solutions in the current computing opportunities to attackers to launch their actions that may lead
world, however, have relatively shorter lifetimes. Hence, to consequences on control systems, on actuators, and on
during the ADAS system lifecycle, there may appear the other ECUs that have mechanical impact to the vehicle. On the
need to update the ADAS system with stronger and new other hand, the attacker could also potentially launch attack
cryptosystem. This problem in the traditional computing via physical actions and eventually cause cyber or physical
system is not critical given that most of the devices must consequences. In our analysis, we attempt to cover both
be operational only for a few years. Careful design and cyber and physical aspects of possible attacking actions.
analysis is required for updating the cryptographic system,
because it effectively serves as the basis of trust for every 4.2. Use Cases for Threat Analysis
security function. Compromising the root of trust will Two applications are used in the study:
surrender control to attackers. Lane Departure Warning (LDW)
For conducting threat analysis, we need information on LDW use case is for vehicle lateral control, where warning
1) target usage case; 2) architecture for the use case; is presented to driver if the ADAS system detects that the
3) expected adversarial model. The analysis methodology vehicle is departing from the current lane. The main function-
is a commonly used approach where we decompose the ality by the sensors and data fusion is to recognize the lane
system to assets and examine every interface exposed by lines and predict the vehicles driving direction based on the
each asset to understand all possible behaviors with all detected trajectory.
possible interface parameters and values.
ACC use case is for vehicle longitudinal control. It manages
4.1. Adversarial Model the vehicle speed adaptively based on the detection of
Lets first define expected adversarial model in our analysis. distance with leading vehicle, the current speed, the
We use a typical adversarial model, the same for analyzing road condition, and prediction of leading vehicles speed
threats to Intels system product and technology. ADAS sys- change. In this application, the ADAS system continuously
tems share many properties as a typical computing system. generates actuation command to control throttle ECU
Hence, the adversarial model for the computing system is or brake ECU accordingly.
mostly applicable to ADAS system. We assume that ADAS These two applications use similar ADAS architecture, with
system should worry about the attackers who can launch some differences on required input sensing data and output
simple hardware attacks with the capability of university data format and purpose. Their output difference is clear:
challenge. This means: warning only or take direct actuation. Potential failure in
Expected attacker capability: Simple hardware attacker computing and generating corresponding output in these
two cases may have dramatically different consequences.
Has reverse engineered all firmware, software
Can modify and replace all firmware, software These two use cases can represent several ADAS functions
Can replace/substitute any ADAS components that improve driving experience and support safety. Our
future work will extend the threat analysis on other use
Can remotely install privileged and unprivileged
malware onto any micro-processor that communicates cases that facilitate parking or improving lighting and sight,
through external interfaces as illustrated in Figure 1.
7
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
4.3. Summary of Threat Analysis Results Given the diverse types of data being generated and
Detailed threat analysis is documented in Appendix A and processed in the ADAS, not only forged data or incorrect
Appendix B. Here, we provide a summary of threat analysis data content has impact to the system, but also whether
results and insight on high risks. the data is in time for consumption, or available at all are
intrinsically important issues for ADAS control system.
Study summary: entire data path from initial sensing to Missing data or delayed data may cause the system fail to
final actuation is vulnerable. generate appropriate intelligence, or respond to situations
in real time. Furthermore, the sensing fusion algorithms rely
Lets examine where the vulnerable assets and exposed in- on potentially multiple streams of data. Some algorithms
terfaces are. Main attack surfaces, shown in Figure 5, include have requirement that streams of input data are received
exposed interfaces and are broken by vulnerable assets and processed in correlated sequence. Hence, attack
(internal or external). Attackers have a range of options, they actions that can successfully change the correlation to
can, for example, generate false data on a sensing platform, further manipulate the behavior of sensing fusion.
modify data on the internal communication channel, gener- In terms of undesirable consequences, as summarized
ate undesirable ADAS output data on the fusion brain plat- in Figure 5, the compromised ADAS system could cause
form, change output data on the internal communication to false positive or false negative warnings or actuation actions.
the actuation ECUs, manipulate firmware and software on the In false positive case, the ADAS system could generate warn-
output platform to make the system fail. ing or take unnecessary actions on vehicle control system to
Our analysis reveals that there is a set of data properties respond to falsely computed need to warn or take action
especially vulnerable to manipulation. Beyond the basic at- situation, whereas the actual driving condition may be still
tack on data values, as summarized in Figure 5, vulnerabilities normal. On the other hand, the false negative outcome
exist if syntax, semantics, timing, availability, and correlation could cause the system fail to respond to potential danger
are manipulated. Data syntax refers to some of the properties happening on the road. Furthermore, the control decision
associated with the content, for example, output from LDW could still be relevant, but only relevant to the past condition,
could be played via audio device where volume of the output a little too late current. All these undesirable outcomes could
warning is defined as data syntax. Change of audio volume to potentially lead to unsafe driving consequences, cause a
undesirable level is a realistic threat to LDW function. collision, or even loss of human life. These consequences
DATA
8
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
are very specific to the vehicle control system and defeat These requirements are fundamental for a secure ADAS
its primary design goal: improving driving safety. control system. They shall be used guidelines when design-
ing and implementing the ADAS system. In the complete
Other consequences may include failure in enabling or
ADAS data path, assets that satisfy these requirements
disabling ADAS control. In addition, frequent failures in
include all types of data, sensing modules, actuation mod-
reporting accurate driving conditions can cause users mis-
ules, any processing modules, and internal communication.
trust of the ADAS system and turn off the system all together.
Further decomposition is needed when it comes to the need
ADAS system can also be compromised to defeat the goal to design solution to protect a specific module or a specific
of improving driving experience. For instance, in the case set of modules in the ADAS system.
of ACC, to maintain a proper speed, the vehicle may be ma-
On sensing modules, initial calibration and on-going operation
nipulated to speed up or slow down suddenly, or repeatedly
are the focus. Sensing data is required to be available in real
take these actions. Such outcome is apparently not desirable
time, accurately reflect the sensing condition, and reliable to
to the driver and to passengers.
tolerate most of unexpected conditions.
5. ADAS System Security Requirements On actuation modules, similarly, the focus is on initial calibra-
tion and on-going operation. In particular, it is required that
Given the threat analysis results and insights in highly
incoming actuation commands are processed in real time
vulnerable parts of the system, we examine security and
and accurate manner. The actual actuator should execute
system requirements that will provide guidance in designing
the commands accurately, fast, and reliably under various
security solution for ADAS.
conditions. The actuation function should be available and
5.1. Control System Security Requirements continuously in correct operation status.
Security requirements for ADAS control system are primarily On internal processing modules, software and hardware
derived from threat analysis results. We take LDW and ACC protection should be in place to ensure that the supporting
as case studies, and focus most efforts on understanding data is 1) available; 2) not delayed or rushed; 3) content is
how attackers could launch the attacks that could cause the authentic and integrity protected; 4) syntax is correct; and
system to act outside its control system specification. That is, 5) correct correlation in multiple sensing streams is main-
the system that achieves the control system objectives. tained. To accomplish these objectives, the major software
Therefore, the overall security objective on ADAS control and hardware components for any internal processing
system is to: module should:
To support this objective, the secure ADAS control system On internal communication, to protect data properties, the
should satisfy the following major requirements. protocols should ensure integrity, authenticity, availability,
freshness, and timeliness of any data internally communicated.
R1. Availability The system and functions should ensure These requirements can be used to further derive specific re-
that data and processing capability are available to satisfy quirements on functions for internal communication, including
the needs by ADAS fusion and intelligent actions. managing communication keys, handshakes, communication
R2. Real Time Delivering of warnings/actions should buffering, and actual data distribution.
be in real time to be useful.
R3. Accuracy Warnings and actions correctly
and accurately reflect the current driving condition
and accurate enough prediction of potential
incidents on road.
R4: Reliability System is able to predict potential
dangerous conditions with high probability and low
error rate; Ensuring such capability when system is
under attack.
9
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
5.2. Lifecycle Management Security Requirements Detect runtime attacks: It is required that system should
Like other secured systems, the functions and the archi- at least detect attacks when they happen in the system.
tecture that support ADAS functions should start secure, To do this, the system is required to generate information
run secure, and stay secure. Security from cradle to grave of system status that differentiates between normal
is a critical requirement to maintain ADAS lifecycle integ- conditions vs. under attack conditions.
rity. ADAS system consists of multiple components and the Prevent runtime attacks: A stronger requirement for
internal communication. This makes security of lifecycle system to run secure, is to invoke mechanisms that
management more challenging compared with a traditional prevent the system from being attacked at runtime.
computing system or any other systems that only deal with a Solutions that satisfy this requirement may be built-in
single main processing module. In this section, we pay close design in the system architecture, or additional security
attention on security management of ADAS ensemble and mechanisms/protocols that protect the operation
modules that specific for ADAS or automotive. Readers can and data.
refer to literature for secure lifecycle management require-
ments for stand-alone computing modules. 5.2.3. Stay Secure
Changes occur in ADAS system with respect to individual
5.2.1. Start Secure
components and managing the ADAS trusted ensemble.
Primary goal at this stage is to establish secure provisioning
Whether it is about updating/patching hardware and soft-
of ADAS components, and the trust relationships between
ware on individual components, or on updating trust rela-
components. Below are some key requirements:
tionship among group members, the following are the high
Establish Root of Trust (RoT): A trusted owner of the entire level requirements to be satisfied in order to maintain the
system to be established and held accountable of ADAS trusted ADAS ensemble.
system configuration and management. This common RoT
Integrity protected
is the foundation for ADAS components to establish secure
relationships and communication keys as required by Authenticated source to provide update
ADAS operation. Update with authorized modules only
Deploy trustworthy HW and SW trust modules: It is Freshness in update process
required that the initially provisioned system hardware Proper trust foundation re-establishment on
and software modules are trustworthy and are the updated components
authentic version by the authority. The system is also
required establish the authority as the trusted party, Group-based authenticity and integrity protected
and provide mechanisms to allow third party to gain
proof that the system is running trustworthy modules. 6. Secure End-to-End ADAS Data Path
Establishing integrity policies among components: This section offers some thoughts on how to design and
There should exist policies and mechanisms that allow develop solutions to support ADAS security requirements.
each individual component to establish and prove its trust
Given our analysis of threats and security requirements,
status to other components, as well as for the components
the overall goal for securing ADAS function has emerged:
to establish and prove their trusted status as a whole
ensuring protection of data collection, processing, and
architecture and group.
control system execution for ADAS use cases. We are in the
5.2.2. Run Secure mission of securing the end-to-end ADAS data path: from
Once the ADAS system starts to run, the following are some collection to final consumption. Security solutions should
high level requirements. be designed to secure ADAS path with four major areas of
concerns: 1) secure Real-time Sensing and Input, 2) internal
Invoke trusted system only: Upon system boot, only the data processing, fusion, and decision making, 3) trustworthy
provisioned trusted hardware and software can be booted. and reliable output, and 4) trusted internal data dissemina-
Any forged components should be detected and prevent tion. Furthermore, lifecycle management issues will be
from loading into the system. addressed together with control system security in our
Validated input only: Mechanisms should be invoked here solution discussion.
to validate the input. In particular, there are interfaces
Note 1: The discussion on securing diagnosis and auditing
exposed externally to acquire input from physical world.
functions that require separate architecture from main ADAS
Mechanisms that are used to protect input at these inter-
system and are considered out of scope for this document.
faces are still in their infancy.
10
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
Sensing ECU Integrity Protection System Integrity Protection Acutation ECU Integrity Protection
ADAS Data ADAS Data ADAS Data ADAS Group ADAS Data Actuation
Sensing Comms
Comms Fusion Mgmt Comms
Note 2: We dont necessarily limit ourselves in a specific Furthermore, the trust relationships between these platforms
solution space. As general discussion, all solution and how they establish secure communication to support
spaceshardware, software, firmware, system, security requirements on data flows are also critical. In this
networking, and servicesare under consideration. area, there are key management issues among platforms,
and issues of securing data paths and channels. To facilitate
6.1. SummarySolution Areas trusted ensemble management, there should be a module
To secure the end-to-end ADAS data path, the main solution to manage the ADAS group. Here, we hypothetically put this
areas should concentrate on following five areas: functionality on the central fusion platform, given its unique
1. Common trust basis for computing platform position that allows it communicate with every other compo-
2. Securing sensing nent in the ADAS system. This function could also be enabled
by a specially designed module as a completely separate
3. Securing actuation component in the system.
4. Securing internal processing In the rest of this section, we discuss each solution area in
5. S
ecuring ADAS ensemble (trust management more detail. Again, we mainly focus on how each component
and communication) in the system can leverage security technology to satisfy
security requirements for ADAS control system and lifecycle
Their relationships can be described at high level, management. In some of the areas, the existing security tech-
as illustrated in Figure 6. nology needs to be re-engineered or re-designed to meet
To handle input, or output, or internal processing, any com- ADAS requirements.
puting platform should have a set of basic security features 6.2. Secure ADAS Computing Platforms
that establish basic trust on these computing platforms.
Computing platforms in ADAS include sensing platform, the
Beyond this basis, each computing platform may be required
ADAS main processing platform, and the platforms for actua-
to enable additional security solutions that meet specific
tion. All these platforms should establish a set of primitives
security and functional requirements for input, output, or
as trust foundation for supporting ADAS security operations.
internal processing respectively.
Figure 7 demonstrates these primitives at the conceptual
As illustrated in Figure 6, for sensing ECUs, the primary tasks level. Note that the actual instantiation of these primitives
for security solution are protected sensing and trustworthy is case by case depending on the target platform or micro
communication to distribute sensing information to con- controller. Also, this is a demonstrative security profile. We
suming components in the ADAS system. For actuators, the do not require that every ADAS component to support all
ADAS specific security protection is trustworthy actuation, of these primitives. This is especially the case for resource
and communication for receiving actuation commands and limited micro controllers. Nonetheless, for the completeness
other management messages. For main ADAS main fusion of discussion, it is important that the trust foundation covers
platform, the center of the solution stack is on trusted data major areas of issues for protecting basic functions that an
fusion processing. ADAS component relies on.
11
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
12
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
13
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
14
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
6.7. Secure Connected Ensembles For security design, different layers of network stack have
The security system for intra-vehicle data communication their own security issues and suitable solutions. In ADAS
for ADAS function consists of three components: system, there exists diversity of communication channels:
Integrity assurance of communicating modules Ethernet, CAN, FlexRay, and other proprietary channels.
Different type has its own security issues. And existing
Key management that establishes trust between modules
solutions are different in terms of the technology maturity.
Secure communication protocol For instance, for Ethernet links, existing TCP/IP stack and
their security countermeasures could be suitable to secure
Integrity Verification communication. On the other hand, the CAN protocol is
The integrity of platforms serves as the basis for establishing currently still vulnerable to malicious attacks and the solu-
trusted channels between them. Here the local attestation tion is still under development in the standards groups and
or integrity verification solution is required to establish that by industrial consortia. Here, the main issue with enabling
the modules maintain their integrity of the system. The integ- secure communication in ADAS system is primarily on ensur-
rity demonstration to modules serves as the basis of trust for ing interoperability, so that modules from different vendors
further establishing protected channels. could be easily integrated to construct secure intra-system
Furthermore, if there is a need that a group of modules to communication in an ADAS system.
establish trusted communication, the basis of trust among The communication protocols may not be always pairwise
them could be established via a group-based attestation between modules. Depending on the ADAS use case, there
solution. There are some technology in the literature, could could also be group-based communication. For instance,
be used as the basis for constructing group-based attesta- in the case of multiple sensors serving together for ACC
tion. Yet, to our best knowledge, this is an open challenge function in ADAS, there may be needs to ensure multiple
for securing ADAS group. front-view cameras work together to ensure reliable
Secure Communication Protocols modeling of front view road condition. There may be group-
For data distribution, we need to enable trusted data paths based communication flow among these cameras, the corre-
across platforms in the ADAS architecture. As identified sponding sensing platform(s), and the main ADAS processing
in threat analysis, the primarily concerned data channels platform. That means security protocols should be designed
are mostly bi-directional from the main ADAS processing and deployed among these modules that satisfy specific
platform to all other platforms including: smart sensing requirements by such group communication workloads.
platforms, platform for user input, ECUs for status report Hence, individual modules in ADAS system should provision
and actuation control. The primary issues for protecting data and invoke these additional components that support data
flows are the data properties that directly impact functional flow protection, whether its pairwise based or group base,
goals of the entire ADAS control system: availability, real- or any form of relationship.
time, reliability, and accuracy. Key Management
Supporting secure communication among ADAS modules To support secure communication protocol, the secure com-
is a non-trivial problem. As demonstrated in threat analysis, munication sessions should be established. The goal of key
given the expected adversarial model, communication management is to establish session keys or the keys used to
channels can be fully under control by adversaries. To protect the communicate channel between parties. In ADAS
protect data flows on these channels, security protocols are system in general, the communication is required to support
required. Security primitives such as HW root of trust, secure data availability, freshness, integrity, and authenticity. Hence,
identities, and secured cryptographic engines are required the keys used to achieve these goals should be established
to support cryptographic operations and validation by the properly before the modules could engage with the secure
secure communication protocol. In addition, the complexity communication protocol for exchange data. The property of
of supporting secured communication comes from two these keys depends on the choice of target security protocol.
issues: diverse channel types and diverse data flows.
15
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
The basis of establishing keys is from the trust relationship between the modules. The trust relationships should be repre-
sented by the security credentials that can authenticate the modules. In addition, the binding of the modules current status
with its authentication credentials could be required to establish the trust. To achieve this goal, the system needs to utilize the
integrity verification function. Such verification may be required to be mutual: mutual authentication and mutual attestation.
Furthermore, the group-based authenticated communication requires group-based trust relationship, hence requires member
authentication in group and group-based attestation.
Technology foundation in this area exists. The suitable solutions for ADAS should be designed to meet the architectural
requirements and specific communication security requirements.
7. Conclusion
This paper details the security issues that directly impact the ADAS system functional safety goals. Key security issues are
identified via threat analysis case studies. Security requirements are derived from every parts of the ADAS architecture. Key
security objectives are defined to support ADAS control system integrity, data protection, and lifecycle management. Various
pieces of the security architecture and solutions are identified that can be put together to protect the vehicles operation with
ADAS system. There are many architecture specific details to be worked out. More learning comes from actually doing
experiments. Further work is along with a few specific directions:
1. F
urther exercise and experiment for a specific ADAS architecture; engineering work to enable ADAS security solutions,
advancing the secure ADAS system to be reality.
4. S
ecurity impacts on functional safety for automotive: detailed analysis, and community consensus building in the context
of automotive standardization.
References
1 Checkoway et al, Comprehensive Experimental Analyses of Automotive Attack Surface, USENIX Security, Aug. 2011
3 Rouf et al, Security and Privacy Vulnerabilities of In-Car Wireless Networks, USENIX Security, Aug. 2011
4 Koeberl et al, TrustLite: a security architecture for tiny embedded devices, In Proceedings of the Nineth European
Conference on Computer Systems (EuroSys 14)
16
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
A.1. Lane Departure Warning Usage Case Expected attacker capability: Simple HW attacker
The lane departure warning (LDW) use case refers to a spe- Has reverse engineered all firmware, SW
cific function by the ADAS system that enables the vehicle Can modify and replace all firmware, SW
to sense and calculate model to determine if the vehicle is
Can replace/substitute any ADAS components
moving in the lane properly. The calculation is ongoing and
the system generates warning to driver if the LDW module Can remotely install privileged and unprivileged
malware onto any micro-processor that
determines that the vehicle is currently outside the intended
communicates through external interfaces
lane, or is about to cross the lane line, departing the current
lane. Figure 8 demonstrates a conceptual system architecture Can read/write/jam/forge the radio channel
that enables LDW function. Can add/remove functionality
Can boot/operate removed parts in
In particular, the input taken from sensors include frames
alternate environments
captured from front cameras in real-time, and speed and
steering position of the vehicle as captured internally Expected attacker capability: University Challenge
through CAN bus. The incoming frames are consumed by a
Will invest up to 6 months engineering effort and $50K
sensor pre-processor, which uses the frames to recognize
part/equipment/computation to develop tools to attack
objects, such as lane lines, and generates graphical model of
many vehicles
driving condition with respect to LDW. The graphics model(s)
are then transmitted to the main processor that fuses sens- A.3. Threat Analysis
ing information from both the graphics models and current A.3.1. Assets and Interfaces
conditions of the vehicle, and generates LDW output as the To analyze all threats, the ADAS system is decomposed
outcome of calculation. The output can be in the form of to assets. Threats on each asset are the threats to the
video/audio to the corresponding output interfaces. entire system. Assets can be a piece of software, hardware,
or data structure. We treat assets as atomic modules in the
A.2. Adversarial Model
system. The threats on assets are launched through inter-
The expected adversary to LDW usage case are the
faces, each assets exposed, including input interfaces
attackers who can launch simple HW attacks with the
and output interfaces.
capability of university challenge. This means:
Figure 8 summarizes the relationships between assets. Table
I enumerates all assets and the corresponding interfaces.
AVB/ Video
PRE-PROCESSOR
Frames DISPLAY
Main CPU Data
FRONT AUDIO
CAMERA SYSTEM
Frames/ COMPUTING PLATFORM Audio
75 Mbps Out
CAN Network
Speed, Stearing
Position
17
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
In this definition, each asset has one or more input interfaces A.3.2. Data Structure Asset Properties
and one or more output interfaces. For the assets that expose For A7 A12 data structures, we further define all properties
some or all interfaces externally, the interfaces are specially of concern.
labelled. Otherwise, all input interface should specify the
A7: Frames
assets that the input is taken from, and all output interfaces
should specify the assets that the output is delivered to. Content parseable as video frame from camera
Resolution in proper range
Furthermore, assets A1 A6 are major modules in the LDW
system architecture that work together to enable the LDW Contrast
function. Assets A7 A12 are specifically defined for the data Brightness
structure that moves between major functional assets. We
Generated frequency
define the assets in such way to make sure the properties of
the data structures are captured. And unexpected changes to Availability
these data structures that alter the properties are considered
attacking actions.
18
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
19
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
AVB/ Video
FRONT Ethernet PRE-PROCESSOR Out
Clock Code DRIVER
CAMERA
SENSOR
Frames DISPLAY
Main CPU Data
FRONT AUDIO
CAMERA SYSTEM
Frames/ COMPUTING PLATFORM Audio
75 Mbps Out
CAN Network
20
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
21
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
Notes: Attacker actions for removed warnings are very similar A.3.4. Data Privacy Discussion
to the actions for False Warning case. All these actions So far, we focus our analysis mostly on examine vulnerabilities
focus on interfaces that could: that cause the ADAS to fail its LDW functionality. Given that
the system is expected to constantly collect and process input
Manipulate input or input processing
data from video cameras and internal CAN bus, there might be
Manipulate output or output delivery a concern of privacy of such data. For instance, such data can
Manipulate internal processing and internal be used to track location of the vehicle, and reveal behavior
data communication history of the driver(s).
As discussed above, the Delayed Warning attack can be In our analysis, we believe, there is no privacy concern if the
achieved with combination of actions for removed warning data is collected only for the purpose of supporting LDW
and false warning. Therefore, threat analysis for this third function. The rationale is the following:
case can be considered as union of actions as illustrated in The input data, internal data, and output data are all
table 1 and 2. for temporary consumption. The data is not stored
for long term.
Front view condition is publically available for any one of
interest. Instead of attack LDW system directly, attacker
could simply install his own camera to capture the same
or similar views.
22
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
Given this reasoning, we think data privacy should not be Besides data privacy, there may be a need to keeping the
considered as a threat for LDW system. details of internal LDW algorithm secret, for vendors IP
protection purpose. If there is such need, and the algorithm
However, if in the vehicle ADAS, there is a function module
is designed and implemented in such a way that internal data
that collects sensing and vehicle status information and
models as input for LDW fusion can potentially reveal algo-
stores it in a non-volatile storage for other usages, such as
rithm details, there should be mechanisms to keep internal
telematics, auditing, etc., then there is the privacy concern
data private, even if such data is only for temporary con-
that leakage of such information can be used to reveal users
sumption. Alternatively, the vendor could choose to design
private driving activities.
or re-design the LDW algorithm, so that internal model data
structure wont provide information that helps to recover
algorithm details.
23
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
B.1. Adaptive Cruise Control Usage Case ACC function, by nature has higher severity in the conse-
The adaptive cruise control (ACC) use case refers to another quences of failure, because it involves direct vehicle control,
specific function by the ADAS system that enables the vehicle as opposed to only the warning through UI to driver. The
to autonomously manage its moving speed, based on the controllability is outside the consideration of this analysis.
following four sources of information: Therefore, our focus should be on exposure to failures.
Attack actions to ACC function could potentially increase
Current vehicle condition
system exposure to failure significantly. Well visit this issue
Driving condition and relative speed of leading vehicle in risk analysis.
Road conditions Figure 10 illustrates a conceptual system architecture that
Drivers preference enables ACC function.
ACC is the advanced version of current cruise control function. The similar ADAS architecture is used to support ACC func-
Currently, the cruise control accepts a speed set value from tion. For ACC, the system takes different input data set, runs
driver and manages the vehicle control system to maintain the the ACC modeling algorithm, and output to take actions that
target speed. It may takes additional sensing information for manage vehicle speed. Heres the summary:
speed management from road, e.g., up/down hill and turning. Input:
However, traditional cruise control does not allow the vehicle Speed, acceleration status (gas, brake) from CAN bus
to adjust vehicle speed dynamically according to the relative
Graphics: front cameras, lidar, radar
distance to the leading vehicle.
Road condition: surface condition, uphill/downhill, curves,
Primary intelligence in ACC is the capability of recognize weather conditions (from local sensors as well as through
leading vehicle(s), estimate relative distance, and even network communication)
predict the leading vehicles next moving model.
ACC Algorithm:
Compared with LDW, ACC function provides additional
Leading vehicle(s) object detection
opportunity to analyze a more complete example of ADAS
function that involves input, internal process, and real-time Distance estimation
control command and actuation. Based on ISO 26262 require- Leading vehicle driving condition assessment
ments, LDW is generally considered as ASIL B function and and prediction
ACC is generally considered as ASIL C/D function. In other
Hazard detection: sudden brakes, pedestrians,
words, ACC has more stringent safety requirements. For the
traffic sign/light, speed limit, road construction, etc.
same ADAS system architecture, implementing ACC means
need to reduce exposure to failure, reduce severity of system Speed management prediction
failures, and increase controllability when failure happens.
AVB/
FRONT Ethernet WATCHDOG
CAMERA
SENSOR PRE-PROCESSOR
24
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
LEADING CAR
Smart Sensing Platform(s) MOVEMENT
Camera Input OBJECT
OBJECT
OBJECT OBJECT MOVEMENT PEDESTRIAN
Lidar Input DISTANCE
DETECTION RECOGNITION MODEL AND MOVEMENT
ESTIMATION
Radar Input PREDICTION
LANE
LINES
User Input
TRAFFIC
Road DESIRABLE SIGNS
Condition ROAD SPEED/SPACE
ROAD
Input SURFACE MODELING
MODEL
MODELING Low Level Controller
BRAKE
CONTROLLER
25
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
26
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
27
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
B.3.3. Threat Analysis For the system design, the first two criteria are considered
To analyze the threats posed by the expected adversaries, as primary, given the ACC function has direct safety goals.
again, we examine the expected behavior of the system. Therefore, the attackers goal of causing the system to act
In general, any attack actions that cause the system to act outside its specification is primarily on: causing the failure
outside its specification, are categorized as the threats to manage proper speed to the point that the attack can
to the system. compromise the system design goal according to the
success criteria.
The system specification of ACC, from threat analysis
perspective, is the following: We are going to focus primarily on the safety critical
consequences. The rest of this section presents in more
Manage vehicle speed adaptive to real-time
details on the threat analysis that cause ACC safety
driving conditions
critical consequences.
This means that the success of ACC function can be
Collision Under ACC Threat Analysis
measured by the following criteria:
Similar to LDW, the threat analysis is conducted on assets in
Achieve cruise control function with reasonable conditions the system, for threats from input data, internal process,
Minimize danger of collision via real-time and output data. The goal is to identify all external/internal
speed management interfaces of ACC system assets that attacker can manipulate
to conduction actions and cause the system to cause colli-
Minimize traffic congestion factors
sion. A similar table, as LWD threat analysis, can be created
Maximize user comfort for capturing all threats.
28
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
29
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
Here, we use Figure 13 to summarize our findings. In L1.2: Missing action by brake controller, caused by
addition to the enumeration by a detailed threat analysis Brake mechanical failure
table, an organized tree of threats is created describe Mechanical problem is out of scope for ACC threat analysis
relationship of each threat to how it eventually achieve
Modified or missing command to brake (on A19)
the attack goals.
False information causes brake to fail to brake in time.
In Figure 13, the individual threats are the leaves in the tree. Properties on A19 that could lead to the consequence
They are color-coded by four categories: compromised SW, could be either command been delayed or deleted.
sensing failure, risks on internal communications, and HW Further, if there is a time window specified to take brak-
mechanical failure. The figure illustrates the process how an ing action, a malicious change to prolong the time window
attack could take action on an entry point, manipulating the information will cause the failure of braking properly.
system from that leaf upwards to parent nodes, which repre- L2.2: Failure in generating braking command by A8
senting the consequences caused by this action. Eventually, all This internal needs further analysis. Incorrect command
these internal unexpected changes in the system lead to the could be caused by either the input failures, or internal
final result of compromising ACC function and cause collision. processing failures.
Heres how the consequences are defined. L2.3: Delayed in generating braking command by A8
This internal needs further analysis. Incorrect command
L0: Collision under ACC System, caused by
could be caused by either the input failures, or internal
L1.1: False action on Throttle, or
processing failures.
The primary concern is that the vehicle doesnt slow
down in time that causes collision with leading vehicle. L2.1, L2.2, L2.3: Internal: Incorrect command generated by
Reduction of speed within a time window is the primary A8, caused by
concern. Failures in generating, or processing, or executing Miscommunication of target speed information input to
the appropriate command are the primary causes to A8 (input interface)
this consequence.
Missing speed change, or time window for
L1.2: Missing action by brake system action restriction
When braking is required to avoid collision, missing the Increase of target speed to an undesirable level
braking action becomes fatal. This could be caused by
Delayed speed change command
failures in generating, processing, or executing braking
commands by the system. L3.1: Incorrect space/speed modeling results from A5
This is an internal condition that needs further
L1.1: False action non Throttle, caused by
analysis. The desirable outcome by the attacker is
Throttle mechanical failure
to manipulate A5 or the input interface of A5 so that
Mechanical problem is out of scope for ACC threat analysis
the output speed change command is manipulated
Modified or missing command to throttle (on A19) to achieve the properties as describe in the above:
False information causes throttle to fail to reduce the increase of target speed to an undesirable level or
speed given required time window. Modification on A19, missing speed reduction when it needs to.
or the internal channel could include:
L3.2: Delayed space/speed modeling results from A5
Incorrect speed target (not enough reduction, or even
increase speed) Similarly, this is an internal condition that needs further
Longer time window specified to reduce speed analysis. A5 or input interfaces are manipulated in such
a way that the output of speed reduction command is
Missing speed reduction command
delayed.
Delayed speed reduction command
30
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
L3.1: Internal: Incorrect space/speed modeling results L4.1.3: Improper road condition models
from A5, caused by Compromised ADAS brain fusion algorithm SW on A5
Compromised ADAS brain fusion algorithm SW Incorrect road condition sensing input
This can be achieved by malware infection. Once
E.g., incorrect sensing that misses downhill condition
the fusion algorithm SW is taken by the attacker, its
behavior is completely controlled by the attacker. Lack of weather info to indicate slippery road on
Therefore, the output of space or speed modeling a rainy day
is by attackers choice completely. This could be achieve by compromising sensors di-
rectly, or by compromising external weather source
Manipulation on O5.3, for output properties
Properties: speed value, space value, Missing road condition information
availability, timeliness E.g., missing downhill information
L4.1: Internal: incorrect modeling of current Corrupted communication to C5.3 and C5.4
condition, including
Similar properties of sensing data or weather
L4.1.1: Incorrect leading car speed prediction information are changed
L4.1.2: Incorrect leading car distance estimation
Input failures on C5.2
L4.1.3: Improper road condition models
CAN bus problem to provide correct information
Combination of above
on the vehicle speed status
L3.2: Internal: Delayed space/speed modeling results
L5.1: Internal: Incorrect object recognition or distance
from A5, caused by
estimation from A4
Compromised ADAS brain fusion algorithm SW
See L3.1 for further details
Manipulation on O5.3, for output properties
Property: delay output
31
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
L5.1: Internal: Incorrect object recognition or distance Discussion on Other Three Threats
estimation from A4 As described above, besides collision caused under ACC
Compromised SW: smart sensing platform (A4) with function, there are three other types of threats:
infected software
Failure to enable ACC under reasonable conditions
Output of speed modeling can be of attackers choice
Cause Traffic condition given reasonable conditions
Compromised communication
Input channels are compromised (C4.1, C4.2, and C4.3). Cause discomfort given reasonable conditions
Properties could directly affect the outcome of object
These three threats are real to users, although not necessarily
recognition, and object distance estimation, could include:
directly related to driving safety. Here we briefly discuss these
Availability of frames, or lidar, or radar signals that
threats, especially some of the detailed actions by attacker
illustrates current condition
that are not covered in collision threat analysis.
Content of input information
Failure to Enable ACC
Maliciously modified, or inserted with forged Hypothetically, the user input the desirable speed through
information
the existing input interface to trigger ACC function. The ACC
Frequency of input information system then could take the input, launch the software mod-
Correlation of these three sensing data streams that ule, and wake up sensors. The system could be attacked via
directly impact the outcome of the modeling threats on
Compromised sensing Users input
A1: front camera compromised to produce Sensor calibration error
compromised sensing content ACC function testing
Availability, legitimacy of content, in time ACC function testing output
Faked environment on the lens that feed in
as sensing input Under a typical driving environment, such as
Compromised camera FW/SW that produces reasonable leading vehicle distance,
undesirable output
past speed dynamics is reasonable,
HW compromise on A1, mechanical errors
the road is not too slippery, and
Failed calibration
A2: Lidar sensor compromised to produce visibility is good enough for sensing,
compromised sensing content
Availability, legitimacy of content, in time
Faked environment on the input interface to be fed in
Compromised sensor FW/SW that produces
undesirable output
HW compromised on A2, mechanical errors
Failed calibration
A3: Radar sensor compromised to produce
compromised sensing content
Availability, legitimacy of content, in time
Faked environment on the input interface to be fed in
Compromised sensor FW/SW that produces
undesirable output
HW compromised on A3, mechanical errors
Failed calibration
32
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
The ACC can be successfully enabled, after the ACC system Failed to launch ACC could also be achieved by failing the sen-
runs a round or multiple rounds of quick test. Hence, the sor calibration. During the process of system launching, the
threats posed by attacker that can fail the launch of ACC necessary sensors need calibration before they can be used to
involve actions to cause the system to produce output that capture sensing data for ACC function. Failure in enabling sen-
indicates failure of one or more of the above 4 conditions. sors properly via calibration can directly fail ACC function and
system. The attacking surface could be on the direct attacks
Overall, the threats can be summarized in Figure 14.
in sensor mechanics, or the module that handles calibration,
Attack actions on Internal ACC testing procedure can be very or the internal communication channels that pass information
similar to the actions taken to achieve collision. Similar threat between modules for the purpose of calibration, or the output
analysis for collision is applicable here. The difference lies in channels to confirm success of calibration.
that the same vulnerabilities are utilized and information is
Finally, output confirmation could be disrupted by the
manipulated differently to convince the system that it is too
attackers that could effectively disable the launch of
dangerous, or unreasonable to launch ACC now, even though
the ACC system.
the current driving condition is normal. Hence, the goals are
opposite to some of the attacking goals in the collision case.
33
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
34
Advanced Driver Assistant System:
Threats, Requirements, and Security Solutions
35
INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHER-
WISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTELS TERMS AND CONDITIONS OF SALE
FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE
AND/OR USE OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR
INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT.
Intel may make changes to specifications and product descriptions at any time, without notice. Designers must not rely on the absence or characteristics
of any features or instructions marked reserved or undefined. Intel reserves these for future definition and shall have no responsibility whatsoever for
conflicts or incompatibilities arising from future changes to them. The information here is subject to change without notice. Do not finalize a design with this
information.
Copyright 2015 Intel Corporation. All rights reserved. Intel and the Intel logo are trademarks of Intel Corporation in the U.S. and/or other
countries. *Other names and brands may be claimed as the property of others. 0115/MW/HBD/PDF 331817-001US