[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Next Article in Journal
Robust BEV 3D Object Detection for Vehicles with Tire Blow-Out
Next Article in Special Issue
Energy-Efficient Anomaly Detection and Chaoticity in Electric Vehicle Driving Behavior
Previous Article in Journal
On-Device Semi-Supervised Activity Detection: A New Privacy-Aware Personalized Health Monitoring Approach
Previous Article in Special Issue
Cervical Spondylosis Diagnosis Based on Convolutional Neural Network with X-ray Images
You seem to have javascript disabled. Please note that many of the page functionalities won't work as expected without javascript enabled.
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Sensor Network Attack Synthesis against Fault Diagnosis of Discrete Event Systems †

1
School of Electro-Mechanical Engineering, Xidian University, Xi’an 710071, China
2
Department of Electrical and Electronic Engineering, University of Cagliari, 09123 Cagliari, Italy
*
Author to whom correspondence should be addressed.
This paper is partially presented at the 62nd IEEE Conference on Decision and Control (CDC), Singapore, 13–15 December 2023.
Sensors 2024, 24(14), 4445; https://doi.org/10.3390/s24144445
Submission received: 25 June 2024 / Revised: 7 July 2024 / Accepted: 8 July 2024 / Published: 9 July 2024
(This article belongs to the Special Issue Anomaly Detection and Fault Diagnosis in Sensor Networks)
Figure 1
<p>Fault diagnosis architecture under attack. To make the architecture more illustrative, different components are represented by different colors.</p> ">
Figure 2
<p>(<b>a</b>) A plant <span class="html-italic">G</span> and (<b>b</b>) its diagnoser <math display="inline"><semantics> <mrow> <mi>D</mi> <mi>i</mi> <mi>a</mi> <mi>g</mi> <mo>(</mo> <mi>G</mi> <mo>)</mo> </mrow> </semantics></math>.</p> ">
Figure 3
<p>A fault diagnosis system under attack.</p> ">
Figure 4
<p>(<b>a</b>) <math display="inline"><semantics> <mrow> <mi>D</mi> <mi>i</mi> <mi>a</mi> <msub> <mi>g</mi> <mrow> <mi>a</mi> <mi>t</mi> <mi>t</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>G</mi> <mo>)</mo> </mrow> </mrow> </semantics></math> and (<b>b</b>) <math display="inline"><semantics> <mrow> <mi>D</mi> <mi>i</mi> <mi>a</mi> <msub> <mi>g</mi> <mrow> <mi>o</mi> <mi>p</mi> <mi>r</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>G</mi> <mo>)</mo> </mrow> </mrow> </semantics></math> for <span class="html-italic">G</span> in <a href="#sensors-24-04445-f002" class="html-fig">Figure 2</a>a.</p> ">
Figure 5
<p><span class="html-italic">J</span>-<math display="inline"><semantics> <mrow> <mi>D</mi> <mi>i</mi> <mi>a</mi> <mi>g</mi> <mo>(</mo> <mi>G</mi> <mo>)</mo> </mrow> </semantics></math> in Example 2.</p> ">
Figure 6
<p><math display="inline"><semantics> <mrow> <mi>S</mi> <mi>J</mi> </mrow> </semantics></math>-<math display="inline"><semantics> <mrow> <mi>D</mi> <mi>i</mi> <mi>a</mi> <mi>g</mi> <mo>(</mo> <mi>G</mi> <mo>)</mo> </mrow> </semantics></math> in Example 3.</p> ">
Versions Notes

Abstract

:
This paper investigates the problem of synthesizing network attacks against fault diagnosis in the context of discrete event systems (DESs). It is assumed that the sensor observations sent to the operator that monitors a system are tampered with by an active attacker. We first formulate the process of online fault diagnosis under attack. Then, from the attack viewpoint, we define a sensor network attacker as successful if it can degrade the fault diagnosis in the case of maintaining itself as undiscovered by the operator. To verify such an attacker, an information structure called a joint diagnoser (JD) is proposed, which describes all possible attacks in a given attack scenario. Based on the refined JD, i.e., stealthy joint diagnoser (SJD), we present an algorithmic procedure for synthesizing a successful attacker if it exists.

1. Introduction

With the advancement in computation and communication technologies, cyber–physical systems (CPSs) have emerged as the new generation of engineering systems and computation devices embedded within physical dynamics [1,2,3,4,5]. Examples of CPSs include sensor networks, networked computer systems, autonomous vehicles, etc. Usually, the undesired behavior of CPS may be caused by the occurrence of component faults. Hence, we wish that a fault can be diagnosed after its occurrence based on data collected by sensors. In a CPS, the transmission of data information relies on communication networks, which may introduce vulnerabilities to cyber-attacks.
In this paper, we study the behavior of a CPS within the framework of discrete event systems (DESs) [6]. One significant advantage of the DES approach to fault diagnosis is that it is a model-based approach. Therefore, DES models naturally capture faults as abrupt events in systems, which facilitates the analysis of faulty behaviors of the system based on limited observations. Another motivation is that, unlike complex models or large data-driven models, DES modeling offers an opportunity to make efficient decisions over an abstract discrete decision space. Specifically, a DES is an event-driven model-based formalism that can provide a time-abstract model for complex systems.
There are two main approaches and tools available for the fault diagnosis of a DES, i.e., automata theory [7,8,9] and Petri nets [10,11,12,13]. A comprehensive survey can be found in [14]. Within the context of automata theory, the underlying structure of a DES is that of a finite state automaton. This will be formally defined in Section 3. Online fault diagnosis in a DES aims to perform model-based inferencing at runtime based on the current observations, and determines if a fault event has occurred or not in the past. In order to achieve this, a process called a diagnoser is proposed in the seminal work [7], which associates to each observed word of events a diagnosis state, such as “negative”, “positive”, or “uncertain”.

2. Related Work

The related literature in the context of robust fault diagnosis against disruptions in the communication channels includes, e.g., [15,16,17]. For a survey of the work in this domain, we refer to [17]. These works are concerned with the loss of observations, i.e., any event in a certain subset of the observable event set may become unobservable due to sensor failures or communication channel constraints. It is shown in [17] that, based on a general diagnosis framework that takes sensor failures into account, a procedure of online diagnosis can be presented. However, such disruptions are not necessarily caused by active attacks.
Motivated by this, our focus is on a specific class of cyber-attacks called sensor network attacks, which may potentially inject false network signals into the communication channels between sensors and the system operator, as shown in Figure 1. As will be clear in the context, in the worst-case scenario, due to the impact of an attacker, the operator cannot diagnose the fault occurrence as it should. Indeed, sensor network attacks have been investigated in the context of attack detection [18,19], state estimation [20,21], and supervisory control [22,23]. However, very few studies have been devoted to fault diagnosis under attack. Apart from our earlier work [24], two recent contributions in this context are [25,26]. In these works, from a defense viewpoint, the authors aim to capture the fact that fault diagnosis can be properly performed against malicious attacks.
In this paper, we study from the attacker’s viewpoint, which allows us to determine conditions under which the attacker is harmful and stealthy and synthesize a strategy to satisfy those conditions. Our objective is to verify a successful attacker that can achieve two goals: (i) induce the operator to no longer diagnose the fault occurrence, guaranteeing its harmfulness; (ii) at the same time, maintain itself as undetected by the operator, guaranteeing its stealthiness. To this end, we first propose a bipartite diagnoser called a joint diagnoser (JD) that embeds all possible attacks in a given attack scenario. To capture stealthy attacks only, a refined JD, i.e., stealthy joint diagnoser (SJD), is presented, which finally provides a necessary and sufficient condition for the existence of a successful attacker.
Another contribution of this work is the development of a successful attack synthesis algorithm. To ensure stealthiness, an attacker must consider the race between inserted events and internal system events. In essence, when synthesizing successful attacks, an attack event must be inserted at the desired time. In order to capture this race, we define a pre-empting state of the SJD as those states corresponding to the case where the internal system events are pre-empted by the inserted events. Based on this, a successful attack synthesis algorithm is finally proposed. By providing a general synthesis approach, our ultimate goal is to understand what kinds of attacks systems are not robust to and how to reduce their impact on diagnosis estimation performance. In Table 1, we compare the proposed approach with previous studies.
Compared with our conference paper [24] that introduced the diagnosis setting without providing proofs of the results, we here provide formal proofs and detailed examples. Furthermore, we present an approach for online synthesizing a successful attacker.

