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 [,,,,]. 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) []. 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 [,,] and Petri nets [,,,]. A comprehensive survey can be found in []. 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 [], 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., [,,]. For a survey of the work in this domain, we refer to []. 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 [] 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 [,], state estimation [,], and supervisory control [,]. However, very few studies have been devoted to fault diagnosis under attack. Apart from our earlier work [], two recent contributions in this context are [,]. In these works, from a defense viewpoint, the authors aim to capture the fact that fault diagnosis can be properly performed against malicious attacks.

Figure 1.
Fault diagnosis architecture under attack. To make the architecture more illustrative, different components are represented by different colors.
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.

Table 1.
Comparison of related works, where the "✓" symbol indicates the selection of an option.
Compared with our conference paper [] 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 [] for more details. It is assumed that a DES to be diagnosed is modeled as a finite-state automaton (automaton for short) , where Q is the finite set of states, is the finite set of events, is the partial transition function, and is the initial state. Suppose that set is divided into the observable event set and the unobservable event set . The set of active events at state q is defined as , where “!” means “defined”. The language generated by G, denoted by or simply L, is defined as , where denotes the Kleene closure of . Let s denote a word of L. The set of the prefixes of s is denoted as .
The natural projection is defined as (where is the empty word)
The inverse projection is defined as , i.e., consists of all words s in whose observations are w.
Let and . The parallel composition between and is defined as , where and ; and ; and ; otherwise, it is undefined. In the definition of , denotes the accessible part of an automaton.
3.2. Fault Diagnosis
In the literature of fault diagnosis in DESs, the unobservable event set is further partitioned into the set of regular unobservable events and the set of fault events . Let denote the set of all finite words in L that end with a fault event f. With some abuse of notation, denotes that . A word s is said to be faulty (resp., normal) if (resp., ). The fault diagnosis problem in a DES aims to decide, using the current observation , if a fault has already occurred or not. To solve this problem, one wishes to build a diagnosis function associating each observation to a diagnosis state such that
In other words, an observation w is called normal if since, in this case, no word producing w contains a fault; faulty if 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
Its construction procedure is detailed in []. By construction, it holds . The diagnoser state space is a subset of . The diagnoser allows one to associate every state to a diagnosis value , where . The diagnoser state is negative if ; positive if ; uncertain if . Figure 2a shows a plant G, where , , and . The corresponding diagnoser is shown in Figure 2b.

Figure 2.
(a) A plant G and (b) its diagnoser .
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 , the attacker observes an original observation and then produces a corrupted observation . The operator computes diagnosis state from the corrupted observation .

Figure 3.
A fault diagnosis system under attack.
To formally define the attack function in Figure 3, we denote by (resp., ) the set of events subject to SE-attacks (resp., SI-attacks). Correspondingly, we define as the set of erased events and as the set of inserted events. We also define as the attack alphabet.
Definition 1.
Given a plant G with sets and , an attack function satisfies the following constraints:
(1) ;
(2) , where and :
Statement (1) in Definition 1 implies that the attacker may insert an arbitrary word at the initial state before any generated word of G is observed. By Statement (2), the attacker cannot erase if does not belong to . However, it may insert an arbitrary word after . If an event occurs, the attacker may either erase or leave it intact, and then insert any arbitrary word . Compared with the nondeterministic attack function in [], 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 and as , abbreviated as .
An attack function introduces an attack language, denoted as (abbreviated as ). Let be an attack word. Given an attack word , to describe the corrupted observation received by the operator, an operator mask is defined as
We now define two diagnosis functions on . The attacker diagnosis function is defined as , where ; the operator diagnosis function is defined as , where .
Definition 2.
A corrupting function is defined as , where and 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 as output, as shown in Figure 3. We define , abbreviated as , as the corrupted language induced by function . The set of all possible corrupting functions on and is defined as , 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 , determine if the diagnosis states based on the corresponding w and are consistent.
In the worst-case scenario, a faulty observation w that allows for the detection of a fault (i.e., positive diagnosis state ) can be corrupted into a normal or ambiguous observation corresponding to the absence of the fault (i.e., negative diagnosis state ) or to an uncertain situation (i.e., uncertain diagnosis state ). 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 with , which may be corrupted into another observation and .
Under such a harmful attacker (that receives w), the occurrence of a fault is hidden from the operator (that perceives ); 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 [,]. 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 .
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 defined as follows. Given a plant G, the set of stealthy words on is defined as , while the set of exposing words on is defined as . A stealthy word produces a corrupted observation , 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 [], we detail the constructions of two special diagnosers, called Attacker Diagnoser and Operator Diagnoser. The former diagnoser describes all attack words that can be generated under attack. The latter diagnoser describes how all words are recognized by the operator. Starting from a diagnoser , we build the following:
- Attacker Diagnoser through self-looping each state with all events in and then adding in parallel to each event the corresponding event .
- Operator Diagnoser through self-looping each state with all events in , then adding in parallel to each event the corresponding event , and finally adding a dump state that is reached by all undefined transitions.
Example 1.
Consider the plant G in Figure 2a. Let and . The corresponding and are shown in Figure 4a and Figure 4b, respectively.

