Deliverable D5.2: Proof of Concept Use Case Specification
Deliverable D5.2: Proof of Concept Use Case Specification
Deliverable D5.2:
Proof of Concept Use Case Specification
Abstract
This document contains the specifications of the proof of concept (PoC) use cases selected
and described in Deliverable D5.1 in order to demonstrate the capabilities of the OVERSEE
platform.
The specified use cases include application use cases, which demonstrate the functionality of
a certain application on the OVERSEE platform, as well as validation use cases, which
demonstrate a specific property of the OVERSEE platform, such as security, isolation and
dependability properties. Each use case is specified in terms of involved data, software
modules, peripherals and the application flow.
ii
D5.2: Proof of Concept Use Case Specifications
Contents
Abstract..............................................................................................................................ii
Contents.............................................................................................................................iii
List of Figures.....................................................................................................................vi
List of Abbreviations...........................................................................................................vi
Document History..............................................................................................................vi
1 Introduction.................................................................................................................6
1.1 Scope and Objective of the Document.......................................................................6
1.2 Document Outline.......................................................................................................6
2 Use Case Specifications.................................................................................................6
2.1 USB Flash Drive Media Access....................................................................................6
2.1.1 Introduction....................................................................................................6
2.1.2 Initial State......................................................................................................6
2.1.3 Involved Data..................................................................................................6
2.1.4 Used Modules and Services............................................................................6
2.1.5 Sequence Diagram..........................................................................................6
2.1.6 Description......................................................................................................6
2.2 Emergency Vehicle Warning........................................................................................6
2.2.1 Introduction....................................................................................................6
2.2.2 Initial State......................................................................................................6
2.2.3 Involved Data..................................................................................................6
2.2.4 Used Modules and Services............................................................................6
2.2.5 Sequence Diagrams........................................................................................6
2.2.6 Description......................................................................................................6
2.2.7 Notable Changes and Justification..................................................................6
2.3 Sending an Emergency Call.........................................................................................6
2.3.1 Introduction....................................................................................................6
2.3.2 Initial State......................................................................................................6
2.3.3 Involved Data..................................................................................................6
2.3.4 Used Modules and Services............................................................................6
2.3.5 Sequence Diagrams........................................................................................6
2.3.6 Description......................................................................................................6
iii
D5.2: Proof of Concept Use Case Specifications
iv
D5.2: Proof of Concept Use Case Specifications
v
D5.2: Proof of Concept Use Case Specifications
List of Figures
Figure 1: Media player sequence diagram..................................................................................6
Figure 2: Graphical representation of the EVW..........................................................................6
Figure 3: Emergency vehicle sends CAMs sequence diagram....................................................6
Figure 4: Proof of concept car generates warning sequence diagram.......................................6
Figure 5: Trigger and send an eCall sequence diagram..............................................................6
Figure 6: Software update sequence diagram............................................................................6
Figure 7: Permission request sequence diagram........................................................................6
Figure 8: Verify software update list sequence diagram............................................................6
Figure 9: Execute software update sequence diagram...............................................................6
Figure 10: Message sequence chart of the Platooning use case................................................6
Figure 11: Platooning from the view of a follower vehicle.........................................................6
Figure 12: Detection and broadcasting of warning events.........................................................6
Figure 13: Incoming V2X messages lead to safety reaction........................................................6
Figure 14: Attack on the software update process.....................................................................6
Figure 15: Attack trying to hijack a platoon................................................................................6
Figure 16: Replay attack to fake a hard braking vehicle..............................................................6
vi
D5.2: Proof of Concept Use Case Specifications
List of Abbreviations
ADAS Advanced Driver Assistance Systems
AES Advanced Encryption Standard
APEX Application Executive
API Application Programming Interface
ARINC Aeronautical Radio Incorporated
BT Basic Task
C2C-CC Car to Car Communication Consortium
CALM Communications Access for Land Mobiles
CAM Cooperative Awareness Message
CAN Controller–area Network
CAP Capability
CC Common Criteria
CEN European Committee for Standardization
CF Configuration File
CPU Central Processing Unit
CT Configuration Table
CTR Constraint
DEN Decentralized Environmental Notification
DENM Decentralized Environmental Notification Message
DNS Domain Name System
DSA Digital Signature Algorithm
DSRC Dedicated Short-range Communications
EAP Extensible Authentication Protocol
ECC Elliptic Curve Cryptography
ECDSA Elliptic Curve Digital Signature Algorithm
ECU Electronic Control Unit
EFC Electronic Fee Collection
ELF Executable and Linkable Format
ET Extended Task
ETSI European Telecommunications Standards Institute
EVW Emergency Vehicle Warning
vii
D5.2: Proof of Concept Use Case Specifications
viii
D5.2: Proof of Concept Use Case Specifications
OSEK Offene Systeme und deren Schnittstellen für die Elektronik im Kraftfahrzeug
OSGi Open Service Gateway initiative
OVERSEE Open Vehicular Secure Platform
PAN Personal Area Network
PCIe Peripheral Component Interconnect Express
PCO Point of Control and Observation
PER Packed Encoding Rules
PKI Public Key Infrastructure
PLMN Public Land Mobile Network
PoC Proof of Concept
POI Point Of Interest
PoS Positioning Service
Pos-X-Link Positioning Data Exchange Link
POSIX Portable Operating System Interface (for UNIX)
PP Protection Profile
PPP Point-to-Point Protocol
PSAP Public-Safety Answering Point
QoS Quality of Service
RF Radio Frequency
RFID Radio-frequency identification
RSA Rivest, Shamir and Adleman algorithm for public-key cryptography
RSU Roadside Unit
RTOS Real-time Operating System
S&D Security and Dependability
SAP Service Access Point
SAR Security Assurance Requirements
SecS Security Service
SFR Security Functional Requirements
SKPP Separation Kernel Protection Profile
SLAP SLAP is a Lightweight Asynchronous Protocol
SMP Symmetric Multi-Processing
SMS Short Message Service
SPP Serial Port Profile (Bluetooth Profile)
SRS Software Requirements Specification
ix
D5.2: Proof of Concept Use Case Specifications
x
D5.2: Proof of Concept Use Case Specifications
Document History
xi
D5.2: Proof of Concept Use Case Specifications
1 Introduction
1
D5.2: Proof of Concept Use Case Specifications
2.1.1 Introduction
One of the main goals of OVERSEE is to provide a platform which is suitable for infotainment
applications1, e.g., multimedia player. The media files, typically the focus is on audio files to
avoid driver distraction, could be provided either via wireless networks, e.g., 2G/3G or WiFi,
or on a nomadic device, typically an USB memory stick. The current use-case describes the
1
C.f. satements from the OEMs at the first Advisory Board meeting of OVERSEE.
2
D5.2: Proof of Concept Use Case Specifications
connection of an USB memory stick to the OVERSEE platform and forwarding of the access to
the media files to a partition running an appropriate media player.
The OVERSEE platform is running and one of the user partitions is executing a media player,
suitable for playing audio files in MP3 format. The user partition has the appropriate access
rights to a nomadic device connected via USB and containing the audio files.
The configuration of OVERSEE will be used to check whether a partition is allowed to access
files on a nomadic device or not. The list of partitions, which are allowed to access nomadic
devices, will be presented to the user for selecting the favored partition.
The audio files on the USB storage device will be accessed and played by the media player.
The operator of the platform has to be authenticated (in general this is the driver with
appropriate authentication via the car key) and, according to the security policy of OVERSEE,
authorized to allow forwarding of access to USB equipped memory devices to distinct
partitions. The authentication and authorization policies have to be present and suitable for
this use-case.
USB Module Will be connected with the USB equipped nomadic device
Virtual storage device Provide access to the memory of the USB device as a legacy
driver in the selected mass storage device to the applications
partition
3
D5.2: Proof of Concept Use Case Specifications
Show the available media files and playback options to the user
Media Player
Play media files from attached USB storage device
2.1.6 Description
A USB flash drive will be connected to the OVERSEE platform. The user has to be either
already authenticated in this moment (e.g. by car key) or requested for authentication (e.g.
by password based authentication). The user will be asked which partition should access the
files stored on the nomadic device. Therefore, the user selects the partition serving the
media player application. Finally the media player accesses the stored files and plays the
audio content.
4
D5.2: Proof of Concept Use Case Specifications
2.2.1 Introduction
Figure 2: Graphical
representation of the EVW
The emergency vehicle is situated at a greater distance to the proof of concept vehicle and
starts heading towards it. The “Emergency Vehicle Warning” application is running on top of
the OVERSEE platform and subscribes on the ITS Manager for incoming CAMs and on the
SVAS for its own location, heading and vehicle speed.
The emergency vehicle sends out CAMs with its position, heading, speed and status of the
light bar and siren.
To calculate the emergency vehicle warning, the application subscribes on the SVAS to read
the following data objects:
GeoPosition
VehicleSpeed
Course
5
D5.2: Proof of Concept Use Case Specifications
To avoid bogus warnings, more detailed information about the position of the emergency
vehicle and the proof of concept car could be needed. This information can be derived out of
the vehicle’s navigation system, also provided by the SVAS. The following data objects give
more detailed information about the vehicle’s position, e.g. street name, road number or
point of interest and roadway classification regulated by national laws, e.g. Motorway,
Freeway, Highway or Local:
PositionInfo
RoadClass
To initiate the emergency vehicle warning, the emergency vehicle warning application
triggers a function call including all necessary information on the SVAS that updates a CAN
message the instrument cluster is listen to. This function call is executed when a potential
concourse with the emergency vehicle occurs within the next fifteen seconds, including the
following information read by the instrument cluster:
Distance to the emergency vehicle
Course to the emergency vehicle
6
D5.2: Proof of Concept Use Case Specifications
7
D5.2: Proof of Concept Use Case Specifications
2.2.6 Description
Figure 3 shows how the emergency vehicle sends out CAMs described in 2.2.3.1 every 100
milliseconds. The sending part of the emergency vehicle subscribes for emergency vehicle’s
dynamics and positioning data described in 2.2.3.2 on the Secure Vehicle Access Service. A
CAM is generated and sent out.
Figure 4 shows how the proof of concept car generates an emergency vehicle warning. CAMs
are received and checked for authenticity by the OVERSEE’s security services (not depicted).
These validated messages are filtered for relevance and provided to applications by the
OVERSEE’s ITS manager, the emergency vehicle application subscribes to.
8
D5.2: Proof of Concept Use Case Specifications
In addition, the receiving part of the emergency vehicle warning application also subscribes
for vehicle’s dynamics and positioning data described in 2.2.3.2 on the Secure Vehicle Access
Service.
Within the main loop, the application determines the siren and light bar status of the
emergency vehicle. In the case of active siren and light bars, the distance and course to the
emergency vehicle are calculated. When a potential concourse with the emergency vehicle
occurs within the next fifteen seconds, a function call as described in 2.2.3.4 is executed.
All necessary information like distance, heading and time to concourse of the emergency
vehicle are calculated by the application running on top of the OVERSEE platform but the
warning message itself is not generated by this kind of head unit. This warning message is
generated within the instrument cluster that cares about all safety-relevant warnings and
message priorities.
2.3.1 Introduction
The use case “Emergency Call” describes an application running in one of the OEM partitions
of the OVERSEE platform responsible for highly reliable and highly available functions. This
V2X-application generates an automated emergency call in case of a trigger event (e.g.
accident). All relevant data according to eCall’s minimum set of data (MSD) are transmitted
via SMS and represented on the OVERSEE’s HMI.
The “Emergency Vehicle Warning” application is running on top of the OVERSEE platform and
at least the ignition of the proof of concept vehicle is turned on. The application subscribes
on the SVAS (Secure Vehicle Access Service) to receive all relevant data according to eCall’s
minimum set of data and to the NPS (Network Provisioning Service) to be prepared to send
out the eCall SMS.
To gather all necessary data for an eCall, the application subscribes on the SVAS to read the
following data objects:
VehicleIdentificationsNumber
GeoPosition
Course
9
D5.2: Proof of Concept Use Case Specifications
LocalTime
TankLevel
SeatBeltLock
o Remark: To determine the number of passengers
All pre-processed data are sent via SMS to a figurative emergency operations centre, both as
plaintext and PER-coded. To perform the SMS, the application sends a function call to the
NPS (network provisioning service) including the recipient number and the content.
2.3.3.3 HMI
To trigger the prototypic eCall, a dedicated button of the OVERSEE’s HMI sends a function call
to the eCall application. The return value of this function call includes all data in plaintext
that is sent to the emergency operations centre, visualized on the OVERSEE’s HMI.
10
D5.2: Proof of Concept Use Case Specifications
2.3.6 Description
Figure 5 shows how an eCall message gets prepared and sent. The eCall application
subscribes for different vehicle’s parameters and positioning data as described in 2.3.3.1 on
the Secure Vehicle Access Service.
Within the main loop, the eCall application pre-processes the necessary data according to
eCall’s minimum set of data, including PER-coding and ASN.1-structuring.
The HMI triggers the eCall application to send out the eCall data, visualized to the driver.
The feature eCall in the meaning of a series product is very complex. It is not possible to
fulfill all requirements within the OVERSEE project. A realistic implementation of eCall is out
of focus; thereby this prototypic implementation of an eCall application does not include
11
D5.2: Proof of Concept Use Case Specifications
either the transmission of data via in-band modem nor handover a voice channel to the
vehicle’s passengers.
2.4.1 Introduction
The OVERSEE Software Update Service provides a central place to manage updates of
complete partitions who do not implement update mechanisms for themselves. In addition
to that it serves as an example for update mechanisms implemented in more complex multi-
application partitions.
The Update Service can update 3 different parts of the OVERSEE system:
The XEF file, i.e. the whole application in case of a single-application partition, the
kernel in case of a Linux partition
The file system image in case of a Linux partition
A file archive for updating the Secure I/O partition itself
The OEM owns a signing key with a valid certificate enabling him to sign the update
notification lists. The certificate is issued and signed by the OEM’s CA and the chain of trust
traces to a root certificate that is considered trusted by the OVERSEE platform.
12
D5.2: Proof of Concept Use Case Specifications
The package status database should contain information about every update packet that is
installed currently.
Partition ID
File system ID
Version of file system.
13
D5.2: Proof of Concept Use Case Specifications
14
D5.2: Proof of Concept Use Case Specifications
15
D5.2: Proof of Concept Use Case Specifications
16
D5.2: Proof of Concept Use Case Specifications
2.4.6 Description
The Update Manager is periodically polling a dedicated server (e.g. update announcement
server), where all available updates are collected in form of a list.
After download, the list is verified against the root certificate by the security service to make
sure that the list is approved by the owner of a valid certificate that allows software upgrades
to be issued.
17
D5.2: Proof of Concept Use Case Specifications
All update announcements are checked if they apply to the current system. If yes, the update
manager waits for a suitable moment to ask the owner for approval. This should be the next
time the vehicle engine is not running.
When the owner approves the update and authenticates himself, the download of the
update package is started.
Upon completion, the update manager lets the Security Service verify the package’s hash,
that means, the Security Service calculates a hash value over the package contents, and
compares to the corresponding hash value previously downloaded list of announced
updates.
If all checks have been successful, the package is installed, that means:
The update manager stops the respective partition.
The update manager replaces the old content with the content of the update package
in such a way, that the old content can be restored.
The update manager starts the partition.
If any serious error occurs during this procedure, the procedure has to be aborted
and the partition must be restored to its state before the update.
It is vital that the update process is very reliable, so a proven existing solution will be
adopted to provide the backbone of this use-case. It is possible that the configuration
capabilities of these solutions do not base on xml as stated in Deliverable 2.2 and hence
cannot fulfill the configuration requirements.
2.5.1 Introduction
The use case “Cooperative Platoon Automation System” describes a V2V-application running
on top of the OVERSEE platform. The Platooning Application enables automated velocity and
steering control of a vehicle group (platoon) in order to let the vehicles travel closely one
behind another. Driving inside a platoon promises to enhance traffic safety and to reduce
fuel consumption.
The platoon should already be established. It should consist of a leading vehicle and at least
one following vehicle. The structure of the platoon and the role of each vehicle is appointed
and known to all participants. Messages of participating vehicles inside a platoon are
recognized by a vehicle id, which should be contained equally in all messages. Pseudonym-
change should be locked during the lifetime of the platoon to avoid changes of the vehicle id.
18
D5.2: Proof of Concept Use Case Specifications
Alternatively, the optional update process described in section Update Procedure (optional)
may be used.
The initial state may be set by configuration or alternatively reached through the optional
join procedure described in section Join Procedure (optional).
Besides sensor values, a number of different V2X message types is used for coordination of
vehicles inside a platoon. In particular, vehicles are coordinated through regularly
broadcasted messages like CAMs, DENMs, and optionally additional application specific
messages, as described below.
Cooperative Awareness Messages
Most information required for coordination is already contained in regularly broadcasted
CAMs. Relevant fields for the Platooning application are:
Position
Speed
Heading
Acceleration
Confidence of the values above
Decentralized Environmental Notification Message
Several environmental notification messages indicate critical situations that are essential for
coordination. Especially, the following DENM subjects might be of special interest:
Dangerous Driving – Hard brake vehicle
Platoon Coordination Message (optional)
Additional information, which is not part of the previously described message types, might
be exchanged regularly through application specific messages. Platoon Coordination
Messages contain optional data that complements CAMs and DENMs but does not replace
them, e.g.
Lane specific information
More precise location information, in terms of spatial and/or time-wise accuracy
This message type is most probably not necessary for a proof-of-concept implementation.
Platoon management comprises all tasks to organize a platoon including join, update, leave,
and dissolve procedures, as well as distributing the platoon structure to participants and
announce platoon information to surrounding vehicles. In contrast to vehicle coordination,
19
D5.2: Proof of Concept Use Case Specifications
20
D5.2: Proof of Concept Use Case Specifications
21
D5.2: Proof of Concept Use Case Specifications
2.5.6 Description
The operation of the Platoon application is separated into two mostly independent
components: the “real-time” coordination of the vehicle’s routes and the management of the
platoon structure.
Vehicle coordination ensures that vehicles inside a platoon coordinate their velocity and
lateral position to stay in a line one after another. Besides (distance) sensor values, mainly
V2V messages are used for that. As described in section 2.5.3.1 several message types are
involved including conventional CAMs and DENMs. These messages are generally
unencrypted but should be signed to avoid possible attacks. Except of DENM, which are sent
only in special situations, all messages are sent periodically with preferably high frequency
(at least 1 message per second). Figure 10 visualizes the process.
22
D5.2: Proof of Concept Use Case Specifications
Coordination messages are always broadcasted. Hence, each vehicle must know the
structure of the platoon to filter incoming messages and regard only that ones from vehicles
inside the platoon, which are driving ahead. Consequently, participants of a platoon must
maintain a platoon map that consists of an ordered list of all platoon participants. The next
section describes the process to keep the list up to date. Figure 11 shows an overview to the
Platooning application from the view of a follower vehicle.
Platoon management comprises the whole organization of the platoon including join, leave,
and update procedures.
The platoon leader sends Platoon Announcement Messages (PAM) on changes of the platoon
to inform participants about the current platoon structure. Addressees are only the following
vehicles inside the platoon, so that instead of broadcasting PAMs, encrypted multi-cast
communication (respectively encrypted single-cast to each participant, if multi-cast is not
available) may be used in order to increase privacy of the platoon participants.
Each of the following procedures, results in sending an updated announcement message (at
least if it was successful). The announcement is also a confirmation for the according
requests.
Join Procedure (optional)
Vehicles who want to join a platoon execute the following procedure:
The vehicle sends a join request (Platoon Request Message of type JOIN) to the
platoon leader.
If the leader accepts the vehicle to be a member of the platoon, he sends an updated
Platoon Announcement Message to the platoon participants including the newly
joined vehicle.
The vehicle takes its position in the platoon and switches to automatic driving
following the vehicles ahead.
Leave Procedure (optional)
A following vehicle may leave the platoon with the following procedure:
The vehicle sends a leave request to the platoon leader.
The platoon leader sends an updated Platoon Announcement Message to the platoon
participants, which does not contain the leaving vehicle any longer.
The vehicle leaves the platoon.
Update Procedure (optional)
An update request is needed in particular on changes of the vehicle id of a platoon
participant. Since other vehicles are not able to map messages with a changed id to a
platoon member, the id-change has to be published to the platoon leader who updates the
platoon announcement. In detail the procedure is:
23
D5.2: Proof of Concept Use Case Specifications
A vehicle recognizes a pending id-change. Before the id-change takes place, the
vehicle sends an update request (Platoon Request Message of type UPDATE)
containing the new id to the platoon leader. This request is still signed with the old id.
The id-change is performed. Afterwards, the vehicle confirms the id-change by
resending the update request to the platoon leader. This time it is signed with the
new id.
The platoon leader sends an updated Platoon Announcement Message to the platoon
participants, which contains the new vehicle id.
Dissolve Procedure (optional)
The platoon leader may dissolve the platoon at any time, at the latest when arriving at its
destination. To avoid safety critical situation the platoon should be stopped before dissolving.
The following process dissolves the platoon:
The platoon leader sends an empty Platoon Announcement Message.
A more sophisticated approach would allow dissolving a moving platoon by warning drivers
through HMIs and ensuring that each driver takes the control over his vehicle back.
Nevertheless, this proof-of-concept implementation/specification is suited for model cars
without drivers and HMIs and does not regard this issue.
This use case was not part of the initial use case list, which was defined in D1.1. The reason
behind that fact is that D1.1 concentrated on near-term use cases and excluded safety critical
use cases. Within work package 5, the need of long-term use cases was recognized and as a
result D5.1 introduced the Platooning use case. Since then the use case remained
unchanged; even the optional parts were maintained. However, these optional parts
(including join, leave, and update procedures) will most probably not be implemented for the
demonstrator, because the focus is more on the main part that is required for the validation
use cases.
In order to implement autonomous driving manoeuvres, this use case makes use of an
automatic driving component, which is not part of the OVERSEE platform. This component is
pre-existing knowledge as part of the model car platform and will not be delivered together
with the use case implementation.
2.6.1 Introduction
The use case Active Brake is an application running on top of the OVERSEE system. The use
case demonstrates how V2X-messages may lead the vehicle to a safety reaction. Therefore,
Decentralized Environmental Notification Messages (DENM) are broadcasted to surrounding
(in particular following) vehicles, which indicate a road hazard (e.g., an hard braking vehicle).
Based on these notifications and/or sensor values (e.g., distance sensors or radar), drivers in
24
D5.2: Proof of Concept Use Case Specifications
the relevance area are warned and in case of emergency their cars are actively braked to
avoid a crash.
The Active Brake Application subscribes on the ITS Communications Service for incoming
“hard brake vehicle” events. Additionally, it registers on SVAS to observe the brakes for an
emergency braking.
The DENM is broadcasted via V2X and delivered internally (in a more abstract form) to the
Active Brake Application. Based on the ETSI specification [1], it contains at least the following
values:
Situation information, including
o Cause code and sub cause code, e.g.
101 (Dangerous Driving)
1 (Hard brake vehicle)
102 (Intersection violation)
1 (Stop sign violation)
2 (Traffic lights violation)
o Severity level, with
1 for relatively low safety impact
4 for high safety critically events
Location information, including
o Exact geographic event position
o Relevance area
Management information, including
o Generation time
o Expiry time
The warning message should be displayed visually or acoustically on an HMI device. The
message contains the following data values:
Reason, e.g., “Hard brake vehicle” or “Stop sign violation”
25
D5.2: Proof of Concept Use Case Specifications
26
D5.2: Proof of Concept Use Case Specifications
2.6.6 Description
Various events, such as a hard breaking of a vehicle, may cause a road hazard warning. These
warnings are encoded as and broadcasted via the V2X network. Events regarded for the
Active Brake use case are “Emergency electronic brake lights” and for the alternative variant
“Signal violation warning”. Receiving vehicles analyse these event notifications for relevance
according to their actual position, driving direction, and speed. If the vehicle is located in the
relevance area, a warning message is delivered to the driver. After falling below certain
distance to the event, the Active Brake Application triggers an automatic emergency brake
and broadcasts an additional emergency brake notification to following vehicles.
The first description of this use case in D1.1 was not meant to be a long-term use case.
Hence, all safety relevant parts were excluded. However, work package 5 decided to include
also the long-term aspects such as real active breaking instead of only displaying warning
messages.
In order to implement automatic emergency braking, this use case makes use of an
automatic driving component, which is not part of the OVERSEE platform. This component is
pre-existing knowledge as part of the model car platform and will not be delivered together
with the use case implementation.
27
D5.2: Proof of Concept Use Case Specifications
3.1.1 Introduction
The availability of access to nomadic devices usually causes a high risk of attacks, by using
manipulated files opened by the unaware user of the platform. Indeed, manipulated files
could be provided to the media player of OVERSEE. Nevertheless, due to the isolated runtime
environments and the protected interfaces between the OVERSEE components; the effects
will be limited to the partition executing the media player.
An external attacker (could be also the user of the platform) is assumed to be able to
manipulate files (e.g., audio files) which will be stored on a nomadic device, which will be
probably connected to the OVERSEE platform in a reasonable amount of time.
Manipulated files
These files are stored on a nomadic device equipped with an USB interface which will be
probably connected to the OVERSEE platform. Thus, access to the modified files will be
provided to the media player installed in one partition of the OVERSEE platform. The files
are modified by the attacker to harm either other partitions or the platform with its
capabilities, e.g., in terms of in-vehicular communication.
See Figure 1 concerning the connection of nomadic devices via USB, consider the files stored
on the attached device as manipulated.
3.1.5 Description
An attacker modifies media files which will be provided to the medial player, executed in one
partition of the OVERSEE platform, by use of an USB equipped nomadic device. Due to the
isolation properties and the protected interfaces in OVERSEE, the consequences will be
limited to the partition executing the media player. Thus, no serious safety or security
problems will occur.
28
D5.2: Proof of Concept Use Case Specifications
3.2.1 Introduction
Functions with the requirement of high reliability and availability like Emergency Vehicle
Warning and E-Call have to be executed in isolated domains of OVERSEE.
This is done in order to eliminate influences of other applications with different security and
dependability requirements.
To validate the isolation mechanisms of OVERSEE, an exemplary scenario with a faulty third
party application, which causes a crash of an operating system within the open domain, will
be assumed.
Mechanisms to identify attacks against V2X-Communications or insertion of manipulated
software are shown in other use cases within the model car demonstration and the platform
demonstration.
Not applicable. It is assumed that the third party application that crashes the operating
system behaves unintentionally faulty.
The procedures of Figure 4 and Figure 5 remain unchanged. The third party application is
executed in parallel.
3.2.5 Description
The third party application is executed right before the use cases start. The faulty behavior of
the third party application is triggered remotely. Due to the isolation properties of OVERSEE,
the consequences will be limited to the partition executing the faulty application. Assuming
that the isolation capabilities of the OVERSEE platform work correctly, the behavior of EVW
and E-Call remain unchanged.
29
D5.2: Proof of Concept Use Case Specifications
3.3.1 Introduction
In this misuse case an attacker aims to inject malicious software into an OVERSEE partition
via the update functionality.
An external attacker is assumed. He has control over the environment of the vehicle (i.e.
wireless communication), but he has no internal access to the vehicle systems or the OEM’s
systems. He may therefore manipulate external communication.
OEM Impersonation
The attacker has to be able to intercept and fake the necessary communication, for
example by providing a Wi-Fi access point with a fake DNS server and a fake server for
updates and update announcements.
Malicious update package
The attacker has to build a malicious update package by changing a legitimate
package or by creating one from scratch.
The hashes, cryptographic signatures and certificates can be omitted or faked to a
certain degree:
o Simple omission
o Hash does not fit to package
o Changed update list
o Certificate with different public key
o Different Intermediate certificates
o Different Root certificate
30
D5.2: Proof of Concept Use Case Specifications
3.3.5 Description
The process is very similar to the process described in section 2.4, except that the attacker
impersonates the OEM.
He provides a fake update announcement list and provides fake update packages.
The OVERSEE platform will recognize this at one of the two verify steps, as the attacker
cannot fake full valid cryptographic signatures or hashes.
31
D5.2: Proof of Concept Use Case Specifications
3.4 Platoon
3.4.1 Introduction
The attacker has access to V2X communication, but not to internal components. To bypass
security mechanisms he may use different approaches, which differ in their prospect of
success:
Usage of a self-signed certificate
Replay of already signed messages
Misuse of a valid certificate
32
D5.2: Proof of Concept Use Case Specifications
3.4.5 Description
Figure 15 givers an overview how to hijack a platoon. Note that position updates are always
broadcasted, but here only relevant receivers are shown that navigate based on this data.
The attacker tries to impersonate the role of the platoon leader. The approach would be:
1. Send a faked Platoon Announcement message that contains a manipulated list of
platoon participants with the attacker as platoon leader. This step is vital for the
success of the attack; if any receiver figures out that the platoon leader is not the
sender of the announcement message, he will reject it. Possible approaches are:
a. Use a self-signed identity
b. Manipulate a captured message
c. Use a stolen identity
2. The platoon members recognize the changed platoon structure and start following
the attacker.
3. Broadcast manipulated position updates that lead the platoon on the desired route.
Countermeasures: OVERSEE verifies incoming messages, with the result that
a. invalid sender identities are recognized by verifying the certificate,
b. manipulated messages are detected by verifying its signature, and
c. stolen identities are invalidated by revocation.
Hence, the receiver detects and discards manipulated messages and the attack should fail
after step 1.
3.5.1 Introduction
In this misuse case, a replay attack against the V2X communication is assumed.
The attacker has access to V2X communication, but not to internal components. To bypass
security mechanisms, the attacker captures messages that are already signed by other
communication participants. The attacker may replay a message in order to pretend a
situation, which was specified within the captured message. The attacker is not able to
change the content of the signed message without invalidating it. Hence, the location of the
attack must be the initial location of the event. To prevent the attack from being revealed, a
message should never be sent twice to the same vehicle. Additionally, the attacker has only a
short time window in which the message is regarded as being valid.
33
D5.2: Proof of Concept Use Case Specifications
3.5.5 Description
The attack against the Active Brake use case proceeds as shown in Figure 10:
1. The attacker captures a DENM with the cause “Hard brake vehicle”. This could happen
just by randomly observing vehicles or by provoking an emergency brake, e.g.,
physically or by using this attack.
2. Later the DENM can be replayed to vehicles in the DENM’s relevance area that did not
capture the original message. In this manner, the replay-attack will not be recognised.
3. The attacked vehicle will trigger automatically an emergency brake.
4. If step 3 was successful, the attacked vehicle will broadcast a DENM indicating the
hard-brake event. Using this newly generated DENM, the attack may be repeated
recursively.
Countermeasures: OVERSEE verifies incoming messages, with the result that
a. message hashes are stored to detect replay attacks, and
b. timestamps are checked to discard old messages.
Hence, the receiver detects and discards the replayed messages and the attack should fail
after step 2.
34
D5.2: Proof of Concept Use Case Specifications
References
[1] ETSI: TS 102 637-3 V1.1.1. Intelligent Transport Systems (ITS); Vehicular Communications; Basic
Set of Applications; Part 3: Specifications of Decentralized Environmental Notification Basic
Service. Sep 2010.
[2] DIN: EN 15722, Intelligent transport systems – eSafety – eCall minimum set of data (MSD);
German version EN 15722:2011. Oct 2011
[3] OVERSEE: D5.1 Proof of Concept Use Cases. 2011
[4] OVERSEE: D2.1 List of interfaces and specifications of information flow. 2011
[5] OVERSEE: D2.4 Specification of Secure Communication. 2011
35