3. Preliminaries

3.1. Finite-State Automata

We first review some common notations of DESs used throughout this paper; the reader is referred to [6] for more details. It is assumed that a DES to be diagnosed is modeled as a finite-state automaton (automaton for short) G = ( Q , Σ , δ , q 0 ) , where Q is the finite set of states, Σ is the finite set of events, δ : Q × Σ Q is the partial transition function, and q 0 Q is the initial state. Suppose that set Σ is divided into the observable event set Σ o and the unobservable event set Σ u o . The set of active events at state q is defined as Γ ( q ) = { σ Σ | δ ( q , σ ) ! } , where “!” means “defined”. The language generated by G, denoted by L ( G ) or simply L, is defined as L = { s Σ * δ q 0 , s ! } , where Σ * denotes the Kleene closure of Σ . Let s denote a word of L. The set of the prefixes of s is denoted as s ¯ = { u Σ * | ( v Σ * ) [ u v = s ] } .
The natural projection P : Σ * Σ o * is defined as (where ε is the empty word)
P ( ε ) = ε and P ( s σ ) = P ( s ) σ , if σ Σ o ; P ( s ) , if σ Σ u o .
The inverse projection P 1 : Σ o * 2 Σ * is defined as P 1 ( w ) = { s L ( G ) | P ( s ) = w } , i.e., P 1 ( w ) consists of all words s in L ( G ) whose observations are w.
Let G 1 = ( Q 1 , Σ 1 , δ 1 , q 01 ) and G 2 = ( Q 2 , Σ 2 , δ 2 , q 02 ) . The parallel composition between G 1 and G 2 is defined as G 1 G 2 = A c ( Q 1 × Q 2 , Σ 1 Σ 2 , δ , ( q 01 , q 02 ) ) , where δ [ ( q 1 , q 2 ) , σ ] = ( q 1 , q 2 ) if δ 1 ( q 1 , σ ) = q 1 and δ 2 ( q 2 , σ ) = q 2 ; δ [ ( q 1 , q 2 ) , σ ] = ( q 1 , q 2 ) if δ 1 ( q 1 , σ ) = q 1 and σ Σ 2 ; δ [ ( q 1 , q 2 ) , σ ] = ( q 1 , q 2 ) if δ 2 ( q 2 , σ ) = q 2 and σ Σ 1 ; otherwise, it is undefined. In the definition of G 1 G 2 , A c ( · ) denotes the accessible part of an automaton.

3.2. Fault Diagnosis

In the literature of fault diagnosis in DESs, the unobservable event set Σ u o is further partitioned into the set of regular unobservable events Σ r e g and the set of fault events Σ f . Let Ψ ( Σ f ) = { s f L s Σ * , f Σ f } denote the set of all finite words in L that end with a fault event f. With some abuse of notation, Σ f s denotes that s ¯ Ψ ( Σ f ) . A word s is said to be faulty (resp., normal) if Σ f s (resp., Σ f s ). The fault diagnosis problem in a DES aims to decide, using the current observation w Σ o * , if a fault has already occurred or not. To solve this problem, one wishes to build a diagnosis function γ : Σ o * { N , F , U } associating each observation to a diagnosis state such that
γ ( w ) = N , if s P 1 ( w ) , Σ f s ; F , if s P 1 ( w ) , Σ f s ; U , otherwise .
In other words, an observation w is called normal if γ ( w ) = N since, in this case, no word producing w contains a fault; faulty if γ ( w ) = F since, in this case, all words producing w contain a fault; ambiguous otherwise. A standard way to compute the diagnosis function is by using a diagnoser. The diagnoser of G is defined as
D i a g ( G ) = ( Q d , Σ o , δ d , q d , 0 ) .
Its construction procedure is detailed in [6]. By construction, it holds L ( D i a g ( G ) ) = P ( L ( G ) ) . The diagnoser state space Q d is a subset of 2 Q × { N , F } . The diagnoser allows one to associate every state to a diagnosis value γ ( q d ) = γ ( w ) , where q d = δ d ( q d , 0 , w ) . The diagnoser state q d is negative if γ ( q d ) = N ; positive if γ ( q d ) = F ; uncertain if γ ( q d ) = U . Figure 2a shows a plant G, where Σ o = { a , b , d , e } , Σ u o = { c , f } , and Σ f = { f } . The corresponding diagnoser is shown in Figure 2b.

4. Sensor Network Attacks