Figure 4.
(a) and (b) for G in Figure 2a.
Proposition 1.
Given a nominal diagnoser , let be the attacker diagnoser. It holds that
(1) ;
(2) .
Proof.
Consider first Statement (1). (⇐) By the construction of , given a word and , there exists a corresponding attack word such that . (⇒) Consider a word that reaches a state and only contains events in , implying an original observation. At each state of , all events are in a self-loop, which implies that can be corrupted by inserting a word of fake events in . If the word is generated by executing a transition with , it may happen that the “parallel" transition is executed corresponding to an attack that erases . Therefore, there exists a function and an observation such that . 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 based on w is the same as that of based on s, where .
Proposition 2.
Given a nominal diagnoser , let be the operator diagnoser. It holds that
(1) ;
(2) ;
(3) : if , ; if , .
Proof.
Statement (1) is first considered. By construction the , it includes all the words in . The following is to prove that all the words either belong to or . Consider a word that reaches a state and only contains events in , implying an original observation received by the operator. At each state, all events are in a self-loop, which corresponds to the generation of . By the definition of , it holds that , i.e., . If the word is generated by executing a transition with , it may happen that the “parallel” transition is executed and thus , i.e., . Then, if the word yields , then , i.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 and can be generated by . By Statement (2), a word in generated by can correspond to a corrupted observation recognized by the operator. Statement (3) implies that (i) the diagnosis state estimation of based on a stealthy word is the same as that of based on , where ; (ii) all exposing words yield .
6.2. Joint Diagnoser and Its Refining
Definition 5.
A joint diagnoser (JD for short) J- is defined as J-.
As defined, every state of J- is a pair . The states of J- can be partitioned into stealthy states and exposing states as follows.
Definition 6.
Given a joint diagnoser J-, the set of exposing states is defined as ; the set of stealthy states is defined as .
If an exposing word yields an exposing state, we conclude that the attacker that produces is stealthy. However, if a stealthy word yields a stealthy state, it can only be inferred that the attacker producing 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 , which can be computed iteratively by a procedure in []. In the first iteration,
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 .
Example 2.
The joint diagnoser for the preceding G is shown in Figure 5, where the exposing states in are highlighted in brown while the stealthy states in are highlighted in gray. Let us focus on a stealthy state . In the case that the occurrence of event d will take to an exposing state , we find that i) d cannot be erased; ii) the inserted event will reach another exposing state . By Equation (4), 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.

Figure 5.
J- in Example 2.
Definition 7.
The stealthy joint diagnoser (SJD, for short) with respect to a joint diagnoser J- is defined as -, where and .
The resulting SJD is obtained by removing all states in from a JD and taking its accessible part. Then, we define a subset of the states of -, called pre-empting states, which will be used in the procedure to extract an attack function from -.
Definition 8.
Given a JD J- with the corresponding SJD -, the set of pre-empting states of - is defined as
the set of non-pre-empting states of - is defined as .
A state is pre-empting if i) there exists an event whose occurrence (even if erased) causes J- to lead outside ; 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 is a pre-empting state (highlighted in green), where event d must be pre-empted by inserting a fake event to reach a state ; otherwise, the occurrence of will take to an exposing state .
6.3. Synthesis of Attackers
In order to synthesize an attacker, the following definition is first required.
Definition 9.
Let be a state and be the set of non-pre-empting states in the SJD -.
(1) The set of events in enabled at is defined as .
(2) The set of words consisting of events in that originate from and lead to a non-pre-empting state is defined as -.
The following objective is to show how an attacker may determine an attack function from an SJD. In [], 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 [], 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: and - Ensure: corrupting function
|
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 in the set - (Steps 3 and 4). In Step 5, is computed, and the new current state of - 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 , is added to I. If is enabled at , is added to I (Steps 8 to 10). In Step 11, an event and the insertion of a word - are selected. If the current state with the occurrence of is a non-pre-empting state, an attack word is produced, which is either or the concatenation of and - (Step 14). Otherwise, another attack word is produced as the concatenation of and (Step 15). The corresponding corrupting function is computed in Step 16. Step 17 updates the observation w to . 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 , the corrupted observation 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 be the diagnoser and - be the SJD. The following implication holds:
Proof.
(If) Assume that there exists an observation and an attack function such that and , where the attack function is synthesized by Algorithm 1. By Proposition 3, the attack word is a stealthy word, i.e., . By Propositions 1 and 2, we have and , i.e., and . By J-, and by the definition of -, we have . Since is computed by selecting , which ends in , by Algorithm 1, .
(Only if) Assume that there exists an attack word in - such that and . By J-, and by the definition of -, it holds that and . By Propositions 1 and 2, we have and , i.e., and . □
According to the above result, a state pair in the joint diagnoser reached by an attack word represents the joint diagnosis state estimation, where describes the original diagnosis state estimation of the attacker based on the original observation w, where , and describes the corrupted diagnosis state estimation of the operator based on the corrupted observation .
Finally, we conclude this section by the complexity analysis of the proposed approach. Let be a nominal diagnoser with states. By construction, the attacker diagnoser has the same set of states of , and so does the operator diagnoser except for the dump state . Since the JD J- is the parallel composition of and , its maximum number of states is . Hence, the complexity of building an SJD is , 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 , a diagnosis pair function associating to a diagnosis state pair is defined as , where and are the attacker and operator diagnosis functions, respectively.
From the definitions of and , it holds that , where and . A more systematic way to compute the diagnosis pair function is by using an SJD. Let . By Theorem 1, the SJD allows one to associate every state to a diagnosis state pair , i.e., and 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 . The set of all diagnosis state pairs is defined as , which can be partitioned into , where , , and .
Definition 11.
Let - be an SJD. A state is correct if ; wrong non-harmful if ; harmful if . Denote the set of correct states, the set of wrong non-harmful states, and the set of harmful states by , , and , 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 - contains a harmful state, i.e., .
Proof.
(If) Suppose that - contains a harmful state such that , where . By Theorem 1, associated with is an attack word such that . Hence, there exists an attacker that alters the observation w into such that , i.e., . By Definition 3, the attacker is harmful. By the construction of -, 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 satisfying . By Theorem 1, there exists a reachable state in - with the occurrence of such that . □
Example 3.
Let us continue with Example 2. After refining, the SJD is shown in Figure 6. Let be an attack word that yields the wrong non-harmful state . This implies that the diagnosis state of the attacker based on is while the diagnosis state of the operator based on is . 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.

