FIVADMI A Framework For In-Vehicle Anomaly Detecti
FIVADMI A Framework For In-Vehicle Anomaly Detecti
FIVADMI A Framework For In-Vehicle Anomaly Detecti
Article
FIVADMI: A Framework for In-Vehicle Anomaly Detection by
Monitoring and Isolation †
Khaled Mahbub 1, *, Antonio Nehme 1 , Mohammad Patwary 2 , Marc Lacoste 3 and Sylvain Allio 3
Abstract: Self-driving vehicles have attracted significant attention in the automotive industry that is
heavily investing to reach the level of reliability needed from these safety critical systems. Security of
in-vehicle communications is mandatory to achieve this goal. Most of the existing research to detect
anomalies for in-vehicle communication does not take into account the low processing power of the
in-vehicle Network and ECUs (Electronic Control Units). Also, these approaches do not consider
system level isolation challenges such as side-channel vulnerabilities, that may arise due to adoption
of new technologies in the automotive domain. This paper introduces and discusses the design of a
framework to detect anomalies in in-vehicle communications, including side channel attacks. The
proposed framework supports real time monitoring of data exchanges among the components of
in-vehicle communication network and ensures the isolation of the components in in-vehicle network
by deploying them in Trusted Execution Environments (TEEs). The framework is designed based on
the AUTOSAR open standard for automotive software architecture and framework. The paper also
discusses the implementation and evaluation of the proposed framework.
Citation: Mahbub, K.; Nehme, A.;
Patwary, M.; Lacoste, M.; Allio, S.
Keywords: AUTOSAR; ECU; isolation; resilience; system security
FIVADMI: A Framework for
In-Vehicle Anomaly Detection by
Monitoring and Isolation. Future
Internet 2024, 16, 288. https://
doi.org/10.3390/fi16080288 1. Introduction
Spoofing, Eavesdropping, DoS, Replay, Injection etc. [4–6,8–10]. Moreover, the adoption of
new technologies in the automotive domain is opening new safety and security challenges.
For example, the advent of new generations of ECUs virtualized as lightweight execution
environments (e.g., VMs, containers) on different types of virtualization platforms (e.g.,
OKL4 microvisor, Proteus hypervisor, ETAS STA-HVR) may face system-level isolation
challenges such as side-channel vulnerabilities.
The development of IVN security countermeasures is hindered by various factors. The
application of sophisticated attack detection mechanisms requires significant amounts of
computing power and therefore cannot be used in vehicles due to the limited ECU process-
ing capabilities [11–13]. Moreover, the implementation of IVN security mechanisms must
ensure that the normal functionalities of the vehicle are not impacted [14]. Improvement
of security and resilience of autonomous vehicles has attracted significant attention in the
literature. A prominent example are approaches inspired by the principle of “security by
design” practiced in the software industry [15–18] and stating that existing secure devel-
opment processes should be adapted and incorporated in the design and development of
autonomous vehicles. These approaches, however, may not be readily acceptable to the
manufacturer as they may require a major redesign of the vehicle or of its components.
Various techniques have been applied to perform real-time IVN detection of threats and
attacks including signature based [2,14], machine learning based [19,20] and frequency
based techniques [7,21,22]. These approaches, however, may not be effective due to the low
processing power of the CAN network and the lack of uniform semantics of CAN messages
across different car makes and models.
This paper is an extended version of our position paper [23] and discusses the design,
implementation and evaluation of a Framework for In-Vehicle Anomaly Detection by
Monitoring and Isolation (FIVADMI). More specifically, FIVADMI supports the detection
of anomalies when ECUs exchange information on a CAN bus based IVN. FIVADMI
adopts a holistic approach that enables detection of anomalies in a compromised vehicle
at the communication level (e.g., Injection and DoS attacks in the CAN bus) as well as
at the application level (e.g., OBD level, such as anomalies in the acceleration or coolant
temperature of a compromised vehicle). For the detection of runtime anomalies, FIVADMI
relies on an external rule engine (CLIPS [24]) to detect novel attacks without any significant
change in the FIVADMI implementation. By analysing the detected anomalies, FIVADMI
produces certificates that reflect the safety and the stability of the current state of the vehicle.
The implementation of FIVADMI is based on the AUTomotive Open System ARchitecture
(AUTOSAR) open standard, version R22-11,for automotive software architecture and
framework. Hence FIVADMI inherently offers scalability, reusability and interoperability
across the product lines from different Original Equipment Manufacturers (OEMs) [25].
FIVADMI also ensures isolation of ECUs on the IVN by deploying each ECU within a
Trusted Execution Environment (TEE), TEE support is being provided by the OpenEnclave
open source project [26].
This paper is structured as follows. Section 2 provides an overview of in-vehicle Elec-
tric/Electronic (E/E) Architecture, in-vehicle threats and existing approaches to mitigate
in-vehicle threats. Section 3 discusses the FIVADMI design principles and architecture.
Section 4 describes the implementation of the main components of FIVADMI. Section 5
presents the experimental results on the evaluation of our implementation. We conclude
in Section 6 discussing the limitations of the current implementation and possible future
improvements.
2. Related Work
In this section, we briefly provide an overview of in-vehicle Electric/Electronic (E/E)
Architecture to highlight different communication patterns in a vehicle. We then focus on
the state of the art of in-vehicle threats. Finally, we present the existing approaches to
mitigate in-vehicle security threats.
Future Internet 2024, 16, 288 3 of 26
Future Internet 2024, 16, x FOR PEER REVIEW 3 of 28
Figure 1.
Figure 1. In‐Vehicle
In-VehicleHierarchical
Hierarchicalwith
withCentral
CentralGateway
GatewayE/EE/E
Architecture [28].[28].
Architecture
Domain‐based E/E
Domain-based E/EArchitecture—As
Architecture—As shown
shownin Figure
in Figure2, in2,this classclass
in this of architecture,
of architecture,
ECUs are grouped
ECUs groupedinto intodifferent
differentdomains
domainsaccording
accordingto similarity
to similarityof functionalities [28]. [28].
of functionalities For For
example, all
example, all the
theECUs
ECUsthatthatrelate
relatetoto
the powertrain
the powertrain control of the
control vehicle
of the can be
vehicle canput
bein one
put in one
domain. While the functionalities of one domain may be for entertainment
domain. While the functionalities of one domain may be for entertainment and comfort and comfort
(e.g., audio,
(e.g., audio, telephony),
telephony),others
othersperform
performsafety‐critical
safety-criticalfunctions
functions (e.g., lane
(e.g., keeping,
lane stabil‐
keeping, stability
control) [1]. All the ECUs in a domain are connected to the same communication bus.
ity control) [1]. All the ECUs in a domain are connected to the same communication bus. The
The activities
activities of each
of each ECU ECUin aindomain
a domain areare controlledbybya asingle
controlled singledomain
domain controller.
controller. Do‐
Domain
main controllers are connected through a common gateway to enable
controllers are connected through a common gateway to enable communication among ECUs communication
among ECUs belonging to different domains [16,27,29].
belonging to different domains [16,27,29].
Single Bus E/E Architecture—As shown in Figure 3, in this class of architecture all the
ECUs are connected to a single bus. This pattern is suitable for a less complex architecture
when a small number of ECUs are used in a vehicle [6,16,27,29].
Future Internet 2024, 16, x FOR PEER REVIEW 4 of 28
Future Internet
Future 2024,
Internet 16,16,
2024, 288x FOR PEER REVIEW 4 of 284 of 26
Single Bus E/E Architecture—As shown in Figure 3, in this class of architecture all
the ECUs
Figure are connected to a single
2. In‐Vehicle bus. This pattern is suitable for a less complex architec‐
Figure 2. In-Vehicle Domain‐based
Domain-basedE/EE/EArchitecture [28].
Architecture [28].
ture when a small number of ECUs are used in a vehicle [6,16,27,29].
Single Bus E/E Architecture—As shown in Figure 3, in this class of architecture all
the ECUs are connected to a single bus. This pattern is suitable for a less complex architec‐
ture when a small number of ECUs are used in a vehicle [6,16,27,29].
Figure 3.
Figure 3. In‐Vehicle
In-Vehicle Single
SingleBus
BusE/E
E/EArchitecture
Architecture[13].
[13].
2.2.
2.2. In-Vehicle Threats
In‐Vehicle Threats
FigureResearch inthe
in
3. In‐Vehicle the areaBus
area
Single ofofautomotive
automotive
E/E safety
safety
Architecture hashas
[13]. demonstrated
demonstrated thatthat modern
modern automobiles
automobiles
are vulnerable
are vulnerable to aa widewide range
range of of security
security attacks and may endanger
endanger thethe safety
safety ofof the
the pas-
2.2. In‐Vehicle
passengers andThreats
drivers. Possible threats can be classified in two broad categories:
sengers and drivers. Possible threats can be classified two broad categories: (i) Physical (i) Phys‐
ical Threats
Threats and and
Research (ii) (ii)
theCyber
inCyber ofThreats
Threats
area [6,15,18,30,31].
[6,15,18,30,31].
automotive safety has demonstrated that modern automobiles
are vulnerable to a wide range of security attacks and may endanger the safety of the
2.2.1.
2.2.1. Physical
andThreats
Physical
passengers Threats
drivers. Possible threats can be classified in two broad categories: (i) Phys‐
ical Threats
In‐vehicle
In-vehicle andspoofing: Threats [6,15,18,30,31].
(ii) Cyber In‐vehicle
spoofing:In-vehicle spoofing
spoofingrefersreferstotoattacks
attackswherewhereananattacker
attacker pretends
pretends to
to have
have another
another identity
identity andand influencesthe
influences thevehicle’s
vehicle’soperation
operation by by providing
providingfalse falseor ormod‐
modified
2.2.1.
ified Physical
data Threats
[2,6,15,31].
data [2,6,15,31].
Denial
In‐vehicle
Denial of
of Service:
spoofing:
Service: InInDenial
In‐vehicle
Denial of of
Service
spoofing
Service(DoS)
refers
(DoS)attacks,
to an attacker
attacks
attacks, an where manages
an
attacker attacker
managesto pretends
compro‐
to compro-
mise a component (e.g., ECU, Sensor etc.) and inhibits
mise a component (e.g., ECU, Sensor etc.) and inhibits the regular operation ofor
to have another identity and influences the vehicle’s the regular
operation by operation
providing of the
false IVN by by
mod‐
the IVN
various
ified datameans such
[2,6,15,31]. as the intentional flooding of the network
various means such as the intentional flooding of the network with messages [1,2,15,18]. with messages [1,2,15,18].
Side‐Channels:
Denial of Service:
Side-Channels: InInside‐channel
Inside-channel attacks,
Denial of Service thethe
(DoS)
attacks, adversary
attacks,
adversary collects
an attackerinformation
collects manages
informationfrom a hid‐a hid-
to compro‐
from
den
mise channel
a componentthat leaks
(e.g., physical
ECU, or logical
Sensor etc.) parameters
and inhibits of regular
the a system and analyses
operation of the the
IVN col‐
by
den channel that leaks physical or logical parameters of a system and analyses the collected
lected
various information
means such toasestablish
the patterns
intentional that canofextract
flooding the privatewith
network information.
messages The hidden
[1,2,15,18].
information to establish patterns that can extract private information. The hidden channel
channel may already In
Side‐Channels: beside‐channel
available inattacks,
hardware the as(such as incollects
adversary a processor’s cache from implemen‐
may already be available in hardware (such in a processor’sinformation
cache implementation), a hid‐ or
tation),
den or is created
channel that leaksusing hardware
physical or and software
logical parameters techniques
of a system[32–35].
and A wide range
analyses the of
col‐
is created using hardware and software techniques [32–35]. A wide range of side-channel
side‐channel attacks have been studied. Some of these, related
lected information to establish patterns that can extract private information. The hidden to the automotive domain,
attacks have been studied. Some of these, related to the automotive domain, are mentioned
are mentioned
channel here. The
may already variation in
be available of CAN
hardwarebus signals
(such as canin be analysed tocache
a processor’s breakimplemen‐
encrypted
here.
and The variationin‐vehicle
authenticated of CAN communication
bus signals canprotocols be analysed (e.g.,topoor
break key encrypted
provisioning andtoauthenti-
ex‐
tation), or is created using hardware and software techniques [32–35]. A wide range of
cated
plore in-vehicle
additional communication
vulnerabilities). protocols
CAN bus (e.g.,
signal poor key
variation provisioning
can be measuredto explore
in additional
different
side‐channel attacks have been studied. Some of these, related to the automotive domain,
vulnerabilities).
ways, for example, CAN accessbus signal variation can using
be measured in different ways, for example,
are mentioned here.a) The variation the wires
of CAN directly
bus signals a high‐precision
can be analysed tooscilloscope,
break encrypted b) a
(a) access
compromised the wires
ECU directly
connected using
to the a high-precision
CAN bus at the oscilloscope,
input and a (b) a compromised
modified CAN controller ECU
and authenticated in‐vehicle communication protocols (e.g., poor key provisioning to ex‐
connected
capable to the
of sampling
plore additional CAN bus at the
the bus at a high
vulnerabilities). input and
CANfrequency a modified
bus signal[34,35].
variationCAN
Even controller
canstronger
be measured capable of
key provisioning sampling
in different
the bus
protocols at a
forhigh
CAN frequency
bus (e.g., [34,35].
Pns‐CAN Even
[36])stronger
can be key
exploited
ways, for example, a) access the wires directly using a high‐precision oscilloscope,provisioning
following protocols
this approachfor CANb) a bus
[34].
(e.g., Pns-CAN
Cache‐based [36])
side‐channel can be
attacksexploited
exploit following
the key‐dependentthis approach
compromised ECU connected to the CAN bus at the input and a modified CAN controller cache [34].
access Cache-based
patterns of side-channel
crypto‐
attacks
capableexploit
graphic the key-dependent
applications.
of sampling Typically,
the bus at athis cache
high accessuses
approach
frequency patterns
a spyof
[34,35]. cryptographic
process
Even keyapplications.
to intentionally
stronger createTypi-
provisioning
cally,
cache this approach
contentions uses
with the a spy process
cryptographic to intentionally
application. The create cache
contentions
protocols for CAN bus (e.g., Pns‐CAN [36]) can be exploited following this approach [34]. contentions
are then analysedwith the
cryptographic application. The contentions are then analysed
Cache‐based side‐channel attacks exploit the key‐dependent cache access patterns of crypto‐ to infer cache access patterns,
which
graphic applications. Typically, this approach uses a spy process to intentionally create by
are in turn associated with likely key values to extract the secret key processed
the cryptographic
cache contentions with application [33,37]. Side
the cryptographic channel attacks
application. are even are
The contentions applicable to Trusted
then analysed
Execution Environment (TEE) [38–41]. For example, Intel SGX (version 1 and 2) suffers
from Page Fault Attacks due to the sharing of memory, managed by the OS, by multiple
Future Internet 2024, 16, 288 5 of 26
enclaves [39,42]. Intel SGX is also vulnerable to interface-based side-channel attacks, which can
be exploited to infer the information of enclave input data, i.e., the observable enclave inter-
face (ECALL/OCALL) invocation patterns (e.g., interface parameter sizes and invocation
delay etc.) determined by different enclave input data [43].
For example, the concept of watermarking may be used to detect in real-time replay attacks
and spoofing attacks in the in-vehicle network [31]. A known private signal is inserted in
the system as watermark. The system output is then compared with the expected output
based on the known dynamics of the system. Once monitoring detects an anomaly, Kalman
Filter functions are applied to determine the ideal state of the attack target. Existing IVN
intrusion detection systems can be categorised as (i) Signature-Based, (ii) Anomaly-Based
and (iii) Hybrid [2,13,14,47,51,52].
Signature-Based Detection: These approaches use information about attacks (sig-
natures) as a pattern that characterize known threats, and compare signatures against
observed events to identify possible attacks [47]. Various mechanisms can be used to derive
attacks signatures, e.g., state transition analysis, expert systems, description scripts, etc.
Anomaly-Based Detection: These approaches recommend continuous monitoring
of the activities of a system, checking against a reference model (e.g., profile of the sys-
tem). Alarms are raised if deviation from the reference model is observed [51]. Various
mechanisms can be applied to derive the reference model of the system, such as:
• Artificial Intelligence (AI) and Machine-Learning (ML) Based: ML methods typically
attempt to learn patterns in the data, and can be supervised or unsupervised [19,20,53].
Various models are possible, e.g., Deep learning [19,20].
• Frequency Based: Given that the majority of ECUs in a vehicle communicate at a
regular interval, this approach utilizes known CAN packet frequency between packet
sequences to detect anomalies [7,21,22].
• Statistical Based: These approaches compare the currently observed statistical profile
(e.g., difference of mean, median, mode of a variable or multiple variables of interest) of
the system against a previously determined statistical profile of the system [51,54,55].
Hybrid-Based Approach: combines several IDS techniques (e.g., signature-based and
anomaly-based detection approaches). Since IVN attacks take different forms, a single
approach is not enough to detect all attack types. Hybrid approaches have the potential to
maximize IVN attack detection [2,13,14,52].
In addition, several approaches enable to detect side channel attacks related to the
automotive domain.
• Side channel attacks at the physical layer can be prevented at the hardware level by
applying various techniques, for example, by varying the voltage level in the bus
during transmission (e.g., by using multiple transceivers for each node connected to
the bus) [34].
• Cache-based attacks can be detected by quantifying contentions in shared resources,
associating these contentions with processes (e.g., a victim process), and issuing a
warning at runtime whenever the contentions reach a “suspicious” level [37].
• Interface-based attacks through TEE (SGX) side channels can be detected by continu-
ously tracking the SGX interface events (ecall/ocall) and determine anomaly [50,56].
Work related to side channel attacks range from discussions and demonstrations of
side channel related vulnerabilities [39,42,57–59], mitigations of these attacks with coun-
termeasures at the hardware and software levels [42,58,60], and detections of suspicious
activities suggesting attempts for side channel attacks [61–63]. While the first category
reveals security flaws that often result in reporting vulnerabilities followed by patches
from the software vendors [59] or other countermeasures found the literature (second
category) [42,60], the third category very often uses hardware and software based coun-
ters or other accessories (oscilloscope, CPMs) that can reflect attempts for a side channel
attack [64,65]. It should be noted that existing approaches for active defence may not
be easily applicable in the automotive domain. For example, signature based detection
and machine learning based detection are not easy for the CAN network due to the low
processing power of the network. Moreover, despite CAN being an open protocol, variation
in the specification of transmission of CAN frames in different makes and model hinders to
develop a uniform solution [14,66].
Future Internet 2024, 16, 288 7 of 26
Figure
Figure4.4.Reference
ReferenceArchitecture
Architectureof of
FIVADMI.
FIVADMI.
Side
SideChannel
ChannelAttack
AttackMonitor
Monitor (SCAM):
(SCAM): TEEs remain
TEEs vulnerable
remain to side
vulnerable tochannel at‐
side channel at-
tacks [42,58]. This component focuses on the runtime detection of side channel
tacks [42,58]. This component focuses on the runtime detection of side channel attacks (e.g., attacks
(e.g.,
SGX SGX interface
interface basedbased attacks)
attacks) that that are relevant
are relevant in a in a vehicular
vehicular context.
context. Through
Through the the
monitor-
monitoring of Hardware Performance Counters, this component
ing of Hardware Performance Counters, this component flags suspicions rowhammer flags suspicions row‐ and
hammer
cache and and cacheside
covert and channel
covert side channel attacks.
attacks.
Monitoring and Certification Manager
Monitoring and Certification Manager (MCM):
(MCM): ThisThis
component
component performs real‐time
performs real-time
monitoring of security properties related to IVN components (e.g., ECUs)
monitoring of security properties related to IVN components (e.g., ECUs) to detect to detect secu‐
security
rity threats. It applies hybrid techniques (including frequency‐based and
threats. It applies hybrid techniques (including frequency-based and statistical-based statistical‐based
approaches, and deep packet inspection) to detect threats. Based on the validity of the
approaches, and deep packet inspection) to detect threats. Based on the validity of the
security properties, this component also maintains the certificates that certify the valid
security properties, this component also maintains the certificates that certify the valid state
state of ECUs.
of ECUs.
To implement the architecture, FIVADMI adopts the AUTomotive Open System AR‐
To implement the architecture, FIVADMI adopts the AUTomotive Open System AR-
chitecture (AUTOSAR) open standard. The AUTOSAR consortium was formed by major
chitecture (AUTOSAR) open standard. The AUTOSAR consortium was formed by major
automotive OEMs like BMW, Ford, and Daimler Chrysler to standardize the automotive
automotive OEMs like BMW, Ford, and Daimler Chrysler to standardize the automotive
software architecture and framework, thereby facilitating scalability, reusability and in-
teroperability across product lines from different OEMs [25]. By adopting AUTOSAR in
the implementation, FIVADMI inherits the corresponding benefits of that standard (e.g.,
scalability, reusability and interoperability).
In AUTOSAR, ECU software is abstracted as a layered architecture built on top of
the underlying micro-controller hardware [72]. As shown in Figure 5, this architecture is
composed of three layers: namely Basic Software (BSW), Runtime Environment (RTE), and
Application Layer.
teroperability across product lines from different OEMs [25]. By adopting AUTOSAR in
teroperability across product lines from different OEMs [25]. By adopting AUTOSAR in
the implementation, FIVADMI inherits the corresponding benefits of that standard (e.g.,
the implementation, FIVADMI inherits the corresponding benefits of that standard (e.g.,
scalability, reusability and interoperability).
scalability, reusability and interoperability).
In AUTOSAR, ECU software is abstracted as a layered architecture built on top of the
In AUTOSAR, ECU software is abstracted as a layered architecture built on top of the
Future Internet 2024, 16, 288
underlying micro‐controller hardware [72]. As shown in Figure 5, this architecture is com‐
underlying micro‐controller hardware [72]. As shown in Figure 5, this architecture is com‐9 of 26
posed of three layers: namely Basic Software (BSW), Runtime Environment (RTE), and Ap‐
posed of three layers: namely Basic Software (BSW), Runtime Environment (RTE), and Ap‐
plication Layer.
plication Layer.
Figure
Figure 5. Overviewof
5. Overview ofSoftware
SoftwareLayers
LayersHigh‐Level
High-Level View
View [72].
[72].
Figure 5. Overview of Software Layers High‐Level View [72].
Basic Software Layer
Basic Software Layer(BSW): thislayer
(BSW):this layerprovides
provides core
core system
system functionalities.
functionalities. As As
Basic Software Layer (BSW): this layer (i)
provides core system functionalities. As
shown
shown ininFigure
Figure6, 6,
this layer
this has has
layer 3 sub‐layers,Micro-controller
3 sub-layers, Abstraction
(i) Micro‐controller Layer (MCAL)—
Abstraction Layer
shown
contains in Figure 6,
internal driversthis layer
modules has 3 sub‐layers, (i) Micro‐controller Abstraction Layer
(MCAL)—contains internal drivers that access
modules theaccess
that micro-controller and internal
the micro‐controller peripherals
and internal
(MCAL)—contains
directly, internal drivers
ECU Abstraction
(ii) directly, Layermodules that access the micro‐controller
(ECUAL)—interfaces the drivers and
the internal
peripherals (ii) ECU Abstraction Layer (ECUAL)—interfaces the of
drivers MCAL
of the and
peripherals directly, (ii) ECU Abstraction Layer (ECUAL)—interfaces the drivers of the
offers
MCALanand APIoffers
for accessing
an API for peripherals
accessing and externaland
peripherals devices, thusdevices,
external makingthushigher software
making
MCAL and offers an API for accessing peripherals and external devices, thus making
layers
higherindependent
software layers of the hardwareoflayout,
independent Services
and (iii)layout,
the hardware Layer
and (iii) (SL)—provides top level
Services Layer (SL)—
higher software layers independent of the hardware layout, and (iii) Services Layer (SL)—
services
provides(e.g., operating
top level servicessystem,
(e.g., communication,
operating system,management,
communication, andmanagement,
memory services)
and to
provides top level services (e.g., operating system, communication, management, and
memory services) to application
application software components. software components.
memory services) to application software components.
Figure
Figure 7. Mapping 7. Mapping
of FIVADMI andofAUTOSAR
FIVADMI and AUTOSAR Architecture.
Architecture.
Future Internet 2024, 16, 288 security properties and behavioural properties are denoted as security rules and as OB
11 of 26
rules respectively.
Figure 9.
Figure 9. Overview
OverviewofofCertification
CertificationModel.
Model.
3.5. Side
The Channel Attack of
main elements Monitor
the Certificate structure are the following.
CertificateID:
Side Represents
channel attacks are the unique “noisy”
generally identifier[73],
of a generated certificate
meaning that duringa mon‐
they leave trace that
itoring.
enables flagging suspicious activities. Cache based side channel attacks, including flush
MonitoringResultAggregator:
and reload, Contains
prime and probe and evict the aggregation
and time of be
are proven to monitoring
effective results pro‐ that
approaches
jeopardise the confidentiality of execution in an enclave [42]. The majority of sideele‐
duced by monitoring different components (e.g., ECUs, CAN bus) of the IVN. This channel
ment contains the following sub‐elements:
detection approaches use Hardware Performance Counters (HPCs) which are special regis-
used
ters AggregationTime:
for performanceRepresents
monitoring the time
[74]. of
HPCaggregation.
based tools reveal run time based software
Duration: Specifies time span between
and hardware events including CPU cycles and cachemonitoring results considered
hits and missesfor aggregation
[61,63]. Cache Hits
(setup by external config file).
and Misses are among the top key indicators of side channel related activities [61–63], and
ToMList:
different Contains
patterns a list of TargetOfMonitoring
of abnormalities in these indicators considered for aggregation.
reflects different attack strategies [62].
Many of the detection approaches in the literature use L1, L2 be
AggregationRule: Defines how monitoring results should andaggregated. For in‐ to
L3 Cache attributes
stance, results with numerical values can be aggregated by applying statistical meth‐
detect Cache based side channel attacks [61,63,75]. Machine learning based approach could
ods (setup by an external configuration file).
be an option for similar classifications due to the capability of these approaches to recognise
AggregationResult: Stores the aggregation result.
complex patterns from different inputs [61]. Simple rules can also be used for less complex
TargetOfMonitoring
classifications. In FIVADMI (ToM): Represents
we adopt a component
rule-based (e.g.,asECU,
approach CAN bus)
it conforms thatthe
with is low
monitored to identify security threats associated with it. This element has the following
sub‐elements:
ToMType: Type of component (e.g., ECU, CAN bus) to be monitored.
ToMID: Unique IVN component identifier.
MonitoringRule: Security property related to this component that is monitored.
MonitoringEvidenceAggregator: Contains aggregation of results by monitoring the
ware and hardware events including CPU cycles and cache hits and misses [61,63]. Cache
Hits and Misses are among the top key indicators of side channel related activities [61–
63], and different patterns of abnormalities in these indicators reflects different attack
strategies [62]. Many of the detection approaches in the literature use L1, L2 and L3 Cache
Future Internet 2024, 16, 288 attributes to detect Cache based side channel attacks [61,63,75]. Machine learning based 13 of 26
approach could be an option for similar classifications due to the capability of these ap‐
proaches to recognise complex patterns from different inputs [61]. Simple rules can also
be used for less complex classifications. In FIVADMI we adopt rule‐based approach as it
processing power of in-vehicle Network and ECUs. Figure 10 gives an overarching view
conforms with the low processing power of in‐vehicle Network and ECUs. Figure 10 gives
of the design that the Side Channel Attack Monitor in FIVADMI adheres to; through the
an overarching view of the design that the Side Channel Attack Monitor in FIVADMI ad‐
readings on the hardware performance counters, the classification tier uses classification
heres to; through the readings on the hardware performance counters, the classification
rules to flag suspicions of side channel activities.
tier uses classification rules to flag suspicions of side channel activities.
Figure 10.
Figure 10. Overview
Overviewof
ofHPC
HPCBased
BasedDetection
DetectionApproaches
Approachesforfor
Side Channel
Side Attacks.
Channel Attacks.
4. Implementation
4. Implementation of
ofFIVADMI
FIVADMI
This section
This section presents
presents the
the implementation
implementation details
details of
of FIVADMI.
FIVADMI. TheThe first
first part
part highlights
high‐
lights
the the specification
specification of ourof our Trusted
Trusted Execution
Execution Environment.
Environment. This This is followed
is followed withwith a
a detailed
detailed explanation of the technology and algorithms used for our monitoring
explanation of the technology and algorithms used for our monitoring scheme. scheme.
4.1. Trusted
4.1. Trusted Execution
Execution Environment
Environment(TEE)
(TEE)
Open Enclave
Open Enclave(OE)
(OE)is is open
anan source
open project
source to develop
project applications
to develop in a trusted
applications in aexe‐
trusted
cution environment. OE enables to build trusted programmes called enclave applications
execution environment. OE enables to build trusted programmes called enclave applications
that interact with untrusted applications, known as host applications [26]. Through SGX-
enabled operations and support of an Intel CPU with SGX capabilities, enclaves ensure
the confidentiality of execution and protection of data [26]. Figure 11 gives an overview
of the OE architecture. To execute the code of an enclave, a host application, known
to the enclave, calls the interface of the functions in the enclave; these calls are Enclave
Calls (ECalls). Enclaves can also call untrusted functions and services provided by the
operating system through an interface of the host application; these calls are Outside Calls
(OCalls) [76]. ECalls and OCalls are listed as trusted and untrusted functions respectively
in a configuration file before the enclave is built; Edger8r, a tool part of the Intel SGX
SDK, generates the interfaces specified between the host and the enclave using an Enclave
Definition Language (EDL). Interactions are restricted to the specified interfaces throughout
the lifecycle of the enclave [77].
In FIVADMI, an enclave is part of the application layer of the ECU. It hosts OBD
messages essential to define its functionality. In our prototype, the data hosted within
the enclave includes data recorded from real vehicles and used for testing as well as data
generated at runtime to simulate real-life behaviour of in-vehicle traffic. While the dynamic
data is generated at runtime, the static data is stored in encrypted form. Decryption occurs
through a call from the host bound to the enclave.
(ECalls). Enclaves can also call untrusted functions and services provided by the operating
system through an interface of the host application; these calls are Outside Calls (OCalls)
[76]. ECalls and OCalls are listed as trusted and untrusted functions respectively in a con‐
figuration file before the enclave is built; Edger8r, a tool part of the Intel SGX SDK, gener‐
ates the interfaces specified between the host and the enclave using an Enclave Definition
Future Internet 2024, 16, 288 14 of 26
Language (EDL). Interactions are restricted to the specified interfaces throughout the
lifecycle of the enclave [77].
Figure 11.
Figure 11. Overview
Overviewof
ofthe
theOpen
OpenEnclave
EnclaveArchitecture.
Architecture.
Figure 12.
Figure TheAlgorithm
12.The Algorithmforfor Cache
Cache Side
Side Channel
Channel Detection.
Detection.
Lookingatatthe
Looking thefigure,
figure,the
the algorithm
algorithm relies
relies on threshold
on threshold values
values of hardware
of hardware perfor-
perfor‐
mance counters
mance countersthat
thatgive
giveearly
earlyindications
indicationsofofsidesidechannel
channel attacks.
attacks. TheThe phase
phase of identifying
of identify‐
these
ing thresholds
these thresholdsenables thethe
enables algorithm
algorithmto to
adapt
adapt to to
different
different operating
operatingsystems
systemsforforthe
theECUs,
leadingleading
ECUs, to increasing the applicability
to increasing of theofproposed
the applicability the proposed approach to autonomous
approach to autonomous vehicles
vehicles using
using chips chips
from from a of
a variety variety
OEM.ofThis
OEM. This algorithm
algorithm is effective
is effective and lightweight,
and lightweight, enabling its
enabling
deployment its deployment
on ECUs that onhave
ECUs thatlimited
very have very limited computational
computational resources.
resources. The Theof the
simplicity
simplicity
rule-basedofapproach
the rule‐based
makesapproach
it suitablemakes it suitable forECUs
for state-of-the-art state‐of‐the‐art
where theECUs
on-chipwhere
memory
the on‐chip memory is limited to 5 MB as indicated
is limited to 5 MB as indicated by a list compiled by NXP [82]. by a list compiled by NXP [82].
Figure
Figure13.
13.EC
ECRules—Injection
Rules—InjectionAttack
AttackDetection.
Detection.
Rule
RuleIR2 IR1issignifies
used to detect IVN injection
the creation of theattacks. FIVADMI appliesdMsg,
fluent CAN_Data(dID, a frequency
dTS) withbasedempty
analysis
values atapproach. By design,
the beginning most
of the CAN messages
monitoring are This
process. transmitted
fluent at regular
will frequencies.
be used to store CAN
These
frame frequencies
source ID, the are message
nearly constant,
contained evenin during
the CAN transitions
frame and between
the timevehicle
stamp driving
of receipt.
modes [2,7,22].
Rule IR3 isFIVADMI
used tochecks
update thethe
difference of arrival times
fluent CAN_Data. between
Each time atwoCAN successive
frame is re-
CAN
ceivedframes fromby
(signified thethe
same source. Happens(CAN_Frame(cID,
predicate If the difference is less thancMsg),
a predefined threshold,
cTS)), the values itof dID,
raises
dMsg and dTS in the fluent CAN_Data are updated which is signified by thehas
an alarm as an injection attack might have occurred. The CAN frame that ar‐
predicates
rived
Initiates(CAN_Frame(cID, cMsg), equalTo(dID, cID),cTS), Initiates(CAN_Frame(cID,IDcMsg),
(signified by the predicate Happens (CAN Frame(cID, cMsg), cTS)) contains the
and time stampcMsg),
equalTo(dMsg, of thecTS)
current
andCAN frame. The fluent CAN_Data
Initiates(CAN_Frame(cID, (signified by cTS),
cMsg), equalTo(dTS, HoldsATcTS).
(CANRule
DataIR2 (dID, dMsg, dTS), cTS)) contains the ID and time stamp of the
is used to detect IVN injection attacks. FIVADMI applies a frequency previous frame.based
The difference of arrival time stamps of two successive CAN frames from the same source
analysis approach. By design, most CAN messages are transmitted at regular frequencies.
is checked. The rule checks that both CAN frames have valid data and different time
These frequencies are nearly constant, even during transitions between vehicle driving
stamps. The rule also checks that both frames are from the same source and that the dif‐
modes [2,7,22]. FIVADMI checks the difference of arrival times between two successive
ference between time stamps is less than a threshold (e.g., 50). If these conditions are vio‐
CAN frames from the same source. If the difference is less than a predefined threshold,
lated, then an alert is raised.
it raises an alarm as an injection attack might have occurred. The CAN frame that has
arrived
4.3.2. (signified
Rules PropertiesHappens (CAN Frame(cID, cMsg), cTS)) contains the ID
by the predicate
for Behavioural
and time stamp of the current CAN frame. The fluent CAN_Data (signified by HoldsAT
Figure 14 shows rules expressed in EC, to detect anomalies in vehicle speed. How‐
(CAN Data (dID, dMsg, dTS), cTS)) contains the ID and time stamp of the previous frame.
ever, it should be noted that similar rules can be specified to detect anomalies in coolant
The difference of arrival time stamps of two successive CAN frames from the same source is
temperature, ambient temperature, and intake air temperature.
checked. The rule checks that both CAN frames have valid data and different time stamps.
The rule also checks that both frames are from the same source and that the difference
CAN frames from the same source. If the difference is less than a predefined threshold, it
raises an alarm as an injection attack might have occurred. The CAN frame that has ar‐
rived (signified by the predicate Happens (CAN Frame(cID, cMsg), cTS)) contains the ID
and time stamp of the current CAN frame. The fluent CAN_Data (signified by HoldsAT
(CAN Data (dID, dMsg, dTS), cTS)) contains the ID and time stamp of the previous frame.
Future Internet 2024, 16, 288 16 of 26
The difference of arrival time stamps of two successive CAN frames from the same source
is checked. The rule checks that both CAN frames have valid data and different time
stamps. The rule also checks that both frames are from the same source and that the dif‐
between
ference time stamps
between is less is
time stamps than
lessathan
threshold (e.g., 50).
a threshold (e.g.,If50).
these conditions
If these are violated,
conditions are vio‐ then
an alert
lated, is an
then raised.
alert is raised.
4.3.2.Rules
4.3.2. Rulesfor
forBehavioural
Behavioural Properties
Properties
Figure1414shows
Figure showsrules
rules expressed
expressed in EC,
in EC, to detect
to detect anomalies
anomalies in vehicle
in vehicle speed.
speed. How‐ How-
ever, it should be noted that similar rules can be specified to detect anomalies in coolant
ever, it should be noted that similar rules can be specified to detect anomalies in coolant
temperature,ambient
temperature, ambienttemperature,
temperature, and
and intake
intake air air temperature.
temperature.
Figure14.
Figure ECRules—Vehicle
14.EC Rules—Vehicle Speed
Speed Anomaly
Anomaly Detection.
Detection.
RuleSR1
Rule SR1signifies
signifiesthe
the creation
creation of of
thethe fluent
fluent OBD_Data(dID,
OBD_Data(dID, dSpd,dSpd,
dTS) dTS)
with with
emptyempty
values at the beginning of the monitoring process. This fluent will be used to store store
values at the beginning of the monitoring process. This fluent will be used to CAN CAN
frame source ID,
frame source ID, the vehicle speed reading
reading contained in the CAN frame and the timestamp
contained in the CAN frame and the time
of receipt.
stamp of receipt.
Rule SR4 is used to update the fluent OBD_Data. Each time a CAN frame is re-
ceived (signified by the predicate Happens(CAN Frame(cID, cSpd), cTS)), the values of
dID, dSpdg and dTS in the fluent OBD_Data are updated which is signified by the predi-
cates Initiates(CAN Frame(cID, cSpd), equalTo(dID, cID),cTS), Initiates(CAN Frame(cID, cSpd),
equalTo(dSpd, cSpd), cTS) and Initiates(CAN Frame(cID, cSpd), equalTo(dTS, cTS), cTS).
Rules SR2 and SR3 are used to detect anomalies in acceleration and deceleration respec-
tively. This is done by calculating acceleration (or deceleration) of the vehicle as follows:
(v2 − v1)
Acc = (1)
(t2 − t1)
where v2 and v1 are vehicle speeds at time points t2 and t1 respectively. If the calculated
acceleration (or deceleration) is greater (or lower) than an acceptable threshold, an alarm
is raised.
According to the rule SR2, the CAN frame that has arrived (signified by the predicate
Happens (CAN_Frame (cID, cSpd), cTS)) contains the speed value and time stamp of the
current CAN frame. The fluent OBD_Data (signified by HoldsAT (OBD_Data(dID, dSpd,
dTS), cTS)) contains the speed value and time stamp of the previous frame. The rule checks
that both current CAN_Frame and the previous CAN_Frame have valid speed value and
different time stamps; the acceleration is computed. An alert is raised if the acceleration is
above a threshold.
Rule SR3 checks the anomaly in deceleration, which can be explained in a similar way
as the Rule SR2.
CLIPS uses an improved form of the well-known Rete algorithm [85] to match rules against
facts. Rules written in CLIPS can be considered as data-driven programs, the facts being
the data that trigger execution of rules via the inference engine. The inference engine then
decides which rules should be executed and when.
EC rules described in Sections 4.3.1 and 4.3.2 are easily transformed into corresponding
CLIPS specification. More specifically, fluents in EC are transformed into facts (e.g., the
fluent CAN_Data(dID, dMsg, dTS) is transformed into a fact called CAN_Data to contain id,
message, and timestamp. Similarly, the fluent OBD_Data(dID, dSpd, dTS) is transformed
into a fact called OBD_Data and EC rules are transformed into CLIPS rules. At boot-time,
instances of these rules are created in CLIPS. At runtime, the Monitoring and Certification
Manager receives CAN frames from the IVN, retrieves relevant data from each frame, and
stores these data into facts in CLIPS. Security rules and OBD rules are then run against
these facts.
Future Internet 2024, 16, x FOR PEER REVIEW
Figure 15 shows the algorithm that drives the monitoring process in FIVADMI. 18 of 28 The
monitoring algorithm is divided into three methods.
Figure 15.
Figure 15. Monitoring
MonitoringAlgorithm.
Algorithm.
Method monitoring().
monitoring().ThisThismethod
method starts
starts thethe monitoring
monitoring process.
process. FactsFacts are in
are created
created(lines
CLIPS in CLIPS
1–2). (lines 1–2). The corresponding
The corresponding OBD rules are OBD alsorules are (line
created also created (line in
3). The loop 3).line 4
The loop
drives thein line 4 drives
monitoring the monitoring
process: when a CAN process:
Framewhen a CAN
arrives, Frame arrives,
the security rules andthethe
se‐ OBD
curityare
rules rules and the using
monitored, OBD methods
rules are security_rules_check()
monitored, using methods security_rules_check()
and obd_rules_check() respectively.
and obd_rules_check() respectively.
Method security_rules_check(). Upon receipt of a CAN frame, the ID, message, and
time Method
stamp ofsecurity_rules_check().
the frame are extracted.Upon
Factreceipt
CAN Dataof a CAN frame,
in CLIPS the ID, message,
is updated andThen,
(lines 1–2).
time stamp of the frame are extracted. Fact CAN Data in CLIPS is updated
security rules and corresponding facts are created for each type of threat to be detected(lines 1–2).
Then, security rules and corresponding facts are created for each type of threat to
(lines 3–5). Fact and rule names are made unique by appending the CAN ID and time
be detected (lines 3–5). Fact and rule names are made unique by appending the
stamp. This enables checking security rules for two successive CAN frames coming from
CAN ID and time stamp. This enables checking security rules for two successive CAN
frames coming from the same source. CLIPS executes the security rules and collects
the execution results (line 6–7). According to the dynamics of CLIPS rule engine, if a
security rule triggers a result (e.g., alert or absence of alert) at any time point,
that rule will continue to produce that result for the subsequent time points,
which will be considered as a false positive or false negative. Therefore, security rules
Future Internet 2024, 16, 288 18 of 26
the same source. CLIPS executes the security rules and collects the execution results (line
6–7). According to the dynamics of CLIPS rule engine, if a security rule triggers a result
(e.g., alert or absence of alert) at any time point, that rule will continue to produce that
result for the subsequent time points, which will be considered as a false positive or false
negative. Therefore, security rules that have produced a result are removed from CLIPS.
The result is saved for further analysis during the production of certificates. (line 9).
Method obd_rules_check(). Upon receipt of a CAN frame, the OBD related data
Future Internet 2024, 16, x FOR PEER (e.g.,
REVIEW speed, coolant temperature, intake air temperature and ambient temperature) 19 of 28 is
extracted and checked. Fact OBD_Data is updated accordingly using that data, executing
the corresponding rule. The end of the method is similar to the algorithm for checking the
security rules. results are aggregated over a period of time and used to produce
Monitoring
Monitoring results
certificate, following theare aggregated
certificate over presented
model a period ofintime and used
Section 3.4. to
In produce
FIVADMI, certificate,
a
JSON data structure is used to construct the elements of the certificate. JSONstructure
following the certificate model presented in Section 3.4. In FIVADMI, a JSON data is
is used for
chosen to construct the elements
its lightweight processingof and
the certificate.
low memory JSON is chosen
footprint for itstolightweight
compared older
processing and low
data structures. Usingmemory
JSON, afootprint compared
certificate to older
gets updated data
at the endstructures. Using JSON, a
of each monitoring
certificate
cycle, gets updated
spanning at the end ofperiod
over a configurable each monitoring cycle,
of time, during thespanning overprocess
certification a configurable
of
period of time,
a vehicle. Figureduring the certification
16 shows process ofwith
a skeleton structure a vehicle. Figure 16
the different shows aofskeleton
elements a
structure with the different elements of a certificate.
certificate.
5. Results
5. Results
We carried
We carriedoutouta set
a of
setexperiments to evaluate
of experiments the implementation
to evaluate of FIVADMI.ofIn this
the implementation
set of evaluation
FIVADMI. experiments,
In this an environment
set of evaluation experiments, is set
anup that includes
environment is three
set uprunning
that in‐ECUs
connected
cludes viarunning
three the sameECUsCAN connected
bus: one ECU viaisthe
programmed
same CAN tobus:
sendone
and ECU
another to receive
is pro‐
grammed
CAN frames. to send
The and
thirdanother to receive
ECU performs theCAN frames.and
monitoring Thecertification
third ECU functions.
performs This
the monitoring
setup is used forand certification
the evaluation of functions. This setup
anomaly detection, theisresilience
used for the evaluation
of our of
implementation
anomaly
of FIVADMI,detection,
and thetheSide
resilience
Channelof our implementation
Monitor in our framework.of FIVADMI, andof
The rest the Side
this section
Channel Monitor in our framework. The rest of this section discusses
discusses the evaluation of our implementation of FIVADMI: Section 5.1 demonstrates the the evalua‐
tion of our
anomaly implementation
detection functionalityof FIVADMI: Sectionand
of our framework 5.1shows
demonstrates the violations
the detected anomaly with
detection functionality of our framework and shows the detected
sudden accelerations; Section 5.2 tests the resilience of our implementation through violations with
the use
sudden accelerations; Section 5.2 tests the resilience of our implementation
of a fuzzer for the generation of CAN packets; Section 5.3 covers the evaluation of our Side through
the use ofMonitor
Channel a fuzzerand
for discusses
the generation of CAN
the results thatpackets; Section 5.3 covers the evalua‐
we obtained.
tion of our Side Channel Monitor and discusses the results that we obtained.
Figure 17.
Figure 17. Violation
ViolationRates
RatesininSpeed
Speedand
andIAT from
IAT different
from vehicles.
different vehicles.
The high
The high observed
observedanomaly
anomalyratio in in
ratio thethe
graph results
graph from
results the the
from configuration of a of a
configuration
threshold value in the monitoring rules. For the purpose of this evaluation,
threshold value in the monitoring rules. For the purpose of this evaluation, the value the value of of
the threshold was chosen to reflect coloured labels implemented as part
the threshold was chosen to reflect coloured labels implemented as part of the FIVADMIof the FIVADMI
framework. In the example above, the Certification Manager is configured to assign a
framework. In the example above, the Certification Manager is configured to assign a
Green label when the anomaly rate for a ToM is less than 25%, Red when greater than
Green label when the anomaly rate for a ToM is less than 25%, Red when greater than 75%,
75%, and Amber otherwise.
and Amber otherwise.
To maximise the adoption of our framework, the monitoring and certification rules
To maximise the adoption of our framework, the monitoring and certification rules are
are configurable to adapt to the specification of different vehicles in terms of frequency of
configurable to adapt to the specification of different vehicles in terms of frequency of OBD
OBD messages from different ECUs, or acceptable speed shifts within a particular
messages from different ECUs, or acceptable speed shifts within a particular timeframe,
timeframe, among other specifications. Similarly to the case described above, real data
among
derived from specifications.
other different driversSimilarly
using theto the vehicle
same case described above,
reflect similar real data
results derived
for speed andfrom
different drivers using the same vehicle reflect similar results for speed and
temperature rules. Figure 18 shows the violation rate alerts for speed rules for different temperature
rules. Figure
drivers. 18 showsdifference
The observed the violation rate
in the alerts for
violation speed
rates rules
seems duefor
todifferent drivers.
the drivers’ beh‐ The
observed difference in the violation rates seems due to the drivers’
viaours: in this case, Driver 3 achieved the most steady driving pattern. behviaours: in this case,
Driver 3 achieved the most steady driving pattern.
Future Internet
Future 2024,
Internet 16,16,
2024, 288x FOR PEER REVIEW 20 of 26
21 of 28
Figure 18.
Figure 18. Violation
Violation Rates
Ratesfor
forSpeed
Speedfor
fordifferent
differentdrivers with
drivers thethe
with same vehicle.
same vehicle.
5.2. Evaluation
5.2. Evaluation of
of the
theResilience
ResilienceofofFIVADMI
FIVADMI
To test
To test the resilience
resilience ofofthe theframework,
framework, a fuzzer
a fuzzer [87][87]
waswasused to generate
used to generateCANCAN
frames. In order to demonstrate the applicability of our framework
frames. In order to demonstrate the applicability of our framework in realistic settings, in realistic settings, we we
configured the fuzzer to produce CAN frames of up to 128 bits
configured the fuzzer to produce CAN frames of up to 128 bits per frame and 100 frames per frame and 100 frames
persecond.
per second. This
This conforms
conformswith withthethesize
sizeofofa real CAN
a real CAN frame
frame andand
CAN CANbit rates [88].[88].
bit rates
FIVADMI was run over a period of two days with CAN frames generated byby
FIVADMI was run over a period of two days with CAN frames generated thethe
fuzzer
fuzzer to verify that these frames do not trigger any malfunction that
to verify that these frames do not trigger any malfunction that will disrupt the functionality will disrupt the
functionality
of the tool [6].ofThethe generated
tool [6]. Thecertificate
generatedincludes
certificatethe includes
followingthe following ToMs: ‘Injec‐
ToMs: ‘Injection’, ‘Speed’,
tion’, ‘Speed’, ‘Intake Air Temperature’, and ‘Coolant’. This proves the diversity of CAN
‘Intake Air Temperature’, and ‘Coolant’. This proves the diversity of CAN frames generated
frames generated by the fuzzer. The Targets of Monitoring and the Aggregation results
by the fuzzer. The Targets of Monitoring and the Aggregation results are updated in the
are updated in the certificate at the end of each monitoring cycle (every 1 min) to include
certificate at the end of each monitoring cycle (every 1 min) to include the results of the
the results of the inspection of newly received CAN frames with the monitoring rules.
inspection of newly received CAN frames with the monitoring rules. Figure 19 shows the
Figure 19 shows the certificate generated by FIVADMI after a two‐day evaluation for
certificate generated by FIVADMI after a two-day evaluation for CAN frames generated
CAN frames generated using the fuzzer, reflecting the resilience of our implementation.
using the fuzzer, reflecting
The Aggregation rules in the theparent
resilience
elementof our implementation.
of the JSON structureThe Aggregation
in the rules in
certificate de‐
the parent element of the JSON structure in the certificate describe,
scribe, in natural language, the rule followed to label the certificate with a colour. In the in natural language,
the rule followed
certificate below, 7to labelare
ToMs thecovered.
certificate
Four with
ToMs a colour. In the
reflect less thancertificate below, 7(ToM
25% of violations ToMs are
covered.
Injection Four
for IDsToMs801, reflect
101, 502 less
andthan 25%ToM).
Speed of violations
Two ToM (ToM
haveInjection
more than for75%
IDs of
801, 101, 502
viola‐
and
tionsSpeed
(ToM ToM).
ID 702 Two ToM have
and Coolant more
ToM). Thethan 75% rate
violation of violations
of the IAT (ToM
ToM isID 702The
66%. andmon‐Coolant
ToM).
itoringThe
ECU violation rate of to
is configured theassign
IAT ToMequal is weight
66%. The to monitoring ECU is configured
the ToM to determine the colour to of
assign
equal weight to
the certificate; the that
given ToM4/7 to of
determine
the ToMsthe are colour
Green, of 1/7the certificate;
is Amber given
and 2/7 that aggre‐
are red, 4/7 of the
ToMs
gationare Green,
result 1/7 is
defaults toAmber
Amber and as the2/7 are red,
colour codeaggregation result
of the certificate as defaults to Amber as the
per our Aggregation
colour code of the
Rule (reflected in thecertificate as per
certificate). We our
shouldAggregation
note that the Rule (reflected Rule
Aggregation in theiscertificate).
configura‐ We
should
ble whichnoteenables
that the Aggregation
assigning moreRule is configurable
weight to a particular which
Targetenables assigningthat
of Monitoring morehasweight
a
more critical functionality than the others.
to a particular Target of Monitoring that has a more critical functionality than the others.
Future Internet 2024, 16, 288
Future Internet 2024, 16, x FOR PEER REVIEW 22 of21
28of 26
Figure 19. Certificate Produced by FIVADMI for Fuzzer‐Generated CAN Frames. (Shortened).
Figure 19. Certificate Produced by FIVADMI for Fuzzer-Generated CAN Frames. (Shortened).
5.3.Evaluation
5.3. Evaluationofofthe
theSide
Side Channel
Channel Monitor
Monitor
ToTovalidate
validateand
andevaluate
evaluate the
the side
side channel
channelattack
attackmonitoring
monitoringof of
FIVADMI, we we
FIVADMI, tested
tested
the implementation on 10 simulations with a side channel attack targeting the running
the implementation on 10 simulations with a side channel attack targeting the running
ECU and 10 simulations when the ECU runs without a side channel attack. Once again to
ECU and 10 simulations when the ECU runs without a side channel attack. Once again
to demonstrate the applicability of FIVADMI in realistic settings, we created ECU based
on an AUTOSAR implementation [89], that emulates ARM Versatile boards [90] following
Future Internet 2024, 16, x FOR PEER REVIEW 23 of 28
Figure 20.
Figure 20. Classification
ClassificationPerformed
PerformedThrough
ThroughSCAM.
SCAM.
Our implementation
Our implementation has hasa aperformance
performance advantage
advantageover HexPADS
over HexPADS [78],[78],
the Linux
the Linux
based implementation that SCAM is based on. The performance overhead
based implementation that SCAM is based on. The performance overhead derived derived fromfrom
HexPADS’ active defense is not applicable to SCAM. Also, while Hex‐PADS’
HexPADS’ active defense is not applicable to SCAM. Also, while Hex-PADS’ implementa- implemen‐
tation
tion uses
uses a buffer
a buffer to store
to store thethe
HPC HPC reading
reading [78],
[78], Windows
Windows Performance
Performance Monitor
Monitor in
in SCAM
SCAM uses is configured to update a parseable data structure on the disc to minimize
uses is configured to update a parseable data structure on the disc to minimize the memory the
memory usage of the approach. Both SCAM and HexPADS use a statistical classification
usage of the approach. Both SCAM and HexPADS use a statistical classification approach
approach for side channel attacks; both implementations follow a similar process for find‐
for side channel attacks; both implementations follow a similar process for finding the
ing the thresholds used by the classification algorithm.
thresholds used by the classification algorithm.
6. Conclusions and Outlook
6. Conclusions and Outlook
This paper discusses the design, implementation and experimental evaluation of a
This paper discusses the design, implementation and experimental evaluation of a
framework to enhance in‐vehicle isolation and resilience focusing on anomalies in the
framework to enhance in-vehicle isolation and resilience focusing on anomalies in the
communication layer (e.g., injection attack) and application layer (e.g., anomalies in vehi‐
communication layer (e.g., injection attack) and application layer (e.g., anomalies in vehicle
cle speed and coolant temperature). The framework follows an active defence strategy to
speed and coolant temperature). The framework follows an active defence strategy to detect
detect the anomalies in real time. The design and implementation of the framework is
the anomalies
based on AUTOSAR in realopen
time.standard
The design and implementation
to enable of theand
scalability, reusability framework is based on
interoperability
AUTOSAR
across the product lines from different OEMs. AUTOSAR based design is chosen asacross
open standard to enable scalability, reusability and interoperability AU‐ the
product
TOSAR is the most prevalent software architecture for ECUs in the automotive industry. is
lines from different OEMs. AUTOSAR based design is chosen as AUTOSAR
the most prevalent
However, it should besoftware architecture
noted that for ECUs inthe
in our implementation theframework
automotive industry.inside
is deployed However,
itvirtual
should be noted that in our implementation the framework is deployed
ECU, and it collects CAN frames from the CAN bus. Implementation of FIVADMI inside virtual
ECU,
does not use any system library from AUTOSAR, in that sense our framework is not not
and it collects CAN frames from the CAN bus. Implementation of FIVADMI does
use any tied
closely systemwithlibrary from AUTOSAR,
AUTOSAR in that
and can easily be sense our to
adapted framework
non AUTUSAR is not closely
based tied
with AUTOSAR and can easily be adapted to non AUTUSAR based automotive software
architecture (e.g., POSIX based architecture [91]) that is gaining popularity recently.
The next step to enhance the framework would be to react to intrusions on the in-
vehicle network and to recover from attacks. This recovery may be rolling back to a stable
Future Internet 2024, 16, 288 23 of 26
state to overcome an intrusion, or to estimate the stable state by applying different tech-
niques. For example, Kalman filtering can be applied to estimate the correct state of a
system, where system state is defined by the variables including the variables (fluents) mon-
itored by FIVADMI. Kalman filter would estimate the next states of the system independent
of the monitoring done by FIVADMI. If deviation in the value of a monitored variable is
detected by FIVADMI, the system can assume the estimated value for that variable in the
state predicted by Kalman filter.
References
1. Faezipour, M.; Nourani, M.; Saeed, A.; Addepalli, S. Progress and challenges in intelligent vehicle area networks. Commun. ACM
2012, 55, 90–100. [CrossRef]
2. Lokman, S.-F.; Othman, A.T.; Abu-Bakar, M.-H. Intrusion detection system for automotive controller area network (can) bus
system: A review. EURASIP J. Wirel. Commun. Netw. 2019, 2019, 184. [CrossRef]
3. Aliwa, E.; Rana, O.; Perera, C.; Burnap, P. Cyberattacks and countermeasures for in-vehicle networks. ACM Comput. Surv. (CSUR)
2021, 54, 1–37. [CrossRef]
4. Boudguiga, A.; Klaudel, W.; Boulanger, A.; Chiron, P. A simple intrusion detection method for controller area network. In
Proceedings of the 2016 IEEE International Conference on Communications (ICC), Kuala Lumpur, Malaysia, 23–27 May 2016;
pp. 1–7.
5. Gmiden, M.; Gmiden, M.H.; Trabelsi, H. An intrusion detection method for securing in-vehicle can bus. In Proceedings of the
2016 17th International Conference on Sciences and Techniques of Automatic Control and Computer Engineering (STA), Sousse,
Tunisia, 19–21 December 2016; pp. 176–180.
6. Yang, G.; Tang, C.; Jiang, Z.; Liu, X. Towards interpretable and lightweight intrusion detection for in-vehicle network. In
Proceedings of the 2022 4th International Conference on Communications, Information System and Computer Engineering
(CISCE), Shenzhen, China, 27–29 May 2022; pp. 179–182.
7. Young, C.; Olufowobi, H.; Bloom, G.; Zambreno, J. Automotive intrusion detection based on constant can message frequencies
across vehicle driving modes. In Proceedings of the ACM Workshop on Automotive Cybersecurity, Dallas, TX, USA, 27 March
2019; pp. 9–14.
8. Checkoway, S.; McCoy, D.; Kantor, B.; Anderson, D.; Shacham, H.; Savage, S.; Koscher, K.; Czeskis, A.; Roesner, F.; Kohno, T.
Comprehensive experimental analyses of automotive attack surfaces. In Proceedings of the 20th USENIX Security Symposium
(USENIX Security 11), San Francisco, CA, USA, 8–12 August 2011.
9. Carsten, P.; Andel, T.R.; Yampolskiy, M.; McDonald, J.T. In-vehicle networks: Attacks, vulnerabilities, and proposed solutions.
In Proceedings of the 10th Annual Cyber and Information Security Research Conference, Oak Ridge, TN, USA, 6–8 April 2015;
pp. 1–8.
10. Wolf, M.; Weimerskirch, A.; Paar, C. Security in automotive bus systems. In Workshop on Embedded Security in Cars; Springer:
Bochum, Germany, 2004; pp. 1–13.
11. Hoppe, T.; Kiltz, S.; Dittmann, J. Applying intrusion detection to automotive it-early insights and remaining challenges. J. Inf.
Assur. Secur. (JIAS) 2009, 4, 226–235.
12. Schulze, S.; Pukall, M.; Saake, G.; Hoppe, T.; Dittmann, J. On the need of data management in automotive systems. Datenbanksys-
teme in Business, Technologie und Web (BTW)–13. In Proceedings of the Fachtagung des GI-Fachbereichs” Datenbanken und
Informationssysteme” (DBIS), Munster, Germany, 2–6 March 2009.
13. Tomlinson, A.; Bryans, J.; Shaikh, S.A. Towards viable intrusion detection methods for the automotive controller area network. In
Proceedings of the 2nd ACM Computer Science in Cars Symposium, Munich, Germany, 13–14 September 2018; pp. 1–9.
14. Dupont, G.; Hartog, J.D.; Etalle, S.; Lekidis, A. Network intrusion detection systems for in-vehicle network-technical report. arXiv
2019, arXiv:1905.11587.
Future Internet 2024, 16, 288 24 of 26
15. Chattopadhyay, A.; Lam, K.-Y.; Tavva, Y. Autonomous vehicle: Security by design. IEEE Trans. Intell. Transp. Syst. 2020, 22,
7015–7029. [CrossRef]
16. Daimi, K.; Saed, M.; Bone, S.; Robb, J. Securing vehicle’s electronic control units. In Proceedings of the Twelfth International
Conference on Networking and Services, Lisbon, Portugal, 26–30 June 2016.
17. David, C.; Fry, S. Automotive Security Best Practices. Recommendations for Security and Privacy in the Era of the Next-Generation
Car. 2016. Available online: https://motordna.io/static/stickerlook/images/wp-automotive-security.pdf (accessed on 20 June
2024).
18. Poudel, B.; Munir, A. Design and evaluation of a reconfigurable ecu architecture for secure and dependable automotive cps. IEEE
Trans. Dependable Secur. Comput. 2018, 18, 235–252. [CrossRef]
19. Kang, M.-J.; Kang, J.-W. Intrusion detection system using deep neural network for in-vehicle network security. PLoS ONE 2016,
11, e0155781. [CrossRef] [PubMed]
20. Seo, E.; Song, H.M.; Kim, H.K. Gids: Gan based intrusion detection system for in-vehicle network. In Proceedings of the 2018
16th Annual Conference on Privacy, Security and Trust (PST), Belfast, Northern Ireland, 28–30 August 2018; pp. 1–6.
21. Sanchez, H.S.; Rotondo, D.; Escobet, T.; Puig, V.; Saludes, J.; Quevedo, J. Detection of replay attacks in cyber-physical systems
using a frequency-based signature. J. Frankl. Inst. 2019, 356, 2798–2824. [CrossRef]
22. Taylor, A.; Japkowicz, N.; Leblanc, S. Frequency-based anomaly detection for the automotive can bus. In Proceedings of the 2015
World Congress on Industrial Control Systems Security (WCICSS), London, UK, 14–16 December 2015; pp. 45–49.
23. Mahbub, K.; Patwary, M.; Nehme, A.; Lacoste, M.; Allio, S.; Rafflé, Y. Towards an Integrated In-Vehicle Isolation and Resilience
Framework for Connected Autonomous Vehicles. In Proceedings of the VEHICULAR 2020, Porto, Portugal, 18–22 October 2020.
24. Riley, G. Clips: A Tool for Building Expert Systems. 1999. Available online: https://ntrs.nasa.gov/api/citations/19910014730/
downloads/19910014730.pdf (accessed on 20 June 2024).
25. AUTOSAR. Autosar History. 2017. Available online: https://www.autosar.org/about/history/note (accessed on 20 June 2024).
26. OpenEnclave. Open Enclave sdk. 2019. Available online: https://github.com/openenclave/openenclavenote (accessed on 21
June 2024).
27. Alam, M.S.U. Securing Vehicle Electronic Control Unit (ecu) Communications and Stored Data. Master’s Thesis, School of
Computing, Queen’s University, Kingston, ON, Canada, 2018.
28. Hoang, D.; Park, S.; Rhee, J. Traffic-effective architecture for seamless can-based in-vehicle network systems. In Proceedings
of the 2022 13th International Conference on Information and Communication Technology Convergence (ICTC), Jeju Island,
Republic of Korea, 19–21 October 2022; pp. 1612–1614.
29. Mundhenk, P. Security for Automotive Electrical/Electronic (E/E) Architectures. PhD Thesis, Faculty of Electrical Engineering
and Information Technology, The Technical University of Munich, Munich, Germany, 2017.
30. ENISI. Cyber Security and Resilience of Smart Cars: Good Practices and Recommendations; European Union Agency for Network and
Information Security (ENISA): Athens, Greece, 2016.
31. Marquis, V.; Ho, R.; Rainey, W.; Kimpel, M.; Ghiorzi, J.; Cricchi, W.; Bezzo, N. Toward attack-resilient state estimation and control
of autonomous cyber-physical systems. In Proceedings of the 2018 Systems and Information Engineering Design Symposium
(SIEDS), Charlottesville, VA, USA, 27 April 2018; pp. 70–75.
32. Bazm, M.-M.; Lacoste, M.; Südholt, M.; Menaud, J.-M. Side-channels beyond the cloud edge: New isolation threats and solutions.
In Proceedings of the CSNet 2017: 1st Cyber Security in Networking Conference, Rio de Janeiro, Brazil, 18–20 October 2017;
pp. 1–8.
33. Bazm, M.-M.; Lacoste, M.; Südholt, M.; Menaud, J.-M. Side Channels in the Cloud: Isolation Challenges, Attacks, and Counter-
measures. 2017. hal-01591808. Available online: https://inria.hal.science/hal-01591808 (accessed on 20 June 2024).
34. Jain, S.; Wang, Q.; Arafin, M.T.; Guajardo, J. Probing attacks on physical layer key agreement for automotive controller area
networks. In Proceedings of the 2018 Asian Hardware Oriented Security and Trust Symposium (AsianHOST), Hong Kong, China,
17–18 December 2018; pp. 7–12.
35. O’Flynn, C.; d’Eon, G. Power analysis and fault attacks against secure can: How safe are your keys? SAE Int. J. Transp. Cybersecur.
Priv. 2018, 1, 3–18. [CrossRef]
36. Mueller, A.; Lothspeich, T. Plug-and-secure communication for can. CAN Newsl. 2015, 4, 10–14.
37. Kulah, Y.; Dincer, B.; Yilmaz, C.; Savas, E. Spy detector: An approach for detecting side-channel attacks at runtime. Int. J. Inf.
Secur. 2019, 18, 393–422. [CrossRef]
38. A Secure Technology Alliance Mobile Council White Paper. Trusted Execution Environment (TEE) 101: A primer, Version 1.0, 2018.
Available online: https://www.securetechalliance.org/wp-content/uploads/TEE-101-White-Paper-FINAL2-April-2018.pdf
(accessed on 15 May 2024).
39. Jiang, J.; Soriente, C.; Karame, G. On the challenges of detecting side-channel attacks in sgx. In Proceedings of the 25th
International Symposium on Research in Attacks, Intrusions and Defenses, Limassol, Cyprus, 26–28 October 2022; pp. 86–98.
40. Moghimi, D.; Van Bulck, J.; Heninger, N.; Piessens, F.; Sunar, B. Copycat: Controlled instruction-level attacks on enclaves. In
Proceedings of the 29th USENIX Security Symposium (USENIX Security 20), Boston, MA, USA, 12–14 August 2020; pp. 469–486.
41. Sabt, M.; Achemlal, M.; Bouabdallah, A. Trusted execution environment: What it is, and what it is not. In Proceedings of the 2015
IEEE Trustcom/BigDataSE/ISPA, Helsinki, Finland, 20–22 August 2015; pp. 57–64.
Future Internet 2024, 16, 288 25 of 26
42. Brasser, F.; Müller, U.; Dmitrienko, A.; Kostiainen, K.; Capkun, S.; Sadeghi, A.-R. Software grand exposure: Sgx cache attacks
are practical. In Proceedings of the 11th USENIX Conference on Offensive Technologies (WOOT’17), Berkeley, CA, USA, 16–18
August 2017.
43. Wang, J.; Cheng, Y.; Li, Q.; Jiang, Y. Interface-based side channel attack against intel sgx. 2018. Available online: https:
//arxiv.org/abs/1811.05378 (accessed on 15 March 2024).
44. Ekberg, J.-E.; Kostiainen, K.; Asokan, N. Trusted execution environments on mobile devices. In Proceedings of the 2013 ACM
SIGSAC Conference on Computer & Communications Security, Berlin, Germany, 4–8 November 2013; pp. 1497–1498.
45. Ohira, S.; Desta, A.; Arai, I.; Inoue, H.; Fujikawa, K. Normal and malicious sliding windows similarity analysis method for fast
and accurate ids against dos attacks on in-vehicle networks. IEEE Access 2020, 8, 42422–42435. [CrossRef]
46. Stotz, J.P.; Bißmeyer, N.; Kargl, F.; Dietzel, S.; Papadimitratos, P.; Schleiffer, C. Security requirements of vehicle security architec-
ture. Deliverable: D1.1, PRESERVE. 2011. Available online: https://www.preserve-project.eu/www.preserve-project.eu/sites/
preserve-project.eu/files/PRESERVE-D1.1-Security%20Requirements%20of%20Vehicle%20Security%20Architecture.pdf (ac-
cessed on 15 May 2024).
47. Karopoulos, G.; Kambourakis, G.; Chatzoglou, E.; Hern’andez-Ramos, J.; Kouliaridis, V. Demystifying in-vehicle intrusion
detection systems: A survey of surveys and a meta-taxonomy. Electronics 2022, 11, 1072. [CrossRef]
48. Hamad, M.; Nolte, M.; Prevelakis, V. A framework for policy based secure intra vehicle communication. In Proceedings of the
2017 IEEE Vehicular Networking Conference (VNC), Torino, Italy, 27–29 November 2017; pp. 1–8.
49. Thing, V.L.; Wu, J. Autonomous vehicle security: A taxonomy of attacks and defences. In Proceedings of the 2016 IEEE
International Conference on Internet of Things (iThings) and IEEE Green Computing and Communications (GreenCom) and
IEEE Cyber, Physical and Social Computing (CPSCom) and IEEE Smart Data (SmartData), Chengdu, China, 15–18 December
2016; pp. 164–170.
50. Motruk, B.; Diemer, J.; Buchty, R.; Ernst, R.; Berekovic, M. Idamc: A many-core platform with run-time monitoring for mixed-
criticality. In Proceedings of the 2012 IEEE 14th International Symposium on High-Assurance Systems Engineering, Omaha, NE,
USA, 25–27 October 2012; pp. 24–31.
51. Jo, W.; Kim, S.; Kim, H.; Shin, Y.; Shon, T. Automatic whitelist generation system for ethernet based in-vehicle network. Comput.
Ind. 2022, 142, 103735. [CrossRef]
52. Kumar, M.; Bhandari, A. A review of detection approaches for distributed denial of service attacks. Syst. Sci. Control Eng. 2017, 5,
301–320.
53. Dalila Ressi, Riccardo Romanello, Carla Piazza, Sabina Rossi: AI-enhanced blockchain technology: A review of advancements
and opportunities. J. Netw. Comput. Appl. 2024, 225, 103858. [CrossRef]
54. Qayyum, A.; Islam, M.H.; Jamil, M. Taxonomy of statistical based anomaly detection techniques for intrusion detection. In
Proceedings of the IEEE Symposium on Emerging Technologies, Islamabad, Pakistan, 18 September 2005; pp. 270–276.
55. Sivasamy, A.A.; Sundan, B. A dynamic intrusion detection system based on multivariate hotelling’s t2 statistics approach for
network environments. Sci. World J. 2015, 2015, 850153. [CrossRef] [PubMed]
56. TCG. Trusted Computing Group (tcg). 2015. Available online: https://trustedcomputinggroup.org/wpcontent/uploads/
TCGStorageArchitectureCoreSpecv2.01r1.00.pdf (accessed on 15 May 2024).
57. Hund, R.; Willems, C.; Holz, T. Practical timing side channel attacks against kernel space aslr. In Proceedings of the 2013 IEEE
Symposium on Security and Privacy, San Francisco, CA, USA, 19–22 May 2013.
58. Schwarz, M.; Weiser, S.; Gruss, D.; Maurice, C.; Mangard, S. Malware guard extension: Using sgx to conceal cache attacks. In
Proceedings of the Detection of Intrusions and Malware, and Vulnerability Assessment. DIMVA 2017, Bonn, Germany, 6–7 July
2017; Volume 10327 of Lecture Notes in Computer Science. Springer: Berlin/Heidelberg, Germany, 2017.
59. Van Bulck, J.; Oswald, D.; Marin, E.; Aldoseri, A.; Garcia, F.D.; Piessens, F. A tale of two worlds: Assessing the vulnerability of
enclave shielding runtimes. In Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security,
London, UK, 11–15 November 2019.
60. Khandaker, M.R.; Cheng, Y.; Wang, Z.; Wei, T. Coin attacks: On insecurity of enclave untrusted interfaces in sgx. In Proceedings
of the Twenty-Fifth International Conference on Architectural Support for Programming Languages and Operating Systems,
Lausanne, Switzerland, 16–20 March 2020.
61. Mushtaq, M.; Akram, A.; Bhatti, M.K.; Chaudhry, M.; Lapotre, V.; Gogniat, G. Nights-watch: A cache-based side-channel intrusion
detector using hardware performance counters. In Proceedings of the 7th International Workshop on Hardware and Architectural
Support for Security and Privacy, Los Angeles, CA, USA, 2 June 2018.
62. Payer, M. Hexpads: A platform to detect ”stealth” attacks. In Proceedings of the International Symposium on Engineering Secure
Software and Systems, London, UK, 6–8 April 2016.
63. Wang, H.; Sayadi, H.; Rafatirad, S.; Sasan, A.; Homayoun, H. Scarf: Detecting side-channel attacks at real-time using low-level
hardware features. In Proceedings of the 2020 IEEE 26th International Symposium on On-Line Testing and Robust System Design
(IOLTS), Naples, Italy, 13–15 July 2020.
64. Bazm, M.-M.; Sautereau, T.; Lacoste, M.; Sudholt, M.; Menaud, J.-M. Cache-based side-channel attacks detection through intel
cache monitoring technology and hardware performance counters. In Proceedings of the 2018 Third International Conference on
Fog and Mobile Edge Computing (FMEC), Barcelona, Spain, 23–26 April 2018.
65. Gamaarachchi, H.; Ganegoda, H. Power analysis based side channel attack. arXiv 2018, arXiv:1801.00932.
Future Internet 2024, 16, 288 26 of 26
66. Palanca, A.; Evenchick, E.; Maggi, F.; Zanero, S. A stealth, selective, link-layer denial-of-service attack against automotive networks.
In Proceedings of the Detection of Intrusions and Malware, and Vulnerability Assessment: 14th International Conference, DIMVA
2017, Bonn, Germany, 6–7 July 2017; Proceedings 14; Springer: Berlin/Heidelberg, Germany, 2017; pp. 185–206.
67. Xie, Y.; Zhou, Y.; Xu, J.; Zhou, J.; Chen, X.; Xiao, F. Cybersecurity protection on in-vehicle networks for distributed automotive
cyber-physical systems: State-of-the-art and future challenges. Softw. Pract. Exp. 2021, 51, 2108–2127. [CrossRef]
68. Binun, A.; Bloch, M.; Dolev, S.; Kahil, M.R.; Menuhin, B.; Yagel, R.; Coupaye, T.; Lacoste, M.; Wailly, A. Self-stabilizing virtual
machine hypervisor architecture for resilient cloud. In Proceedings of the 2014 IEEE World Congress on Services, Anchorage, AK,
USA, 27 June–2 July 2014; pp. 200–207.
69. Huang, A.; Liu, Y.; Chen, T.; Zhou, Y.; Sun, Q.; Chai, H.; Yang, Q. Starfl: Hybrid federated learning architecture for smart urban
computing. ACM Trans. Intell. Syst. Technol. (TIST) 2021, 12, 1–23. [CrossRef]
70. Thornton, S. Globalplatform Trusted Execution Environment and Trustzone. 2017. Available online: https://www.
microcontrollertips.com/embedded-security-brief-arm-trustzone-explained/ (accessed on 12 November 2023).
71. Wolf, M.; Gendrullis, T. Design, implementation, and evaluation of a vehicular hardware security module. In Proceedings of the
International Conference on Information Security and Cryptology, Seoul, Republics of Korea, 30 November–2 December 2011;
Springer: Berlin/Heidelberg, Germany, 2011; pp. 302–318.
72. AUTOSAR. Autosar: Layered Software Architecture. 2017. Available online: https://www.autosar.org/fileadmin/standards/R4
-3/CP/AUTOSAR_EXP_LayeredSoftwareArchitecture.pdf (accessed on 4 April 2024).
73. Paundu, A.W.; Fall, D.; Miyamoto, D.; Kadobayashi, Y. Leveraging Kvm Events To Detect Cache-Based Side Channel Attacks In A
Virtualization Environment. Secur. Commun. Netw. 2018, 2018, 1–18. [CrossRef]
74. Akram, A.; Mushtaq, M.; Bhatti, M.K.; Lapotre, V.; Gogniat, G. Meet the sherlock holmes’ of side channel leakage: A survey of
cache sca detection techniques. IEEE Access 2020, 8, 70836–70860. [CrossRef]
75. Zhang, T.; Zhang, Y.; Lee, R.B. Cloudradar: A real-time side-channel attack detection system in clouds. In Proceedings of the
International Symposium on Research in Attacks, Intrusions, and Defenses, Crete, Greece, 10–12 September 2018; Springer: Cham,
Switzerland, 2016.
76. Intel. Intel Software Guard Extensions Developer Guide. 2016. Available online: https://software.intel.com/enus/node/702976
(accessed on 20 March 2024).
77. Intel. Intel Software Guard Extension sdk for linux os. 2023. Available online: https://download.01.org/intel-sgx/latest/linux-
latest/docs/Intel_SGX_SDK_Release_Notes_Linux_2.22_Open_Source.pdf (accessed on 15 March 2024).
78. HexHive. Hexpads, a Host-Based, Performance-Counter-Based Attack Detection System. 2018. Available online: https:
//github.com/HexHive/HexPADS (accessed on 20 April 2024).
79. Microsoft. Overview of Windows Performance Monitor. 2023. Available online: https://learn.microsoft.com/en-us/previous-
versions/windows/it-pro/windows-server-2008-r2-and-2008/cc749154(v=ws.11) (accessed on 10 March 2024).
80. IAIK. Cache Template Attacks. 2019. Available online: https://github.com/IAIK/cachetemplateattacks (accessed on 15 December
2023).
81. Gruss, D.; Spreitzer, R.; Mangard, S. Cache template attacks: Automating attacks on inclusive last-level caches. In Proceedings of
the 24th USENIX Security Symposium (USENIX Security 15), Washington, DC, USA, 12–14 August 2015.
82. NXP, i. MX RT Crossover MCUs. 2024. Available online: https://www.nxp.com/products/processors-and-microcontrollers/
arm-microcontrollers/i-mx-rt-crossover-mcus:IMX-RT-SERIES (accessed on 26 July 2024).
83. Mahbub, K.; Spanoudakis, G. Monitoring ws-agreements: An event calculus–based approach. In Test and Analysis of Web Services;
Springer: Berlin/Heidelberg, Germany, 2007; pp. 265–306.
84. Shanahan, M. The Event Calculus Explained; Springer: Berlin/Heidelberg, Germany, 1999.
85. Doorenbos, R. Production Matching for Large Learning Systems. PhD Thesis, Carnegie Mellon University, Pittsburgh, PA, USA,
1995.
86. Barreto, C. Obddatasets. 2019. Available online: https://github.com/cephasax/OBDdatasets (accessed on 4 April 2024).
87. CaringCaribou. Caring Caribou, a Friendly Car Exploration Tool. 2018. Available online: https://github.com/CaringCaribou/
caringcaribou (accessed on 8 August 2023).
88. Andreica, T.; Curiac, C.-D.; Jichici, C.; Groza, B. Android Head Units vs. In-Vehicle ECUs: Performance Assessment for Deploying
In-Vehicle Intrusion Detection Systems for the CAN Bus. IEEE Access 2022, 10, 95161–95178. [CrossRef]
89. Parai Wang. Automotive Software and Its Tool-Chain. Available online: https://github.com/autoas/as/ (accessed on 26 July
2024).
90. Arm Versatile Boards. Available online: https://www.qemu.org/docs/master/system/arm/versatile.html (accessed on 26 July
2024).
91. Thoen, F.; Smart, K.; Amringer, N. Accelerating Development of Software-Defined Vehicles with Virtual ECUs. White Paper,
Synopsis. Available online: https://www.synopsys.com/content/dam/synopsys/verification/white-papers/virtual-ecu-wp.
pdf (accessed on 26 July 2024).
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual
author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to
people or property resulting from any ideas, methods, instructions or products referred to in the content.