We start by defining a system model to be diagnosed under attack depicted in Figure 3, where the shadowed block denotes a sensor network attacker that intervenes in the communication channels between the sensors and the operator. It is assumed that the attacker can compromise a subset of the sensor network channels. Specifically, it may implement two types of sensor network attacks: (i) Sensor Erasure attack (SE-attack), which erases some readings generated by the plant; (ii) Sensor Insertion attack (SI-attack), which inserts some fake readings that have not occurred in the plant. If a plant generates a word s Σ * , the attacker observes an original observation w = P ( s ) and then produces a corrupted observation w . The operator computes diagnosis state γ ( w ) from the corrupted observation w .
To formally define the attack function in Figure 3, we denote by Σ e r a Σ o (resp., Σ i n s Σ o ) the set of events subject to SE-attacks (resp., SI-attacks). Correspondingly, we define Σ = σ σ Σ e r a as the set of erased events and Σ + = σ + σ Σ i n s as the set of inserted events. We also define Σ a = Σ o Σ + Σ as the attack alphabet.
Definition 1. 
Given a plant G with sets Σ i n s and Σ e r a , an attack function ξ : P ( L ( G ) ) Σ a * satisfies the following constraints:
(1)  ξ ( ε ) Σ + * ;
(2)  w σ P ( L ( G ) ) , where w Σ o * and σ Σ o :
ξ ( w σ ) ξ ( w ) { σ } Σ + * if σ Σ o Σ e r a , ξ ( w ) σ , σ Σ + * if σ Σ e r a .
Statement (1) in Definition 1 implies that the attacker may insert an arbitrary word t Σ + * at the initial state before any generated word of G is observed. By Statement (2), the attacker cannot erase σ if σ does not belong to Σ e r a . However, it may insert an arbitrary word t Σ + * after σ . If an event σ Σ e r a occurs, the attacker may either erase σ or leave it intact, and then insert any arbitrary word t Σ + * . Compared with the nondeterministic attack function in [22], the attack function ξ in Definition 1 is deterministic; therefore, in order to provide different classes of attack strategies, we define the set of all possible attack functions depending on relativity to sets Σ e r a and Σ i n s as Ξ ( Σ e r a , Σ i n s ) , abbreviated as Ξ .
An attack function ξ introduces an attack language, denoted as L ( ξ , G ) = { ξ ( w ) | w P ( L ( G ) ) } (abbreviated as L ( ξ ) ). Let w a L ( ξ ) be an attack word. Given an attack word w a , to describe the corrupted observation w received by the operator, an operator mask P ^ : Σ a * Σ o * is defined as
P ^ ( ε ) = ε , P ^ ( w a σ ) = P ^ ( w a ) σ if σ = σ Σ o σ = σ + Σ + , P ^ ( w a ) if σ = σ Σ .
We now define two diagnosis functions on Σ a . The attacker diagnosis function γ a t t : Σ a * { N , F , U } is defined as γ a t t ( w a ) = γ ( w ) , where w a = ξ ( w ) ; the operator diagnosis function γ o p r : Σ a * { N , F , U } is defined as γ o p r ( w a ) = γ ( w ) , where w = P ^ ( w a ) .
Definition 2. 
A corrupting function ϕ : P ( L ( G ) ) Σ o * is defined as ϕ ( w ) = P ^ ( ξ ( w ) ) , where ξ : P ( L ( G ) ) Σ a * and P ^ : Σ a * Σ o * are the attack function and the operator mask, respectively.
In this paper, a sensor network attacker is characterized by a corrupting function that takes an original observation w as input and produces a corrupted observation w = ϕ ( w ) = P ^ ( ξ ( w ) ) as output, as shown in Figure 3. We define L ( ϕ , G ) = P ^ ( L ( ξ , G ) ) , abbreviated as L ( ϕ ) , as the corrupted language induced by function ϕ . The set of all possible corrupting functions on Σ e r a and Σ i n s is defined as Φ ( Σ e r a , Σ i n s ) , abbreviated as Φ .

5. Problem Statement

In this section, we first state the fault diagnosis problem under attack as follows.
Problem 1. 
(Online diagnosis under attack) Given an attack word w a L ( ξ ) , determine if the diagnosis states based on the corresponding w and w are consistent. 
In the worst-case scenario, a faulty observation w that allows for the detection of a fault (i.e., positive diagnosis state F ) can be corrupted into a normal or ambiguous observation corresponding to the absence of the fault (i.e., negative diagnosis state N ) or to an uncertain situation (i.e., uncertain diagnosis state U ). This leads to the notion of a harmful attacker, defined as follows.
Definition 3. 
An attacker ϕ for a language L is said to be harmful if there exists an observation w P ( L ) with γ ( w ) = { F } , which may be corrupted into another observation w = ϕ ( w ) and γ ( w ) { N , U } .
Under such a harmful attacker (that receives w), the occurrence of a fault is hidden from the operator (that perceives w ); that is, a harmful attacker introduces a delay in the detection of the fault. Next, the stealthiness of an attacker is considered. To this end, we introduce an attack detection mechanism [20,22]. If an attacker can always keep its attacks undiscovered by the operator during system execution, we call it stealthy. We now give the condition that implies the stealthiness of an attacker.
Definition 4. 
An attacker ϕ for a language L is stealthy if L ( ϕ ) P ( L ( G ) )
The stealthiness of an attacker is ensured when any corrupted observation received by the operator is contained in the observed language of G. Associated with Definition 4 are two sets of words w Σ a * defined as follows. Given a plant G, the set of stealthy words on Σ a is defined as S s = { w a Σ a * P ^ ( w a ) P ( L ( G ) ) } , while the set of exposing words on Σ a is defined as S e = { w a σ Σ a * w a S s , σ Σ a , w a σ S s } . A stealthy word w a produces a corrupted observation w = P ^ ( w a ) P ( L ( G ) ) , which does not reveal the attacker’s presence. On the contrary, an exposing word results in the exposure of the attacker at the last observable step. Finally, the ideal attacker that can achieve both goals is said to be successful. Finally, from the attack viewpoint, we formalize the successful attacker existence and synthesis problem.
Problem 2. 
(Existence and synthesis of a successful attacker) Given a language L, determine whether there exists a successful attacker ϕ for L. If it exists, synthesize the successful attacker ϕ. 

6. Stealthy Joint Diagnoser

6.1. Attacker Diagnoser and Operator Diagnoser

In our previous work [24], we detail the constructions of two special diagnosers, called Attacker Diagnoser and Operator Diagnoser. The former diagnoser describes all attack words w a that can be generated under attack. The latter diagnoser describes how all words w a Σ a * are recognized by the operator. Starting from a diagnoser D i a g ( G ) = ( Q d , Σ o , δ d , q d , 0 ) , we build the following:
  • Attacker Diagnoser D i a g a t t ( G ) = ( Q d , Σ a , δ a t t , q d , 0 ) through self-looping each state with all events in Σ + and then adding in parallel to each event σ Σ e r a the corresponding event σ Σ .
  • Operator Diagnoser D i a g o p r ( G ) = ( Q d q , Σ a , δ o p r , q d , 0 ) through self-looping each state with all events in Σ , then adding in parallel to each event σ Σ i n s the corresponding event σ + Σ + , and finally adding a dump state q that is reached by all undefined transitions.