Figure 6.
- in Example 3.
Let the evolution continue. Another word yields a harmful state in -. By Theorem 2, there exists a successful attacker for G that produces the attack word . At this point, the attacker is certain that the fault has occurred based on ; however, based on the corrupted observation , 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 - be the SJD. A successful corrupting function ϕ can be computed if and only if .
Proof.
(If) Suppose that a state in - satisfies and , where . By , the attack word does not end in a pre-empting state. According to Algorithm 1 and Proposition 3, we see that is stealthy. Since , by Theorem 1, we have such that and with , where the attacker alters the observation w into such that , i.e., . 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 does not end in a pre-empting state of -, i.e., . On the other hand, as function is harmful, according to Definition 3, there exists an observation that can be changed into an observation , and . By , it holds that and . Since - contains all possible stealthy attacks, by Theorem 1, there must exist a state in - with the occurrence of such that and . By , i.e., , we see that the state is harmful. It holds that , i.e., . □
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 (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: and - Ensure: successful corrupting function
|
Example 4.
Following Algorithm 2, choose a harmful state . Associated with the state is an attack word -. It corresponds to an observation . For all , the attack function ξ is computed by Algorithm 1—, , , and —and the corrupting function is synthesized accordingly: , , , and . The key point is that the attack word is not selected in the synthesis procedure, i.e., it holds that rather than . This means that the attacker implements its attacks by first erasing the occurrence of event a, then erasing event b, and finally inserting while observing .
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:
DES | Discrete event system |
CPS | Cyber–physical system |
JD | Joint diagnoser |
SJD | Stealthy joint diagnoser |
G | Plant automaton |
Diagnoser | |
Attacker diagnoser | |
Operator diagnoser | |
Diagnosis function | |
Attacker diagnosis function | |
Operator diagnosis function | |
r | Diagnosis pair function |
P | Natural projection |
Attack function | |
Operator mask |
References
- 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]
- 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]
- 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]
- 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]
- Goetz, C.; Humm, B. Decentralized real-time anomaly detection in cyber-physical production systems under industry constraints. Sensors 2023, 23, 4207. [Google Scholar] [CrossRef]
- Cassandras, C.G.; Lafortune, S. Introduction to Discrete Event Systems; Springer: New York, NY, USA, 2019. [Google Scholar]
- 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]
- 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]
- 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]
- 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]
- 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]
- 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]
- Yu, Z.; Qi, Y.; Cong, X. Decentralized Marking Fault Diagnosis of Labeled Petri Nets. IEEE Access 2023, 11, 99168–99177. [Google Scholar] [CrossRef]
- Zaytoon, J.; Lafortune, S. Overview of fault diagnosis methods for discrete event systems. Annu. Rev. Control. 2013, 37, 308–320. [Google Scholar] [CrossRef]
- 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]
- 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]
- Takai, S. A general framework for diagnosis of discrete event systems subject to sensor failures. Automatica 2021, 129, 109669. [Google Scholar] [CrossRef]
- 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]
- 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]
- 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]
- 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]
- 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]
- 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]
- 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]
- Li, Y.; Hadjicostis, C.N.; Wu, N. Tamper-tolerant diagnosability under bounded or unbounded attacks. IFAC-Paper 2022, 55, 52–57. [Google Scholar] [CrossRef]
- 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]
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. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).