Example 1. 
Consider the plant G in Figure 2a. Let Σ i n s = { e } and Σ e r a = { a , b } . The corresponding D i a g a t t ( G ) and D i a g o p r ( G ) are shown in Figure 4a and Figure 4b, respectively. 
Proposition 1. 
Given a nominal diagnoser D i a g ( G ) = ( Q d , Σ o , δ d , q d , 0 ) , let D i a g a t t ( G ) = ( Q d , Σ a , δ a t t , q d , 0 ) be the attacker diagnoser. It holds that
(1)  w a L ( D i a g a t t ( G ) ) ( ξ Ξ ) ( w L ( D i a g ( G ) ) [ w a = ξ ( w ) ] ;
(2)  ( ξ Ξ ) ( w L ( D i a g ( G ) ) ) [ δ a t t ( q d , 0 , ξ ( w ) ) = δ d ( q d , 0 , w ) ] .
Proof. 
Consider first Statement (1). (⇐) By the construction of D i a g a t t ( G ) , given a word w L ( D i a g ( G ) ) and ξ Ξ , there exists a corresponding attack word w a L ( D i a g a t t ( G ) ) such that w a = ξ ( w ) . (⇒) Consider a word w a L ( D i a g a t t ( G ) ) that reaches a state Q d and only contains events in Σ , implying an original observation. At each state of D i a g a t t ( G ) , all events σ + are in a self-loop, which implies that w a can be corrupted by inserting a word of fake events in Σ i n s . If the word w a is generated by executing a transition δ a t t ( Q d , σ ) = Q d with σ Σ e r a , it may happen that the “parallel" transition δ a t t ( Q d , σ ) = Q d is executed corresponding to an attack that erases σ . Therefore, there exists a function ξ Ξ and an observation w L ( D i a g ( G ) ) such that ξ ( w ) = w a . The proof of Statement (2) follows that of Statement (1).    □
By Statement (1) in Proposition 1, the language of the attacker diagnoser consists of all possible attack words w. According to Statement (2), the diagnosis state estimation of D i a g a t t ( G ) based on w is the same as that of D i a g ( G ) based on s, where w a = ξ ( w ) .
Proposition 2. 
Given a nominal diagnoser D i a g ( G ) = ( Q d , Σ o , δ d , q d , 0 ) , let D i a g o p r ( G ) = ( Q d q , Σ a , δ o p r , q d , 0 ) be the operator diagnoser. It holds that
(1)  L ( D i a g o p r ( G ) ) = S s S e ;
(2)  w a S s L ( D i a g o p r ( G ) ) ( w L ( D i a g ( G ) ) ) [ w = P ^ ( w a ) ] ;
(3)  w a L ( D i a g o p r ( G ) ) : if  w a S s , δ o p r ( q d , 0 , w a ) = δ d ( q d , 0 , P ^ ( w a ) ) ; if  w a S e , δ o p r ( q d , 0 , w a ) = q .
Proof. 
Statement (1) is first considered. By construction the D i a g o p r ( G ) , it includes all the words in S s S e . The following is to prove that all the words w a L ( D i a g o p r ( G ) ) either belong to S s or S e . Consider a word w a L ( D i a g o p r ( G ) ) that reaches a state q d Q d and only contains events in Σ o , implying an original observation received by the operator. At each state, all events σ are in a self-loop, which corresponds to the generation of w a . By the definition of P ^ , it holds that P ^ ( w a ) P ( L ( G ) ) , i.e., w a S s . If the word w a is generated by executing a transition δ o p r ( q d , σ + ) = q d with σ Σ i n s , it may happen that the “parallel” transition δ a t t ( q d , σ ) = q d is executed and thus P ^ ( w a ) P ( L ( G ) ) , i.e., w S s . Then, if the word w a yields d , then P ^ ( w a ) P ( L ( G ) ) , i.e., w a S e , which completes the proof of Statement (1). The proofs of Statement (2) and (3) follow that of Statement (1).    □
By Statement (1) in Proposition 2, all words in S s and S e can be generated by D i a g o p r ( G ) . By Statement (2), a word in S s generated by D i a g o p r ( G ) can correspond to a corrupted observation w P ( L ( G ) ) recognized by the operator. Statement (3) implies that (i) the diagnosis state estimation of D i a g o p r ( G ) based on a stealthy word w a S s is the same as that of D i a g ( G ) based on w , where w = P ^ ( w a ) ; (ii) all exposing words w a S e yield q .

6.2. Joint Diagnoser and Its Refining

Definition 5. 
A joint diagnoser (JD for short) J- D i a g ( G ) is defined as J- D i a g ( G ) = ( X , Σ a , δ a , x 0 ) = D i a g a t t ( G ) D i a g o p r ( G )
As defined, every state of J- D i a g ( G ) is a pair x = ( q d , q ¯ d ) . The states of J- D i a g ( G ) can be partitioned into stealthy states and exposing states as follows.
Definition 6. 
Given a joint diagnoser J- D i a g ( G ) = ( X , Σ a , δ a , x 0 ) , the set of exposing states is defined as X e = { x = ( q d , q ¯ d ) X | q ¯ d = q } ; the set of stealthy states is defined as X s = X X e
If an exposing word w a S e yields an exposing state, we conclude that the attacker that produces w a is stealthy. However, if a stealthy word w a S s yields a stealthy state, it can only be inferred that the attacker producing w a is currently undiscovered. There is a case where, following the future evolution of G, the attacker will be inevitably discovered. This leads to the notion of a weakly exposing region, denoted as X w e X e , which can be computed iteratively by a procedure in [21]. In the first iteration,
X w e : = { x X ( σ Σ o ) [ δ a ( x , σ ) X e σ Σ e r a ( σ Σ i n s ) [ δ a ( x , σ ) X e ] ] } .
The remaining iterations are executed similarly to Equation (4). We do not present the complete procedure here for the sake of brevity but illustrate it via Example 2. Dually, we define the strongly stealthy region as X s s = X X w e X s .
Example 2. 
The joint diagnoser for the preceding G is shown in Figure 5, where the exposing states in X w e are highlighted in brown while the stealthy states in X w e are highlighted in gray. Let us focus on a stealthy state ( { 3 F } , { 1 N , 2 F } ) . In the case that the occurrence of event d will take ( { 3 F } , { 1 N , 2 F } ) to an exposing state ( { 4 F } , { q } ) , we find that i) d cannot be erased; ii) the inserted event e Σ i n s will reach another exposing state ( { 3 F } , { q } ) . By Equation (4), ( { 3 F } , { 1 N , 2 F } ) X w e holds. In plain words, once such a stealthy state is reached, all attempts of an attacker to prevent it from reaching a subsequent exposing state will fail. 
Definition 7. 
The stealthy joint diagnoser (SJD, for short) with respect to a joint diagnoser J- D i a g ( G ) = ( X , Σ a , δ a , x 0 ) is defined as S J - D i a g ( G ) = A c ( X s s , Σ a , δ s a , x 0 ) , where X s s = X X w e and δ s a = δ a X s s × Σ a X s s
The resulting SJD is obtained by removing all states in X w e from a JD and taking its accessible part. Then, we define a subset of the states of S J - D i a g ( G ) , called pre-empting states, which will be used in the procedure to extract an attack function from S J - D i a g ( G ) .
Definition 8. 
Given a JD J- D i a g ( G ) = ( X , Σ a , δ a , x 0 ) with the corresponding SJD S J - D i a g ( G ) = ( X s s , Σ a , δ s a , x 0 ) , the set of pre-empting states of S J - D i a g ( G ) is defined as
X p = { x s s X s s | ( σ Σ o ) [ δ a ( x s s , σ ) X X s s ( σ Σ e r a δ a ( x s s , σ ) X X s s ) ] } ;
the set of non-pre-empting states of S J - D i a g ( G ) is defined as X n p = X s s X p
A state x s s X s s is pre-empting if i) there exists an event σ Σ o whose occurrence (even if erased) causes J- D i a g ( G ) to lead outside X s s ; ii) however, σ can be definitely pre-empted by inserting an appropriate word of events in Σ + to reach a state in the strongly stealthy state. This state captures the races between inserted events and internal system events. Specifically, at a pre-empting state, the inserted word must be performed before the execution of event σ . In Example 2, state ( { 3 F } , { 0 N } ) is a pre-empting state (highlighted in green), where event d must be pre-empted by inserting a fake event e + to reach a state ( { 3 F } , { 5 N , 6 N } ) X s s ; otherwise, the occurrence of d Σ o Σ e r a will take ( { 3 F } , { 0 N } ) to an exposing state ( { 4 F } , { d } ) .

6.3. Synthesis of Attackers

In order to synthesize an attacker, the following definition is first required.
Definition 9. 
Let x s s X s s be a state and X n p be the set of non-pre-empting states in the SJD S J - D i a g ( G ) = ( X s s , Σ a , δ s a , x 0 ) .
(1) The set of events in Σ a enabled at x s s is defined as Γ S J ( x s s ) = { σ Σ a | δ s a ( x s s , σ ) ! } .
(2) The set of words consisting of events in Σ + that originate from x s s and lead to a non-pre-empting state is defined as L + ( S J - D i a g ( G ) , x s s ) = { w a , + Σ + * | δ s a ( x s s , w a , + ) X n p }
The following objective is to show how an attacker may determine an attack function from an SJD. In [21], an algorithmic procedure is presented for this purpose. The main idea is to select attack words that do not end in any state that has an inserted event as a successor transition, of course, including the pre-empting state. Compared with [21], it is now expected to synthesize the attack function producing an attack word that only does not end in pre-empting states. This means that an attacker cannot stay in the pre-empting state when determining its attack function. Now, we provide the following attacker synthesis algorithm, i.e., Algorithm 1.
Algorithm 1 Synthesis of the corrupting function ϕ
Require: G = ( Q , Σ , δ , q 0 ) and S J - D i a g ( G ) = ( X s s , Σ a , δ s a , x 0 )
Ensure: corrupting function ϕ Φ
1:
ϕ S y n t h ( S J D )
2:
procedure Synth( S J D )
3:
      initialization: w ε
4:
      select a word w a , + L + ( S J - D i a g ( G ) , x 0 )
5:
       ξ ( w ) : = w a , + ; ϕ ( w ) : = P ^ ( ξ ( w ) )
6:
       x s s : = δ s a x 0 , w a , +
7:
      while a new observable event σ Σ o is produced by G do
8:
            I : =
9:
           if  σ Γ S J ( x s s ) then I : = I { σ }
10:
         if  σ Γ S J ( x s s ) then I : = I { σ }
11:
         select an event σ I and a word w a , + L + ( S J - D i a g ( G ) , δ s a ( x s s , σ ) )
12:
         let w a : = σ w a , + and w a { σ , w a }
13:
         let x s s : = δ s a ( x s s , σ )
14:
         if  x s s X n p then ξ ( w σ ) ξ ( w ) w a and x s s : = δ s a ( x s s , w a )
15:
         if  x s s X p then ξ ( w σ ) : = ξ ( w ) w a and x s s : = δ s a ( x s s , w a )
16:
          ϕ ( w σ ) : = P ^ ( ξ ( w σ ) )
17:
          w w σ
18:
    end while
19:
end procedure
This algorithm may recursively associate each observation generated by G with a corresponding attack word. We now briefly explain how it works. When no event is generated by G, the attacker may insert a suitable word w a , + in the set L + ( S J - D i a g ( G ) , x 0 ) (Steps 3 and 4). In Step 5, ξ ( ε ) is computed, and the new current state x s s of S J - D i a g ( G ) is updated. Then, we wait for G to generate a new observable event σ (Step 7). A new set I initialized at the empty set is defined. If σ is enabled at x s s , σ is added to I. If σ is enabled at x s s , σ is added to I (Steps 8 to 10). In Step 11, an event σ I and the insertion of a word w a , + L + ( S J - D i a g ( G ) , δ s a ( x s s , σ ) ) are selected. If the current state x s s with the occurrence of σ is a non-pre-empting state, an attack word w a is produced, which is either σ or the concatenation of σ and w a , + L + ( S J - D i a g ( G ) , δ s a ( x s s , σ ) ) (Step 14). Otherwise, another attack word w a is produced as the concatenation of σ and w a , + (Step 15). The corresponding corrupting function is computed in Step 16. Step 17 updates the observation w to w σ . This procedure goes to Step 7 when a new observable event is generated by G.
Proposition 3. 
Given a plant G, function ϕ is stealthy if and only if, for all w P ( L ( G ) ) , the corrupted observation ϕ ( w ) can be computed by Algorithm 1.
According to the property of the SJD, the above results trivially hold, which means that the corrupting function synthesized by Algorithm 1 must be stealthy. Using the notion of pre-empting states, we provide a characterization of the SJD as follows.
Theorem 1. 
Given a plant G, let D i a g ( G ) = ( Q d , Σ o , δ d , q d , 0 ) be the diagnoser and S J - D i a g ( G ) = ( X s s , Σ a , δ s a , x 0 ) be the SJD. The following implication holds:
( ξ ( w ) Σ a * ) [ δ s a ( x 0 , ξ ( w ) ) = x s s = ( q d , q ¯ d ) x s s X n p ] ( w P ( L ( G ) ) ) , ( ξ synthesized by Algorithm   1 ) [ q d = δ d ( q d , 0 , w ) q ¯ d = δ d ( q d , 0 , P ^ ( ξ ( w ) ) ) = δ d ( q d , 0 , ϕ ( w ) ) ] .
Proof. 
(If) Assume that there exists an observation w P ( L ( G ) ) and an attack function ξ such that q d = δ d ( q d , 0 , w ) and q ¯ d = δ d ( q d , 0 , P ^ ( ξ ( w ) ) ) , where the attack function ξ is synthesized by Algorithm 1. By Proposition 3, the attack word ξ ( w ) is a stealthy word, i.e., ξ ( w ) S s . By Propositions 1 and 2, we have δ a t t ( q d , 0 , w a ) = δ d ( q d , 0 , w ) and δ o p r ( q d , 0 , w a ) = δ d ( q d , 0 , P ^ ( w a ) ) , i.e., q d = δ a t t ( q d , 0 , w a ) and q ¯ d = δ o p r ( q d , 0 , w a ) . By J- D i a g ( G ) = D i a g a t t ( G ) D i a g o p r ( G ) , and by the definition of S J - D i a g ( G ) , we have δ s a ( x 0 , w a ) = x s s = ( q d , q ¯ d ) . Since ξ ( w ) is computed by selecting w a , which ends in x s s , by Algorithm 1, x s s X n p .
(Only if) Assume that there exists an attack word ξ ( w ) Σ a * in S J - D i a g ( G ) such that δ s a ( x 0 , ξ ( w ) ) = x s s = ( q d , q ¯ d ) and x s s X n p . By J- D i a g ( G ) = D i a g a t t ( G ) D i a g o p r ( G ) , and by the definition of S J - D i a g ( G ) , it holds that δ a t t ( q d , 0 , ξ ( w ) ) = q d and δ o p r ( q d , 0 , ξ ( w ) ) = q ¯ d . By Propositions 1 and 2, we have δ a t t ( q d , 0 , ξ ( w ) ) = δ d ( q d , 0 , w ) and δ o p r ( q d , 0 , ξ ( w ) ) = δ d ( q d , 0 , P ^ ( ξ ( w ) ) ) , i.e., q d = δ d ( q d , 0 , w ) and q ¯ d = δ d ( q d , 0 , P ^ ( ξ ( w ) ) ) .    □
According to the above result, a state pair x s s = ( q d , q ¯ d ) in the joint diagnoser reached by an attack word w a represents the joint diagnosis state estimation, where q d describes the original diagnosis state estimation of the attacker based on the original observation w, where w a = ξ ( w ) , and q ¯ d describes the corrupted diagnosis state estimation of the operator based on the corrupted observation w = P ^ ( w a ) .
Finally, we conclude this section by the complexity analysis of the proposed approach. Let D i a g ( G ) be a nominal diagnoser with | Q d | states. By construction, the attacker diagnoser D i a g a t t ( G ) has the same set of states of D i a g ( G ) , and so does the operator diagnoser D i a g o p r ( G ) except for the dump state d . Since the JD J- D i a g ( G ) is the parallel composition of D i a g a t t ( G ) and D i a g a t t ( G ) , its maximum number of states is | Q d | × | Q d + 1 | . Hence, the complexity of building an SJD is O ( | Q d | 2 ) , which is polynomial in the number of states of the nominal diagnoser. However, it is well known that the construction of the diagnoser is worst-case exponential in the number of states in the system. Hence, the overall computational complexity of an SJD is exponential in the number of states of G.

7. Fault Diagnoisis under Attack

We first address Problem 1, i.e., online fault diagnosis under attack. Similar to the nominal setting, we begin with the definition of a diagnosis function pair.
Definition 10. 
Given an attack word w a , a diagnosis pair function r : Σ a * { N , F , U } × { N , F , U } associating to w a Σ a * a diagnosis state pair is defined as r ( w a ) = ( γ a t t ( w a ) , γ o p r ( w a ) ) , where γ a t t and γ o p r are the attacker and operator diagnosis functions, respectively. 
From the definitions of γ a t t and γ o p r , it holds that r ( w a ) = ( γ a t t ( w a ) , γ o p r ( w a ) ) = ( γ ( w ) , γ ( w ) ) , where w a = ξ ( w ) and w = P ^ ( w a ) . A more systematic way to compute the diagnosis pair function is by using an SJD. Let x s s = ( q d , q ¯ d ) = δ s a ( x 0 , w a ) . By Theorem 1, the SJD allows one to associate every state to a diagnosis state pair r ( x s s ) = r ( w a ) , i.e., γ ( q d ) = γ ( w ) and γ ( q ¯ d ) = γ ( w ) are the diagnosis state of the attacker and operator, respectively. Therefore, Problem 1 can be solved by tracking the current state in SJD reached by the attack word w a . The set of all diagnosis state pairs is defined as R = { N , F , U } × { N , F , U } , which can be partitioned into R = R c R w R h , where R c = { ( N , N ) , ( U , U ) , ( F , F ) } , R w = { ( N , U ) , ( N , F ) , ( U , N ) , ( U , F ) } , and R h = { ( F , N ) , ( F , U ) } .
Definition 11. 
Let S J - D i a g ( G ) be an SJD. A state x s s is correct if r ( x s s ) R c ; wrong non-harmful if r ( x s s ) R w ; harmful if r ( x s s ) R h . Denote the set of correct states, the set of wrong non-harmful states, and the set of harmful states by X s c , X s w , and X s h , respectively. 
When the SJD is in a correct state, the operator correctly computes the diagnosis state regardless of the fact that an attack has occurred. When the SJD reaches a wrong non-harmful state, the operator computes a wrong diagnosis state from the corrupted observation due to an attack, which is inconsistent with the diagnosis state based on the original observation. Note that, in such a case, the fault diagnosis is manipulated due to the attack but does not pose a harmful danger. For example, there exists a special case where an attacker induces the operator to think that a fault has occurred, while the system is actually under nominal behavior. The false positive may make the operator decide to take some unnecessary actions, e.g., shut down the system and start it again, which may increase the operational expenses of operating a system.
Finally, harmful states of the SJD correspond to the detection of a fault based on the original observation, while no detection is based on corrupted observation. Its physical interpretation is that the attacker itself has already confirmed that the fault has occurred, but it induces the operator to be unable to claim the fault occurrence.

7.1. Verification of Successful Attackers

As discussed above, it is intuitive that the presence of a harmful state in the SJD is related to Problem 2, the existence of a successful attacker.
Theorem 2. 
Given a plant G, there exists a successful attacker if and only if the SJD S J - D i a g ( G ) contains a harmful state, i.e., X s h .
Proof. 
(If) Suppose that S J - D i a g ( G ) contains a harmful state x s s such that r ( x s s ) R h , where x s s = δ s a ( x 0 , w a ) . By Theorem 1, associated with x s s is an attack word w a such that r ( w a ) = r ( x s s ) R h . Hence, there exists an attacker ϕ that alters the observation w into w such that ( γ ( w ) , γ ( w ) ) = ( γ a t t ( w a ) , γ o p r ( w a ) ) = r ( w a ) , i.e., ( γ ( w ) , γ ( w ) ) { ( F , N ) , ( F , U ) } . By Definition 3, the attacker ϕ is harmful. By the construction of S J - D i a g ( G ) , ϕ must satisfy stealthiness. Hence, the attacker ϕ is successful.
(Only if) Suppose that there exists a successful attacker ϕ . From Definition 3, there exists an observation w such that w is corrupted into w satisfying ( γ ( w ) , γ ( w ) ) { ( F , N ) , ( F , U ) } . By Theorem 1, there exists a reachable state x s s in S J - D i a g ( G ) with the occurrence of w a such that r ( x s s ) = ( γ ( q d ) , γ ( q ¯ d ) ) = ( γ ( w ) , γ ( w ) ) { ( F , N ) , ( F , U ) } .    □
Example 3. 
Let us continue with Example 2. After refining, the SJD is shown in Figure 6. Let w a , 1 = a e + be an attack word that yields the wrong non-harmful state ( { 1 N , 2 F } , { 5 N , 6 N } ) . This implies that the diagnosis state of the attacker based on w = a is U while the diagnosis state of the operator based on w = e is N . At this point, the attacker has doubted if the fault has occurred or not; however, the operator is certain that the fault has not occurred.
Let the evolution continue. Another word w a , 2 = a e + b d yields a harmful state ( { 4 F } , { 7 N } ) in S J - D i a g ( G ) . By Theorem 2, there exists a successful attacker for G that produces the attack word w a , 2 = a e + b d . At this point, the attacker is certain that the fault has occurred based on w = a b d ; however, based on the corrupted observation w = e d , the operator persists in its opinion that the fault has not occurred. 

7.2. Synthesis of Successful Attackers

We first provide the following proposition to ensure that a successful attacker can be synthesized from the SJD.
Proposition 4. 
Let G be a plant and S J - D i a g ( G ) = ( X s s , Σ a , δ s a , x 0 ) be the SJD. A successful corrupting function ϕ can be computed if and only if X s h X n p .
Proof. 
(If) Suppose that a state x s s X s h X n p in S J - D i a g ( G ) satisfies x s s = δ s a ( x 0 , w a ) and w a = ξ ( w ) , where w P ( L ( G ) ) . By x s s X n p , the attack word w a does not end in a pre-empting state. According to Algorithm 1 and Proposition 3, we see that ϕ is stealthy. Since x s s = ( q d , q ¯ d ) X s h , by Theorem 1, we have x s s = δ s a ( x 0 , w a ) = ( q d , q ¯ d ) such that δ d ( q d , 0 , w ) = q d and δ d ( q d , 0 , w ) = q ¯ d with w = ϕ ( w ) , where the attacker ϕ alters the observation w into w such that ( γ ( w ) , γ ( w ) ) = ( γ a t t ( w a ) , γ o p r ( w a ) ) = r ( w a ) = r ( x s s ) R h , i.e., ( γ ( w ) , γ ( w ) ) { ( F , N ) , ( F , U ) } . According to Definition 3, the corrupting function ϕ is also harmful.
(Only if) Suppose that ϕ is a successful corrupting function that can be computed. Since function ϕ is stealthy, by Algorithm 1 and Proposition 3, the attack word w a = ξ ( w ) does not end in a pre-empting state of S J - D i a g ( G ) , i.e., x s s = δ s a ( x 0 , ξ ( w ) ) X n p . On the other hand, as function ϕ is harmful, according to Definition 3, there exists an observation w P ( L ( G ) ) that can be changed into an observation w = ϕ ( w ) P ( L ( G ) ) , and ( γ ( w ) , γ ( w ) ) { ( F , N ) , ( F , U ) } . By w , w P ( L ( G ) ) , it holds that δ d ( q d , 0 , w ) = q d and δ d ( q d , 0 , w ) = q ¯ d . Since S J - D i a g ( G ) contains all possible stealthy attacks, by Theorem 1, there must exist a state x s s = ( q d , q ¯ d ) in S J - D i a g ( G ) with the occurrence of w a = ξ ( w ) such that δ d ( q d , 0 , w ) = q d and δ d ( q d , 0 , w ) = q ¯ d . By r ( x s s ) = r ( w a ) = ( γ a t t ( w a ) , γ o p r ( w a ) ) = ( γ ( w ) , γ ( w ) ) { ( F , N ) , ( F , U ) } , i.e., r ( x s s ) R h , we see that the state r s s is harmful. It holds that x s s X s h X n p , i.e., X s h X n p .    □
This proposition implies that, from the synthesis viewpoint, only a successful attacker that determines an attack word yielding a non-pre-empting harmful state can make sense. We now give Algorithm 2 to synthesize a successful attacker from an SJD. In Algorithm 2, the condition x s s X s h X n p (Step 3) for selecting a state r guarantees the harmfulness of the stealthy corrupting function synthesized by Algorithm 1.
Algorithm 2 Synthesis of the successful corrupting function ϕ
Require:  G = ( Q , Σ , δ , q 0 ) and S J - D i a g ( G ) = ( X s s , Σ a , δ s a , x 0 )
Ensure: successful corrupting function ϕ
1:
ϕ S y n t h s u c ( S J D )
2:
procedure Synthsuc( S J D )
3:
     if  X s h X n p  then choose a harmful state x s s X s h X n p with x s s = δ s a ( x 0 , w a )
4:
     compute the observation w such that w a = ξ ( w )
5:
     while there is an observation w * w ¯ P ( L ( G ) )  do
6:
           compute the corrupted observation ϕ ( w * ) by Algorithm 1
7:
     end while
8:
end procedure
Example 4. 
Following Algorithm 2, choose a harmful state ( 4 F , 7 N ) X s h X n p . Associated with the state is an attack word w a = a b e + d L ( S J - D i a g ( G ) ) . It corresponds to an observation w = a b d . For all w * w ¯ P ( L ( G ) ) , the attack function ξ is computed by Algorithm 1— ξ ( ε ) = ε , ξ ( a ) = a , ξ ( a b ) = a b e + , and ξ ( a b d ) = a b e + d —and the corrupting function is synthesized accordingly: ϕ ( ε ) = ε , ϕ ( a ) = ε , ϕ ( a b ) = e , and ϕ ( a b d ) = e d . The key point is that the attack word a b is not selected in the synthesis procedure, i.e., it holds that ξ ( a b ) = a b e + rather than ξ ( a b ) = a b . This means that the attacker implements its attacks by first erasing the occurrence of event a, then erasing event b, and finally inserting e + while observing a b d .

8. Conclusions and Future Work

This paper investigated the problem of fault diagnosis under sensor network attacks. The notion of a successful attacker is proposed; it can degrade fault diagnosis without being discovered by the operator. We construct a joint diagnoser (JD) to describe all the behavior of the system under all possible sensor attacks. Then, the SD is refined to stealthy joint diagnoser (SJD), which includes stealthy attacks only. Based on it, a necessary and sufficient condition for the existence of a successful attacker is presented. Finally, we propose an algorithmic procedure to synthesize successful attacks from the SJD. In the future, we plan to extend the proposed diagnoser-based approach to diagnosability verification under attack. On the other hand, the decentralized setting should be further considered.

Author Contributions

T.K.: conceptualization, formal analysis, writing—original draft. Y.H.: formal analysis, methodology, writing and editing. D.L.: project administration, supervision. All authors have read and agreed to the published version of the manuscript.

Funding

This work was partially supported by the Complex Systems International Joint Research Center of Shaanxi Province and Xi’an Theory and Applications of Discrete Event Dynamic Systems International Science and Technology Cooperation Center.

Data Availability Statement

Enquiries about data availability should be directed to the authors.

Conflicts of Interest

The authors declare that they have no conflicts of interest.

Abbreviations

The following abbreviations are used in this manuscript:
DESDiscrete event system
CPSCyber–physical system
JDJoint diagnoser
SJDStealthy joint diagnoser
GPlant automaton
D i a g ( G ) Diagnoser
D i a g a t t ( G ) Attacker diagnoser
D i a g o p r ( G ) Operator diagnoser
γ Diagnosis function
γ a t t Attacker diagnosis function
γ o p r Operator diagnosis function
rDiagnosis pair function
PNatural projection
ξ Attack function
P ^ Operator mask

References

  1. Chen, J.; Liu, B.; Li, T.; Hu, Y. Multiplicative Attacks with Essential Stealthiness in Sensor and Actuator Loops against Cyber-Physical Systems. Sensors 2023, 23, 1957. [Google Scholar] [CrossRef] [PubMed]
  2. Suprabhath Koduru, S.; Machina, V.S.P.; Madichetty, S. Cyber attacks in cyber-physical microgrid systems: A comprehensive review. Energies 2023, 16, 4573. [Google Scholar] [CrossRef]
  3. He, Z.; Tang, B.; Luan, F. An improved African vulture optimization algorithm for dual-resource constrained multi-objective flexible job shop scheduling problems. Sensors 2022, 23, 90. [Google Scholar] [CrossRef] [PubMed]
  4. Yu, Z.; Gao, H.; Cong, X.; Wu, N.; Song, H.H. A Survey on Cyber-Physical Systems Security. IEEE Internet Things J. 2023, 10, 21670–21686. [Google Scholar] [CrossRef]
  5. Goetz, C.; Humm, B. Decentralized real-time anomaly detection in cyber-physical production systems under industry constraints. Sensors 2023, 23, 4207. [Google Scholar] [CrossRef]
  6. Cassandras, C.G.; Lafortune, S. Introduction to Discrete Event Systems; Springer: New York, NY, USA, 2019. [Google Scholar]
  7. Sampath, M.; Sengupta, R.; Lafortune, S.; Sinnamohideen, K.; Teneketzis, D. Diagnosability of discrete-event systems. IEEE Trans. Autom. Control 1995, 40, 1555–1575. [Google Scholar] [CrossRef]
  8. Sampath, M.; Sengupta, R.; Lafortune, S.; Sinnamohideen, K.; Teneketzis, D. Failure diagnosis using discrete event models. IEEE Trans. Control Syst. Technol. 1996, 44, 105–124. [Google Scholar] [CrossRef]
  9. Lafortune, S.; Lin, F.; Hadjicostis, C.N. On the history of diagnosability and opacity in discrete event systems. Annu. Rev. Control. 2018, 45, 257–266. [Google Scholar] [CrossRef]
  10. Basile, F.; Chiacchio, P.; De Tommasi, G. An efficient approach for online diagnosis of discrete event systems. IEEE Trans. Autom. Control 2009, 54, 748–759. [Google Scholar] [CrossRef]
  11. Basile, F.; Cabasino, M.P.; Seatzu, C. Diagnosability analysis of labeled time Petri net systems. IEEE Trans. Autom. Control 2016, 62, 1384–1396. [Google Scholar] [CrossRef]
  12. Cong, X.; Fanti, M.P.; Mangini, A.M.; Li, Z. Decentralized diagnosis by Petri nets and integer linear programming. IEEE Trans. Syst. Man Cybern. 2017, 48, 1689–1700. [Google Scholar] [CrossRef]
  13. Yu, Z.; Qi, Y.; Cong, X. Decentralized Marking Fault Diagnosis of Labeled Petri Nets. IEEE Access 2023, 11, 99168–99177. [Google Scholar] [CrossRef]
  14. Zaytoon, J.; Lafortune, S. Overview of fault diagnosis methods for discrete event systems. Annu. Rev. Control. 2013, 37, 308–320. [Google Scholar] [CrossRef]
  15. Carvalho, L.K.; Basilio, J.C.; Moreira, M.V. Robust diagnosis of discrete event systems against intermittent loss of observations. Automatica 2012, 48, 2068–2078. [Google Scholar] [CrossRef]
  16. Carvalho, L.K.; Moreira, M.V.; Basilio, J.C.; Lafortune, S. Robust diagnosis of discrete-event systems against permanent loss of observations. Automatica 2013, 49, 223–231. [Google Scholar] [CrossRef]
  17. Takai, S. A general framework for diagnosis of discrete event systems subject to sensor failures. Automatica 2021, 129, 109669. [Google Scholar] [CrossRef]
  18. Carvalho, L.K.; Wu, Y.C.; Kwong, R.; Lafortune, S. Detection and mitigation of classes of attacks in supervisory control systems. Automatica 2018, 97, 121–133. [Google Scholar] [CrossRef]
  19. Yu, Z.; Duan, X.; Cong, X.; Li, X.; Zheng, L. Detection of actuator enablement attacks by Petri nets in supervisory control systems. Mathematics 2023, 11, 943. [Google Scholar] [CrossRef]
  20. Zhang, Q.; Seatzu, C.; Li, Z.; Giua, A. Joint state estimation under attack of discrete event systems. IEEE Access 2021, 9, 168068–168079. [Google Scholar] [CrossRef]
  21. Zhang, Q.; Seatzu, C.; Li, Z.; Giua, A. Selection of a successful attack function in discrete event systems. Sci. Rep. 2022, 12, 16302. [Google Scholar] [CrossRef]
  22. Meira-Góes, R.; Kang, E.; Kwong, R.H.; Lafortune, S. Synthesis of sensor deception attacks at the supervisory layer of Cyber-Physical Systems. Automatica 2020, 121, 109172. [Google Scholar] [CrossRef]
  23. Meira-Góes, R.; Marchand, H.; Lafortune, S. Synthesis of supervisors robust against sensor deception attacks. IEEE Trans. Autom. Control 2021, 66, 4990–4997. [Google Scholar] [CrossRef]
  24. Kang, T.; Seatzu, C.; Li, Z.; Giua, A. Fault Diagnosis of Discrete Event Systems Under Attack. In Proceedings of the 2023 62nd IEEE Conference on Decision and Control (CDC), Singapore, 13–15 December 2023; pp. 7923–7929. [Google Scholar]
  25. Li, Y.; Hadjicostis, C.N.; Wu, N. Tamper-tolerant diagnosability under bounded or unbounded attacks. IFAC-Paper 2022, 55, 52–57. [Google Scholar] [CrossRef]
  26. Hadjicostis, C.N.; Lafortune, S.; Lin, F.; Su, R. Cybersecurity and Supervisory Control: A Tutorial on Robust State Estimation, Attack Synthesis, and Resilient Control. In Proceedings of the 2022 IEEE 61st Conference on Decision and Control (CDC), Cancún, Mexico, 6–9 December 2022; pp. 3020–3040. [Google Scholar]
Figure 1. Fault diagnosis architecture under attack. To make the architecture more illustrative, different components are represented by different colors.
Figure 1. Fault diagnosis architecture under attack. To make the architecture more illustrative, different components are represented by different colors.
Sensors 24 04445 g001
Figure 2. (a) A plant G and (b) its diagnoser D i a g ( G ) .
Figure 2. (a) A plant G and (b) its diagnoser D i a g ( G ) .
Sensors 24 04445 g002
Figure 3. A fault diagnosis system under attack.
Figure 3. A fault diagnosis system under attack.
Sensors 24 04445 g003
Figure 4. (a) D i a g a t t ( G ) and (b) D i a g o p r ( G ) for G in Figure 2a.
Figure 4. (a) D i a g a t t ( G ) and (b) D i a g o p r ( G ) for G in Figure 2a.
Sensors 24 04445 g004
Figure 5. J- D i a g ( G ) in Example 2.
Figure 5. J- D i a g ( G ) in Example 2.
Sensors 24 04445 g005
Figure 6. S J - D i a g ( G ) in Example 3.
Figure 6. S J - D i a g ( G ) in Example 3.
Sensors 24 04445 g006
Table 1. Comparison of related works, where the "✓" symbol indicates the selection of an option.
Table 1. Comparison of related works, where the "✓" symbol indicates the selection of an option.
ReferenceSensor FailuresSensor AttacksAttack DetectionFault DiagnosisAttack Synthesis
[15,16,17]
[18,19]
[20,21,22,23]
[25,26]
This work
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.

Share and Cite

MDPI and ACS Style

Kang, T.; Hou, Y.; Liu, D. Sensor Network Attack Synthesis against Fault Diagnosis of Discrete Event Systems. Sensors 2024, 24, 4445. https://doi.org/10.3390/s24144445

AMA Style

Kang T, Hou Y, Liu D. Sensor Network Attack Synthesis against Fault Diagnosis of Discrete Event Systems. Sensors. 2024; 24(14):4445. https://doi.org/10.3390/s24144445

Chicago/Turabian Style

Kang, Tenglong, Yifan Hou, and Ding Liu. 2024. "Sensor Network Attack Synthesis against Fault Diagnosis of Discrete Event Systems" Sensors 24, no. 14: 4445. https://doi.org/10.3390/s24144445

APA Style

Kang, T., Hou, Y., & Liu, D. (2024). Sensor Network Attack Synthesis against Fault Diagnosis of Discrete Event Systems. Sensors, 24(14), 4445. https://doi.org/10.3390/s24144445

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop