Download as pdf or txt
Download as pdf or txt
You are on page 1of 12

1474 IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS, VOL. 12, NO.

4, AUGUST 2016

Securing DNP3 Broadcast Communications


in SCADA Systems
Raphael Amoah, Member, IEEE, Seyit Camtepe, Member, IEEE, and Ernest Foo, Member, IEEE

Abstract—The Distributed Network Protocol version 3 such as Profinet [27] and Modbus [24]. The Distributed Network
(DNP3) provides Secure Authentication (DNP3-SA) as the Protocol version 3 (DNP3) [16] is one of the standard engineer-
mechanism to authenticate unicast messages from a mas- ing protocols for SCADA systems. It is designed to mainly
ter station to its outstations in supervisory control and data
acquisition systems. In large-scale systems, it may be nec- facilitate interactions between outstations and their master sta-
essary to broadcast a critical request from a master sta- tions in an interconnected SCADA network. The DNP3 proto-
tion to multiple outstations at once. The DNP3 protocol col supports multidrop and the data concentrator architectures,
standard describes the use of broadcast communication; through which large numbers of outstations and master stations
however, it does not specify its security. This paper is the from multiple sites can concurrently interact. These types of
first to present DNP3 Secure Authentication for Broadcast large-scale DNP3 deployments are mainly used for power grid
(DNP3-SAB), a new lightweight security scheme for broad-
cast mode communication. This scheme is based on hash automation. The DNP3 protocol provides a security mechanism
chain and only makes use of the existing cryptographic called secure authentication (DNP3-SA) [11]. This is primarily
primitives specified in DNP3-SA. The scheme integrates it- a unilateral keyed-hash message authentication code (HMAC)
self into the DNP3-SA key update process. The proposed mechanism used to secure DNP3 messages. DNP3 is one of the
scheme is modeled, validated, and verified using colored first standardized SCADA protocols that attempt to provide a
Petri Nets against the most common protocol attacks such security mechanism.
as modification, injection, and replay. Performance analy-
sis on our scheme and the existing DNP3-SA modes (NACR In [3] and [4], Amoah, Suriadi, Camtepe, and Foo presented
and AGM) shows that DNP3-SAB reduces the communica- formal analysis of DNP3-SA using CPN. The authors con-
tion overhead significantly at the cost of an increase with structed models to analyze each of the DNP3-SA operational
a constant term in processing and storage overhead. This modes. Each security analysis of the models was primarily
benefit is maintained even when DNP3-SAB is under attack. limited to unicast communication: one master station and one
Index Terms—Colored Petri Nets (CPN), Distributed outstation. Unicast communication is one of the two communi-
Network Protocol version 3 (DNP3), Distributed Network cation modes supported by the DNP3 protocol [9, p. 70].
Protocol version 3 Secure Authentication (DNP3-SA), Dis- This paper focuses on DNP3 broadcast mode, which is the
tributed Network Protocol version 3 Secure Authentication second of the communication modes supported by the DNP3
for Broadcast (DNP3-SAB), formal methods, supervisory protocol. DNP3 broadcast communication allows a master sta-
control and data acquisition (SCADA).
tion to simultaneously communicate with multiple outstations
I. INTRODUCTION with a single command. One of the advantages of this mode
is that it reduces delay and overhead in large-scale systems.
UPERVISORY control and data acquisition (SCADA) sys-
S tems are predominant among the electricity grids, and the
emergence of smart grids systems is revolutionizing the energy
Broadcast is an important feature for cases of emergencies. For
example, an emergency shut-down of stations may be required
to be broadcast due to an electrical incident. The DNP3 broad-
industry [13], [22]. Reports [15] and research [23] on SCADA cast mode does not have any security mechanism described in
security have shown an increasing number of cyber incidents the protocol specification. This gap in the protocol can lead
and attacks targeting critical infrastructure that use SCADA to devastating problems. For example, an attacker who has ac-
systems. These incidents and attacks are expected to increase cess to the network may modify commands or execute unau-
in number and severity because legacy SCADA systems and thorized commands simultaneously on multiple outstations to
protocols were not designed to work in insecure environments interrupt services.
such as the Internet. Hence, the contribution of this paper is twofold. First, we
A SCADA network is composed of various components that present a new security scheme for DNP3 broadcast mode called
range from hardware (IEDs, PLC, RTU) to standard protocols Secure Authentication for Broadcast (SAB). Our scheme se-
cures DNP3 broadcast through the use of a one-way hash func-
Manuscript received August 08, 2015; revised April 28, 2016; accepted
June 25, 2016. Date of publication July 07, 2016; date of current version tion (hash chain) that can only be generated and distributed by
August 04, 2016. Paper no. TII-16-0082. (Corresponding author: R. the master station and not by any of the outstations. The out-
Amoah.) stations verify the parameters provided by the master station by
The authors are with the School of Electrical Engineering and
Computer Science, Queensland University of Technology, Brisbane, using initial predistributed credentials. To our knowledge, this
QLD 4001, Australia (e-mail: r.amoah@qut.edu.au; seyit.camtepe@qut. is the first proposal for DNP3 broadcast authentication. SAB
edu.au; e.foo@qut.edu.au). extends the DNP3-SA protocol by reusing its existing crypto-
Color versions of one or more of the figures in this paper are available
online at http://ieeexplore.ieee.org
graphic primitives with the hash chain such that it does not
Digital Object Identifier 10.1109/TII.2016.2587883 require a major upgrade in existing platforms.

1551-3203 © 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission.
See http://www.ieee.org/publications standards/publications/rights/index.html for more information.
AMOAH et al.: SECURING DNP3 BROADCAST COMMUNICATIONS IN SCADA SYSTEMS 1475

The second contribution of this paper uses colored Petri Nets Many of the standardized SCADA protocols support differ-
(CPN) to create an executable DNP3-SAB model and formally ent types of communication modes; however, traditional secu-
analyze the security behavior of our scheme. CPNs [20] are rity solutions and SCADA security proposals are mostly limited
a widely used formalism for designs, specifications, simula- to unicast. This paper focuses on security of DNP3 broadcast
tions, and verifications. Its application in various domains such communication. Broadcast communication and its security have
as security protocols [2], [28] have proven to be trustworthy gained wide attention in the sensor network domain. Some of
and reliable. This paper uses CPN because it has the ability to the solutions from sensor networks have been adapted to secure
conveniently express characteristics such as concurrency, data various communication modes in SCADA systems. Relevant to
distribution, asynchronous, and nondeterministic features that the topic of this paper, Choi, Kim, Won, and Kim proposed an
are inherent in various communication and security protocols. advanced key-management architecture for unicast and broad-
As the DNP3 broadcast mode involves a master station inter- cast communications in SCADA systems [7]. The proposed
acting with multiple outstations, the use of CPN’s hierarchical scheme is extended to an efficient secure group communication
structure and parameterization technique become an important scheme in SCADA systems [8]. Later, in [21], it has been shown
requirement. This is because the hierarchical structure supports that solutions by Choi, Kim, Won, and Kim are only feasible
a modular approach for modeling, where the behavior of large with the aid of trusted entities that facilitates key establishment
systems can be captured at different levels of abstraction. The between SCADA entities. Though these schemes prove promis-
parameterization technique enables a number of attacks to be ing, they are constrained with availability issues. Each trusted
captured for analysis as part of the SAB model without the need entity forms a single point of failure, meaning that failure of
to create a new model. By using this CPN tool, we show that even one trusted entity may threaten continuity of the whole
our proposed scheme (the SAB CPN model) provides DNP3 security process.
broadcast authentication. We also show that our scheme re- These schemes cannot be directly applied to DNP3 and
duces communication overhead at the cost of a minor increase other SCADA protocols. This is due to their specific archi-
in processing and storage overhead. tecture and application limitations. Moreover, existing devices
This paper is organized as follows. Section II presents the with DNP3 capabilities have limited support for cryptographic
related work. Section III presents the overview of the DNP3-SA methods (i.e., SHA-1-HMAC, SHA-256-HMAC, AES-GMAC,
protocol. Section IV presents the proposed DNP3-SAB scheme. and AES-128 key wrap) due to their resource limitations. This
The CPN modeling of DNP3-SAB and its approach are pre- requires the proposed SAB solution to be compliant to these
sented in Section V. The CPN model description is presented cryptographic methods only.
in Section VI. The formal analysis of DNP3-SAB CPN model Identifying the gap of missing authentication for DNP3 broad-
using state-space tool is presented and discussed in Section VII. cast communication, this paper employs the hash-chain concept
The performance analysis is presented in Section VIII. Finally, from the TESLA protocol [25] (Timed Efficient Stream Loss-
Section IX presents the discussions and conclusion of this paper. tolerant Authentication) to secure DNP3 broadcast messages in
SCADA systems. TESLA is a broadcast authentication protocol
that uses hash chains and time-delayed key disclosure. TESLA
generates a key chain by using the relation of H(Ski ) = Ski−1 .
II. RELATED WORK
Sender uses Ski to authenticate a broadcast message Mti sent
Many of the security flaws found in SCADA are associated at time interval ti . The broadcast message also includes the
with the communication protocols used in control systems. This key used in the previous time interval (i.e., Mti ||Ski−1 ). That
is because SCADA protocols were not designed with a security means, the key Ski will be disclosed along with a message in
mindset. For instance, in 2004, Byres, Franz, and Miller [5] the coming time intervals, e.g., time interval ti+1 , and the mes-
presented the use of attack trees in assessing flaws in the Mod- sage Mti must be stored until then. Disclosed key Ski can then
bus protocol. The authors showed how to identify and com- be used to authenticate the stored message Mti . Moreover, the
promise a Modbus device to execute arbitrary requests. Later, disclosed key Ski can be checked for its validity using its re-
in 2008, Huitsing, Chandia, Papa, and Shenoi [14] presented lation with the keys disclosed earlier (e.g., H(Ski ) = Ski−1 or
an attack taxonomy on the Modbus protocol, where some of H(H(Ski )) = Ski−2 ). TESLA is considered secure because it
the attacks could be used to exploit Modbus’s assets (serial allows all receivers of a given broadcast or multicast message
and TCP) in various ways. In the subsequent year (2009), East, to verify its integrity and authenticity. Moreover, it is consid-
Butts, Papa, and Shenoi [10] presented a taxonomy of attacks ered efficient because of its low communication and computa-
on the DNP3 protocol before DNP3-SA was adapted from IEC tional overheads. It scales well on a large number of receivers.
62351 [17]. Moreover, in the same year (2009), Akerberg and However, these benefits of TESLA come at the cost of storage
Bjorkman [1] explored flaws in the Profinet protocol. Similarly, overhead because received messages must be stored until the
in 2011, Cheminod, Pironti, and Sisto [6] presented a formal relevant keys are disclosed and validated.
vulnerability analysis of the Fieldbus access protocol, where TESLA and its derivatives [26] cannot be directly applied
they presented flaws of the protocol that might be susceptible to to the DNP3 protocol due to their domain differences and the
potential replay attacks. In 2014 and 2015, respectively, Amoah, nature of the DNP3 protocol. That is, TESLA and its derivatives
Suriadi, Camtepe, and Foo [3], [4] presented formal analyses of depend on time synchronization and the revelation of keys. Ad-
the DNP3-SA protocol using the CPNTools [18], where the ditionally, TESLA authenticates its initial packet with a digi-
authors also presented new flaws in the DNP3-SA protocol. tal signature, which can be seen as costly for SCADA systems
1476 IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS, VOL. 12, NO. 4, AUGUST 2016

Fig. 2. DNP3-SA AGM operation.


Fig. 1. DNP3-SA NACR operation.
master station sends a request to an outstation. At the receipt of
the message, the outstation sends a challenge message, which
because SCADA devices are constrained with processing power. contains an algorithm (H), nonce (P ), and a challenge sequence
Though time is a crucial factor in SCADA systems, our approach number (KSn) to the master. The master uses the H algorithm
to secure SCADA systems using the DNP3 protocol does not de- from the challenge received and the shared-key (Skm o ) on the
pend on strict time synchronization as TESLA does. Moreover, entire challenge data together with the request to create a MAC
DNP3 provides an authentication scheme for unicast commu- tag. The MAC tag is then sent to the outstation. On receiving
nication (DNP3-SA) that makes use of certain cryptographic the MAC tag, the outstation calculates its MAC tag by using the
primitives and has a user and key management scheme that up- same computational approach and elements used by the master
dates keys regularly after a certain period of time (say minutes up station. A match in the tags indicates an authentication success
to weeks depending on the rate of communication) [16]. Hence, and leads to execution of the request. Otherwise, the outsta-
this paper presents a broadcast authentication scheme based on tion discards the request and sends an error message to the
hash chains and message authentication codes (MACs) which master station.
integrates with the existing user and key management scheme In Fig. 2, a number of challenge–response messages are elim-
of DNP3-SA without needing any major upgrade. Addition- inated. It is assumed that the master station has the “most recent
ally, this paper presents a CPN model to validate and verify the challenge message” from the most recent NACR operation. Tak-
security behavior of SAB with adversarial settings. ing the most recent challenge message into account, the master
is always required to increase KSn from the challenge by 1 for
III. OVERVIEW OF THE DNP3-SA PROTOCOL all AGM operations before a legitimate AGM message can be
composed. Fig. 2 depicts the master station sending an AGM
DNP3 is a layered and nonproprietary protocol, which is de- message to the outstation. The AGM message consists of a re-
signed to facilitate communication between master stations and quest and a MAC tag. The MAC tag is computed by using
outstations via serial-line or TCP/IP protocols through encapsu- the algorithm (H), the session key (Skm o ), the “most recent
lation. DNP3-SA is the embedded security mechanism in the ap- challenge message,” and the request. On receipt of the AGM
plication layer of the DNP3 protocol. Primarily, DNP3-SA uses message, the outstation temporarily stores the MAC tag, ex-
an HMAC mechanism with a secret key, k (i.e., 128 bits) to au- tracts relevant data, computes its own tag, and verifies if the
thenticate critical messages transmitted between interconnected tags match. A successful verification will lead to processing
stations. A critical DNP3 message can either be a request from the request and replying with a response message. A failed
a master station or an unsolicited response from an outstation verification will lead to an error message.
that contains a mandatory code. A mandatory code is defined
as any code that can control stations or set crucial parameters
such as power grid voltages and frequencies. This implies that IV. SECURE AUTHENTICATION FOR BROADCAST
any station that sends a message which includes any manda- The DNP3-SA protocol works well under unicast commu-
tory code will be challenged by the receiving device to prove nication, but it cannot be applied to broadcast communication.
its identity. Authentication in DNP3-SA is unilateral, but the This is because as DNP3-SA uses the challenge–response ap-
mechanism operates in two different modes: two-pass authen- proach, the master station will need to store, remember, and
tication (NACR) and one-pass authentication (AGM) through exchange a number of challenges and response messages with
the HMAC. However, the AGM operation is also dependent on each outstation. This is not practical because there will be de-
NACR. This means that AGM can only be in-use if there has lays and an increase in communication, processing, and storage
been one or more occurrences of NACR operations. This behav- overheads. However, in the absence of an appropriate broadcast
ior enables the AGM to make use of “the most recent challenge authentication mechanism, it is possible for an attacker to broad-
message” from the NACR operation. cast unauthorized commands to be performed by all outstations
An in-depth view of the protocol is provided later in at once. This leads us to design a new security scheme, SAB, to
Section IV (i.e., when providing the SAB scheme). But to facil- secure broadcast mode communication. A detailed description
itate the understanding of the protocol, the operation of NACR of SAB is presented in Fig. 3.
and AGM are presented in Figs. 1 and 2, respectively. It is
important to note that in these figures, it is assumed that ses-
sion key, Skm o , for each user have been securely established
A. Overview of SAB
between the master station and the outstation (this will further The concept of SAB is derived from the TESLA protocol
be explained in Section IV). In Fig. 1, it is depicted that the presented by Perrig, Canetti, Tygar, and Song [25]. SAB is a
AMOAH et al.: SECURING DNP3 BROADCAST COMMUNICATIONS IN SCADA SYSTEMS 1477

Fig. 3. New security scheme for broadcast mode communication.

minimalist broadcast authentication protocol designed only to single symmetric key. Moreover, our scheme is not constrained
use existing cryptographic primitives of DNP3-SA (i.e., SHA- by time like other schemes based on TESLA and most of its
1-HMAC, SHA-256-HMAC, AES-GMAC, and AES-128 key derivatives. Moreover, SAB does not require infrastructure like
wrap) so that existing DNP3 devices can be made compati- a public key infrastructure (PKI), where processor intensive
ble with minimal software upgrades. Intuitively, SAB operates algorithms like RSA are used. A comparison of performance
through a hash chain, which is a linked hash values known to and functionality of SAB using other alternative methods is
master station only. Using the predistributed credentials, the presented in Section VIII.
outstations can only verify the current hash value released with
the current broadcast message, but they cannot produce the hash
B. Operation Details of SAB
value before it is released. Limiting this feature to only the mas-
ter station implies that broadcast messages are generated by the Fig. 3 presents the detailed behavior of SAB. To under-
master station and they are correct. This, therefore, effectively stand the table, the following notations are worth noting. Mas-
secures DNP3 broadcast communication against modification, ter Station and Outstations represent the communicating enti-

spoofing, replay, and injection attacks. This approach is better ties. Skm o and Skm o , respectively, represent the old and new
than some existing schemes because our scheme solves the key session keys of a particular user, which are used to provide
management problem associated with the HMAC mechanism. entity authentication for the data transmitted in the control di-
Thus, instead of the HMAC mechanism using different keys for rection (i.e., from master to outstations). Both session keys
each broadcast message, our scheme uses a hash chain with a are derived from the long-term secret key, U pK. U pK is
1478 IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS, VOL. 12, NO. 4, AUGUST 2016

traditionally manually distributed to all the entities in the con- chain) are required (steps 1–9). It is worth noting that KS  is a
trol system. R is a random bit-string with sufficient length, such variable of the DNP3-SA protocol and it is used for challenging
as 128 bits, to prevent trivial preimage attacks. H represents the master station in the DNP3-SA protocol. KS  is not used
the hash function and is used to compute the hash-chain tags: in SAB, but it is maintained for compatibility reasons with the
S1 = H(R), S2 = H(S1 ), . . . , Sn = H(Sn − 1), which repre- DNP3-SA protocol. Analysis of the DNP3-SA protocol can be
sent hash-chain tags that are produced from a single random found elsewhere [3]. At this point, it is important to note that all
value (R). Sn represents the last hash tag of the hash chain, stations (M and all O) are now set to communicate with normal

while n represents the index of Sn . KS and KS represent DNP3 messages.
challenge messages that contain old and new challenge data, In the part labeled Continuation of New Scheme, we make
respectively. Each challenge contains a key change sequence use of the AGM behavior, as explained in Section III. That is,
number KSn, MAC algorithm H, and a Nonce P . E and D before any broadcast message can be sent, M must first compute
represent symmetric key encryption and decryption schemes, a MAC tag based. Computation of the MAC tag is based on the
respectively, agreed between all the entities. C (ciphertext) rep- request about to be sent, a hash tag from the hash chain and the

resents encrypted (Skm o , Sn , n). M ACS k m o and M ACS k m
o
index value associated with the tag. It is to be noted that the index
represent agreed MAC schemes with keys. tag and tagA repre- is always linked to a particular hash value chosen. In computing
sent MAC tags generated by the master station, while tag  and tagA , M uses the agreed MAC scheme with the recent estab-
tagA represent MAC tags generated by outstations. KSR repre- lished key, Skm 
o , on the message (Si , i, (F C, OH)R eq , UI D ).
sents a request (F C)R eq that contains a user’s key change data. After tagA is obtained, M sends BM (broadcast message),
KC represents the concatenated ciphertext C and the MAC tag which constitutes (Si , i, (F C, OH)R eq , UI D ) and tagA to all
tag. KSC represents a response that contains the status of the O. On the receipt of the message, all O first check if i associ-
user’s key update (F C)R esp and a new challenge message KS  . ated with hash tag, Si is valid (nonnegative value), and i is less
BM represents a broadcast message that contains a request than what is previously stored (Sstored ). There are two main
(F C, OH)R eq , a hash tag Si , the index of the hash tag i, and reasons why this action (i checking) is required: 1) to prevent
the MAC tag tagA . ErrorResp represents an error response. potential replay attacks of a previously recorded message with
UI D represents a user identification number associated with a valid MAC tag; and 2) to take into consideration subsequent
the communicating entities. Sstored , Nstored , Sreceived , and rounds of authentication for legitimate broadcast messages is-
Nreceived store value from Sn , n, Si , and i (where 1 ≤ i < n), sued by the master station. For the replay attack, assuming i is
respectively. Scalc is the variable used to calculate the next hash valid, then all O will continue to perform a MAC tag verification
tag of the hash chain. In this scenario, it is assumed that the for message authentication (line 13); otherwise, the operation is
necessary algorithms and session key, Skm o are preestablished aborted. In checking for message authentication, all O compute
between M and O, but the session key is outdated. Therefore, tagA and verify them against tagA received from the master.
M wishes to update the old session key to a new key. But before A match implies success, which further leads all O to check
M updates the key, it is required that M precreates a hash chain for freshness (the status of hash tag received, line 14) before
for future broadcast communication. In creating the chain, M the broadcast request can be processed. In checking the hash
is required to choose an arbitrary number R (let us say 128 tag, all O use i (Nreceived ) to determine the number of hash
bits) and creates a series of hash tag values using hash chains iterations that must be performed on Si to obtain the final hash
as illustrated in step 1 of Fig. 3. After creating the chain, M tag result, Scalc . Scalc is then compared with the stored hash
can now send a key status request, KSR, to all O to update the tag, SStored . If the hash tags match, then, Scalc is stored as
session key of a particular user (step 2). At the receipt of KSR, the new hash tag value (SStored ), and the broadcast request
all O reply with key status message, KS, which contains the (BM [(F C, OH)R eq ]) is processed. However, if the tags do not
challenge data (H, P , and KSn, from step 3). At the receipt match, then Scalc is discarded and an error response is sent to
of KS, M uses the preshared key, U pK, to encrypt the new M . This action or behavior applies to multiple rounds of au-

session key, Skm o , and the last hash tag of the hash chains, Sn , thentication within SAB. Thus, since every hash tag is linked
together with associated its index, n (step 4). Furthermore, M to an index, it implies that every broadcast message will have
uses H from KS, and the existing (old) session key, Skm o , to a unique hash tag and its associated index for every round of
keyed-hash KS and KSR in order to compute the MAC tag, authentication required. Therefore, for all rounds of authenti-
tag (step 5). Then, M sends KC, which contains ciphertext, cation if the indexes are not valid, the outstations will respond
C, and the MAC tag, tag, to all O (step 6). On receipt of the with error messages just as before in the replay attack. But, if the
message, all O first compute their MAC tag tag  by using the indexes are valid in each round, then the outstations are required
same computational elements used by M and then checks if the to perform the MAC tag verification (line 13). If the MAC tags
tags match (step 7). If the tags match, then all O performs the verification do not match for each round, the outstations will
second action by decrypting KC using U pK and storing the respond with error messages or abort the operation. Otherwise,

contents (Skm o , Sn , and n refer to step 8). At this point, all O the outstations will continue to verify the status of all hash tags
can respond to M with KSC to indicate that the new session for each round (line 14) before the broadcast request can be

key (Skm o ), as well as the last hash tag value of the chain and further processed. A successful hash tag verification in each of
its index are stored (step 9). Furthermore, KSC also includes the rounds will lead to discarding the old hash tag and storing
a new challenge message, KS  , that M uses to reauthenticate the new hash and processing the broadcast request as expected.
itself to all O in case a new key and hash updates (new hash But failures in each round will lead to an error message.
AMOAH et al.: SECURING DNP3 BROADCAST COMMUNICATIONS IN SCADA SYSTEMS 1479

V. CPN MODELING OF THE DNP3-SAB PROTOCOL


A CPN model is a bipartite graph that comprises of two forms
of nodes, places (drawn as ellipses) and transitions (drawn as
rectangles), and directed edges that are known as arcs that con-
nect places to transitions. The places and transitions respectively
represent states and events in a given model. They are associated
with color sets (simple and compound color sets) that enable a
place to store data (token(s)). Simple color sets are made of data
types such as string, integer, and boolean values. Compound
color sets (product, record, and union) are color sets that are
constructed on simple colored sets. For example, colset Eg Fig. 4. DNP3-SA CPN on multidrop—top-level page.
= product string ∗ integer. The distribution of a to-
ken from one place to another through a transition represents
a state change. As previously, we use the CPN tool mainly be- because the model is only accepting specific string val-
cause of its ability to conveniently express characteristics such as ues as requests. On the other hand, we use CPN’s SML
concurrency, parallel, data distribution, asynchronous, and non- functions to simulate the operations of the primitive cap-
deterministic features that are inherent in many systems. With tured. But it is worth noting that SML functions used
such abilities, different level of abstractions of the protocol can are mostly symbolic rather than the real operation. For
be captured in order to validate and verify the correctness of our example, the outstation’s way of generating appropriate
scheme. In addition, essential security primitives and behav- responses based on a particular request from the master
iors of SAB can be captured and represented as “black-boxes” does not perform the actual generation of responses ex-
through the CPN functional programming language Standard pected from the protocol specification. Rather, the SML
ML (SML) [12]. This is because SML creates the flexibility functions only mimic the behavior of the protocol by us-
to virtually capture different types of data or cryptographic pa- ing certain restrictions. This approach helps one to reuse
rameters for various types of operations. The effectiveness of functions, which also leads to obtain a clean and precise
CPN is also supported by the embedded state-space tool [19], model.
which can be used to perform validation and verification analy- 2) Hierarchical net structure: In this paper, we choose to
sis through a summary report that is provided after the execution model a single master station that is concurrently commu-
of the CPN model. nicating with three outstations. This configuration is set
up to facilitate the understanding of the paper and model
A. Our CPN Modeling Approach can be extended to support more stations. To achieve this
To understand the CPN formalism, this section presents spe- configuration, we use the CPN hierarchical technique
cific processes involved in modeling the DNP3 broadcast pro- to hide the details of the net structure in order to sim-
tocol with SAB. These processes are useful for representing plify complexities. This approach is suitable for creating
various data such as requests and responses, cryptographic large models because the behaviors of entities or security
primitives, and operations as well as other behaviors such as operations can be represented as substitution transitions
adversaries. The processes include three steps. (rectangular shaped but with double outline). Each sub-
1) Protocol primitives abstraction: This approach is used stitution transition may link to at least a subnet structure
to capture various data such as requests and responses page, where detail of the net structure can be found. This
and security primitives (cryptographic keys, MAC tags, makes it possible to capture different levels of abstraction
hashes) from the DNP3-SAB protocol. In capturing these in the same CPN model. For example, we demonstrate
primitives and behaviors in CPN, we needed to first repre- this approach in Figs. 4–8, where Fig. 4 presents the
sent data as CPN color sets and then address their opera- main page (top-level), while Figs. 5–8 present details of
tions by using CPN SML functions. As previously stated, some substitution transition in our main page. This paper
color sets (both simple and compound) are made of data presents pages (top- and third-level pages) of the model
types. Therefore, representing data (requests, responses, that are relevant to the contribution of this paper.
and security parameters) with these color sets create the 3) Model parameterization with adversaries: Relevant to
flexibility and inclusiveness to virtually capture differ- this paper, this approach is used to avoid the tendencies of
ent types of cryptographic parameters for various types creating different models to capture different behaviors.
of operations required. For example, the CPN record Thus, using this approach enabled us to construct a CPN
and product data types help encode relevant data needed model such that it is also possible to incorporate different
to represent a cryptographic parameter. Relevant to this types of adversarial behaviors, where one or more of the
paper, colset Request=product of fcode ∗ attack behaviors can be enabled or disabled depending
oheader is an example of the CPN color set used to on the environment for analysis (i.e., validation or ver-
represent the protocol initial request from the master ification). There are many types of attack that could be
station. Here, fcode and oheader are both a string data launched, but we scope this work to only consider com-
type. This implies that an integer request will be void mon Internet attacks such as modification, replay, and
1480 IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS, VOL. 12, NO. 4, AUGUST 2016

Fig. 5. Network and attack models.

Fig. 8. Behavior of SAB on all outstations.

3) The underlying layers of the DNP3 protocol are reliable


to ensure that there no communication failures.
4) Not all DNP3 and DNP3-SA data variations are captured.
This is because some data variation do not contribute
to the security analysis of this paper. Examples of such
variations include binary, analog inputs, and outputs data.

B. CPN Model of DNP3-SAB


Taking the above assumptions into consideration, the DNP3-
SAB CPN model is constructed in three different levels
Fig. 6. Processing requests on all outstations. of details or pages. The pages were created to improve
the readability of this paper. These three pages include
the top-level, second-level, and third-level pages. The top-
level page is the main abstract view of our CPN model.
The second-level page shows brief details of the top-
level, while the third-level pages present the actual details
of the modules (substitution transitions). Because of space
constraint, top- and third-level pages that directly contribute
to this paper are presented (see Figs. 4–8).
Fig. 4 presents the top-level page of the DNP3-SAB CPN
model. The model represents one master station communicat-
ing with three outstations for the purpose of illustrating and
Fig. 7. Behavior of SAB on the master station.
evaluating the contribution of this paper using sized mod-
els with sufficient details. The behavior of the master station
injection. The detail of the attack models is provided in [see Fig. 4(left)], network [see Fig. 4(middle)], and outstations
Section VII-B. [primary outstations A, B, C; Fig. 4(right)] are presented with
substitution transitions (i.e., double-lined square boxes). A sub-
VI. MODEL DESCRIPTION stitution transition is a high-level module that is used to hide the
detailed operation of a net structure. For example, the network
A. Model Assumptions substitution transition hides the details of the network activities
Before the CPN model for DNP3-SAB is presented, it is im- between the stations (see Fig. 5). Remaining SendA, sendRq,
portant to note that some assumptions were considered while TrigRep, DataB, and sendRsp places model the transmis-
modeling. These assumptions are made to help avoid the pos- sion of data via the network between the stations. The ctr-
sibility of generating large state-space values, and they re- lkey and UserID places capture users and their associated
duce complexity in constructing the model. Some of these keys. Fig. 5 presents the third-level page of the network in our
assumptions include the following. CPN model (the network substitution transition in Fig. 4). Fig. 5
1) The master station communicates with three outstations. presents two behaviors: network behavior and parameterized at-
2) All default algorithms (i.e., long-term secret key, ses- tack models. The network behavior specifies the way that the
sion keys, and MAC scheme) used in DNP3-SA among master station and the outstations exchange messages. In Fig. 5,
stations have been preestablished. the network behavior is modeled with the SendA and sendRq
AMOAH et al.: SECURING DNP3 BROADCAST COMMUNICATIONS IN SCADA SYSTEMS 1481

places and the ConnectA transition. These places and transition VII. FORMAL ANALYSIS OF DNP3-SAB CPN MODEL
allows the master to send data to the outstations. The color sets
In this section, we present the validation and verification of
(colset Packet and PacketRsp) represent all data (request, re-
the DNP3-SAB CPN model under the setup of one master to
sponse, and cryptographic parameters) exchanged between all
three outstations by using CPNs state-space tool. This setup
the stations. The labeled part “Receiving Responses” of Fig. 5
provides a model with a proper size for illustration and with
forms part of the network behavior, where all outstations re-
sufficient details for security analysis. However, a generic per-
spond to requests, if required. The parameterized attack models
formance and overhead analysis showing how the proposed so-
mark the adversarial behaviors on the network. These behaviors
lution scales with increasing number of outstations is presented
include attacks replay, injection, and modification. These attack
in Section VIII.
behaviors are set to false (turned OFF) and will be discussed
The state-space tool provides relevant information on how
later in Section VII-B.
the model proceeded from one state to another in consistent
Fig. 6 presents the third-level page of all the outstations pro-
manner. This vital information is presented in a summary report
cessing requests. It is assumed that all outstations will be pro-
with a number of behavioral properties. Some of these proper-
cessing the same request. We model the broadcast behavior of all
ties include the nodes and arcs of the state space, the strongly
outstations with the T_write transition from the Sub Processes
connected components (SCC), live transitions, home markings,
substitution transition, the SenSor and Enabler transitions, and
dead markings, and dead transitions. The state-space nodes and
the Actuator1 and Binary places. These places and transi-
arcs are properties used to determine the number of nodes and
tions are used to capture the executions of all broadcast opera-
arcs involved in the entire model. Likewise, SCC is a prop-
tions. For example, the SenSor transition must execute the token
erty used to determine the reachability of nodes and iterations
value “Rlsed Pressure” three times when the appropriate
involved in the model. This paper is more interested in dead
broadcast request for this operation is received.
markings and dead transitions. A marking or state is declared
Fig. 7 depicts the behavior of SAB on the master station. The
dead when there exist no binding elements to make the state ac-
HashChain place presents all the generated hash tag values
tive. In our model, a dead marking signifies a termination point.
and their respective indexes (the left-down bubble in Fig. 7) us-
Similarly, a transition is declared dead when the transition has
ing one of the DNP3-SA hash function specified in its standard.
no path from reachable states to enable it. A dead transition
This behavior represents step 1 in Fig. 3. The MAC place models
in our model may imply that an expected or unexpected action
the MAC token (values) obtained from the BSecure transition
may have occurred. It is to be noted that dead transitions in our
(refer to the inputs of BSecure, representing step 10 in Fig. 3).
model are subject to change. Depending on the behavior to be
The BdRequest, HValue, and Index places model the ac-
validated or verified, the number of dead transitions might vary
tual broadcast request about to be sent, the hash tag from the
because certain parameterized behaviors might be set to true or
hash chain, and the index of the hash tag, respectively. These
false. For example, if all attack models are set to false (turned
tokens are grouped as a single broadcast message through the
OFF), while validating the model may generate a large number
BPackA transition and transmitted to the network through the
of dead transitions.
SendRQ place. This captures the behavior (step 11) illustrated
in Fig. 3.
Fig. 8 presents the behavior of SAB on the outstations. The A. Validation of the DNP3-SAB CPN Model
Stored Values substitution transition models the storage area for
The aim of this section is to validate the DNP3-SAB CPN
valid hash tags and their indexes. This includes the last hash tag
model without any attack model turned ON (i.e., true). The
from the hash chain, which is assumed to be securely established
purpose of this action to determine whether the model re-
before the communication began between the stations (to the
flects the DNP3 broadcast behavior expected from the protocol
center of Fig. 8). The BrdCast Requests transition models the
specification. In this analysis, it is expected to obtain a sin-
receipt of every broadcast message from the network through
gle dead marking as the result of a single initial request from
the sendRq place (lower left of the Fig. 8). The Check Index
the master station to all outstations. This single dead marking
Value transition models the behavior for checking whether the
will indicate that every request issued by the master station is
incoming index values of the hash tag are valid. This transition
received and processed simultaneously by all the outstations.
is there for subsequent rounds of authentication and to avoid
Additionally, it is also expected to obtain 37 dead transitions.
replayed messages. If the received index of the hash tag is valid,
These transitions will consist of parameterized attack models
then a token is placed on the Trigger place to verify the
that have been set to false, inactive DNP3-SAB operations (be-
authenticity of the broadcast message. Otherwise, a token is
cause we are validating), and security transitions such as Errf-
placed on the AuthStatus place to signify an error (to the
back and Gen AuthError that could not execute, as there are no
center-right of Fig. 8). This behavior reflects the verification
attacks enabled.
process (step 12) in Fig. 3. Moreover, the ECV substitution
Table I presents the full state-space report of the DNP3-
transition models the behavior, where the received hash tag
SAB CPN Model. The table has two parts: initial DNP3-SAB
from the master station is extracted and hashed a number of
CPN model and attack models on DNP3-SAB CPN model. The
times to obtain a particular hash value. This behavior represents
initial DNP3-SAB CPN model presents the validation of the
step 14 in Fig. 3. The verification of MAC tags for message
SAB model, while the latter is the verification of DNP3-SAB
authentication and hash tags for freshness is achieved through
against the most common attack models (this is presented in the
the Tagcheck transition, representing steps 13 and 14 in Fig. 3.
subsequent section).
1482 IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS, VOL. 12, NO. 4, AUGUST 2016

TABLE I
STATE-SPACE ANALYSIS OF SAB ON MULTIDROP

State-Space Report for CPN SAB Model


Initial SAB CPN Model Attack Models on SAB

Injection Modification Replay

State-Space Nodes 13 829 23 831 821 44 789


State-Space Arcs 50 117 50 120 1045 89 056
SCC Graph Nodes 13 829 23 831 821 44 789
SCC Graph Arcs 50 117 50 120 1045 89 056
Dead Markings 1 3 1 3
Fig. 9. Attack models in the network module.
Dead Transitions 37 25 53 22

In Table I, initial DNP3-SAB CPN model the report presents ExcM1 transition. This allows the attacker to forge and inject an
identical values obtained for nodes and arcs of the state space existing request data with random strings via the network to the
and that of the SCC. Achieving these matching values for both outstations (see the box on top of InjectR; Fig. 9). The modifica-
properties implies that our model has no loops, and moreover, tion attack is modeled through the function MoDAttack1. The
the model has a finite sequence of occurrence. Furthermore, the function is defined as a parameter on the arc inscription binding
report presents a single dead marking with 37 dead transitions. the ConnectA transition and the sendRq place. This implies
These values (single dead marking and 37 dead transitions) are that the attack can actively modify data (request contents and
consistent with our expectation in Section VII. This is because network addresses) while in transmission through the network.
a close inspection of the model revealed that the single dead In Table I, the attack models on SAB show three dead mark-
marking represents the state where a broadcast request from ings for the injection and replay attack models, and a single dead
the master station has been successfully authenticated and pro- marking for the modification attack. Obtaining these markings
cessed by all outstations. As a result, it led to the execution with their respective dead transitions led us to simulate the model
of the Sensor transition, which further led to overwrite the de- to investigate the behavior obtained for each attack model. The
fault token value of “0” to “3” on the Actuator1 place on investigation of the modification attack revealed that the single
all outstations (refer to the bottom of Fig. 6). Additionally, the dead marking obtained represents the execution of the Gen Au-
inspection also revealed that all 37 dead transitions were consis- thError and Errfback transitions in all outstations, indicating an
tent with our expectations. This is due to the absence of attack authentication failure for the initial model state. This behavior is
models and certain security operations such as Errfback and expected because the attacker is actively modifying the content
Gen AuthError transitions, which model authentication failure of the packet since the message in the protocol is in “cleartext.”
operations that could not be executed as there are no attacks As a result, the initial request from the master station does not
enabled. In summary, these behaviors are expected as SAB is get executed because the integrity of the initial message has
enabled and no attack models have been enabled. been compromised. This led to 53 dead transitions because the
initial request was not executed on any of the outstations. In-
vestigating the injection attack model revealed that one of the
B. Verification of the DNP3-SAB CPN Model obtained dead markings represented the successful execution of
This section presents the evaluation of DNP3-SAB CPN the SenSor transition on all the outstations (see Fig. 6), leading
model with adversaries enabled (i.e., attacks set to true) to de- to obtaining the token value “3” on each of the outstations. This
termine whether the authentication property of DNP3-SAB is implies that authentication for the initial broadcast message from
provided. But before we discuss the evaluation of DNP3-SAB, the master station was successful. This is expected. However,
this section will provide the details of the attack models used for the remaining dead markings (2) of the injection attack repre-
verifying the model. As previously emphasized in Section V-A, sent the case of failure to terminate the protocol. This failure to
the adversarial behaviors considered for this analysis include re- terminate the protocol led to the execution of the Errfback and
play, injection, and modification attacks. The overall objective Gen AuthError transitions. A further investigation showed that
of these attacks is to broadcast a request and get it processed on this failure occurred because the parameters provided by the at-
the three outstations. tacker could not be verified by SAB as required. As a result, the
Fig. 9 presents the attack model considered for this analysis. execution of Errfback and Gen AuthError transitions indicate an
The attacks are modeled with places, transitions, and parame- authentication failure. Moreover, the analysis also showed that
ters as before (see dotted area of Fig. 9). These attack behaviors the 25 dead transitions obtained from the model were as a result
were set to false during the validation of the model. But to ver- of the failure, as certain transitions could not be executed due
ify the model, we have enabled these attacks such that we can to the lack of data. The model reveals that it is computationally
revalidate the security of the model. In Fig. 9, the replay attack hard for the attacker to forge and provide the expected data. This
is modeled through the Capture Reqs and TrigRep places and is because the attacker has no prior knowledge of the hash-chain
the Replay transition. At this point, the attack is able to store parameters preestablished between the stations. For this reason,
and replay previous messages from the master station. The in- this failure will give an insight to an administrator through its
jection attack is modeled through the InjectR place and the log files.
AMOAH et al.: SECURING DNP3 BROADCAST COMMUNICATIONS IN SCADA SYSTEMS 1483

Similarly, with the replay attack one out of the three dead This implies that the number of communicated messages in
markings indicated the successful execution of the SenSor tran- NACR will also be considered in AGM operation. Table II shows
sition on all the outstations. This also implies that the initial state that the total messages involved in SAB communication is 4N
of the model (request from the master station) was successfully + n. This value (4N + n) is obtained because there are four
authenticated before processing. However, both remaining dead messages exchanged during the key update process to N out-
transitions represented authentication failures, which lead to the stations and a single (n) broadcast requests are sent (refer to the
execution of Errfback and Gen AuthError transitions. In the re- exchanged messages in Fig. 3). This value corresponds to O(N
play attack, Errfback and Gen AuthError transitions occurred + n). In processing SAB, the master needs to generate a hash
because the replayed messages lacked freshness, new hash tags chain and a MAC tag. This is represented in the table as 2n +
and MAC tags. As a result, 22 dead transitions occurred. In 2 ≈ O(n) (including the key update setup). Similarly, process-
summary, these behaviors indicate that all parameterized at- ing SAB on each outstation requires 4N n (including the keys
tacker behaviors in this model have been detected and stopped. update). This is because that each of the N outstations com-
As a result, no unauthorized commands were possible to execute putes a hash and MAC tag. The value on the outstations (2N n)
on the outstations without a proper authentication performed. corresponds to O(N n), while that of the master corresponds to
O(n). For SAB storage overhead, the table shows 2n + 2 for
the master and 8N for the outstations. The value 2n + 2 on the
master represents a hash value (Si) with its index (i) and the
VIII. PERFORMANCE ANALYSIS AND COMPARISON storage of two keys (i.e., UpK and SKm o ). Similarly, 8N on
This section provides a comparison of storage, communi- the outstations imply that each of the N outstations stores eight
cation, and computation overheads of SAB against its unicast parameters consisting of two keys (UpK and SKm o ), chalg, Sn ,
counterparts: DNP3-SA NACR and AGM. The comparisons are i, Scalc , Sstored , and Nstored . Here, 8N corresponds to O(N ) and
based on the total headcount of messages within the protocol but (2n + 2) corresponds to O(n).
not in terms of bytes sizes. This is because most of the messages In Table II, the overheads of NACR and AGM are also pre-
have similar byte sizes. Moreover, the performance of these au- sented. The overheads of NACR are almost the same as that of
thenticated unicast and broadcast communication schemes are the AGM, except that overhead of the AGM includes the NACR
compared under adversarial conditions. The purpose of this pre- behavior as prior requirement. However, both modes take into
sentation is to show that SAB is usable because our lightweight account N outstations. This is done to compare SAB to NACR
security solution improve performance and reduce overheads. and AGM. From Table II, comparing the overheads of SAB to
The following notations are used in Table II. Here, N repre- the existing NACR and AGM overheads, the table shows that
sents the number of outstations a master station is communicat- SAB has less communication overhead over its counterparts:
ing with. Here, n denotes the approximate number of commands NACR and AGM. This is because in SAB operation, the mas-
to be exchanged between the master station and its N outstations ter sends a single request to N outstations at once, rather than
per user and during a time interval between two key updates. sending a request to each of the N outstations (as this is the
Additionally, n also represents the number of hash tags in a case for NACR and AGM). However, the table shows a slight
hash chain generated as part of SAB. SAB uses one hash tag (minor) increase in storage and processing overheads on the N
per request as illustrated in Fig. 3. H denotes the hash function outstations during SAB. This slight increase is asymptotically
used to compute the hash chains. E and D denote encryption insignificant because SAB is designed to run on large systems
and decryption, respectively. DAS , DAN , and DAA denote rather than a small-scale systems. In case NACR and AGM
the Drop attack on SAB, NACR, and AGM, respectively. In the are to be used on large-scale systems, the processing and stor-
drop attack, an adversary drops a request from the master station age overheads will dramatically increase. This is because both
with the probability Pa . M IRS , M IRN , and M IRA denote modes will have to individually exchange n of messages to N
the modification, injection and replay attacks on SAB, NACR, outstations. The advantage of SAB communication overhead
and AGM, respectively. The probability that these attacks will becomes clearer when attacks such as drop, modification, injec-
target a request from the master station is represented as Pa . tion, and replay attacks are considered (refer to Table II). Thus,
For the sake of comparability, we have represented all crypto- in the attack models (DAS and M IRS ), SAB requires much
graphic transformations used in DNP3-SA and DNP3-SAB as less retransmission (nPa ) for each request attacked with prob-
C (i.e., C = {H, E, D, M AC}). Similarly, the stored param- ability Pa than its counterparts. In addition, SAB causes less
eters used in DNP3-SA and DNP3-SAB are represented as K processing overhead on the master station compared to NACR
(i.e., K = {Sn , n, U pK, Skm o , P , KSn}). and AGM. The extra processing caused on the master station
To understand the overheads analyses presented in Table II, due to an attacked request is much less for SAB than for NACR
three things must be noted. and AGM.
1) There are N outstations communicating with a single Based on this analysis, we conclude and make it clear that
master station. there is always a tradeoff of performance when providing secu-
2) There exists a key update process that occurs before the rity. Table II has shown that there exist the benefits in the entire
NACR or AGM operates. The key update process has communication overhead of SAB as well as processing overhead
four headcounts of messages per round and per user on the master stations. But these benefits come at the cost of an
(refer to Fig. 3). extra storage used on the master stations to store hash chains and
their indexes. Additionally, calculations on the outstations also
3) NACR is a prior requirement to AGM operation.
1484 IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS, VOL. 12, NO. 4, AUGUST 2016

TABLE II
PERFORMANCE ANALYSIS AND COMPARISON

Communication (# messages) Processing (# Crypto Operations C ) Storage (# Parameters K )

Master N Outstations Master N Outstations

SAB 4N + n ≈ O(N + n ) 2n + 2 ≈ O(n ) 4N n ≈ O(N n ) 2n + 2 ≈ O(n ) 8N ≈ O(N )


NACR 4N (n + 1) ≈ O(N n ) N n ≈ O(N n ) N n ≈ O(N n ) 4 (Constant) 4N ≈ O(N )
AGM 8N + 2N n ≈ O(N n ) N (n + 1) ≈ O(N n ) N n ≈ O(N n ) 4 (Constant) 4N ≈ O(N )
DAS n P a ≈ O(n ) n P a ≈ O(n ) N n P a ≈ O(N n ) - -
DAN N n P a ≈ O(N n ) N n P a ≈ O(N n ) N n P a ≈ O(N n ) - -
DAA N n P a ≈ O(N n ) N n P a ≈ O(N n ) N n P a ≈ O(N n ) - -
M I RS n P a ≈ O(n ) n P a ≈ O(n ) n P a ≈ O(n ) - -
M I RN 2N n P a ≈ O(N n ) N n P a ≈ O(N n ) N n P a ≈ O(N n ) - -
M I RA 2N n P a ≈ O(N n ) N n P a ≈ O(N n ) N n P a ≈ O(N n ) - -

TABLE III
PERFORMANCE AND FUNCTIONALITY OF SAB USING ALTERNATIVE METHODS

Functionality Performance

Schemes Mechanism Infrastructure Security Properties Communication Computation Storage

-Authentication
-Integrity 1 Key update n *HMAC n *MAC 1 Symmetric Key
Proposed SAB Hash chain None -Resistant to dishonest per n message 1*AES 1 Hash value per outstation
outstations*
-Authentication
SABSym Message-based None -Integrity n Key update n *HMAC n *MAC 1 Symmetric Key
key establishment -Require honest per n message n *AES 1 nonce value per outstation
outstations
-Authentication
SABAsym Digital signature PKI -Integrity Public key distribution n *PKI 1 Public Key
-Non-reputation 1 nonce value per outstation

cause a slight increase in processing overheads by a constant is because a compromised outstation with the knowledge of the
term. This slight difference disappears in the attack scenarios. symmetric key can masquerade the master station. SABAsym can
SAB, NACR, and AGM cause the same processing overhead additionally be used for nonrepudiation. In terms of communi-
on outstations when a request message is attacked (i.e., drop, cation, SABAsym distributes one public key for authenticating
modification, injection, and replay) with a probability Pa . Fur- all broadcast messages and SAB requires a symmetric key and
thermore, as SAB utilizes only the existing security primitives a hash-chain value distribution once for n broadcast messages.
from NACR and AGM (refer to steps 2–6 of Fig. 3), it implies SABSym distributes a symmetric key for each broadcast mes-
that there are no additional cryptographic updates required for sage. The advantage of SABAsym comes with high computation
devices supporting DNP3-SAB. Existing devices that support requirements, which are not available for most master and out-
DNP3-SA will have sufficient resources to support DNP3-SAB stations in service today. SABSym requires more computation
as well. Also, the time a master station takes to send a request than SAB due to key establishment requirements. All schemes
to N outstations securely using DNP3-SA is more than the time require one key and random value per message to be stored.
required for DNP3-SAB. This is because, using DNP3-SA, the Excluding SABAsym due to its high computation and infrastruc-
master station has to contact N outstations individually in se- ture requirements, SAB shows clear advantage over SABSym in
quence, causing some outstations to receive the request later security and computation and communication overhead.
than others.
In Table III, the performance and functionality of SAB using
IX. DISCUSSION AND CONCLUSION
two alternative methods: symmetric (SABSym ) and asymmetric
key (SABAsym ) cryptography are presented. The table shows that The HMAC mechanism of the DNP3-SA protocol alone is
while the proposed SAB in this paper uses hash-chain values to not sufficient to secure the DNP3 broadcast mode. This is be-
authenticate each broadcast message, the SABSym with symmet- cause the HMAC mechanism will require a different key to
ric key requires a broadcast key established for each broadcast compute a unique MAC tag for each broadcast message. The
message. SABAsym can use a single public key to authenticate all proposed SAB uses a hash chain to solve the problem of key
broadcast messages, but it requires an infrastructure to distribute management. Hash values used for messages are linked together
public keys. All three schemes provide authentication and in- as a hash chain. The usage of a single key together with the
tegrity. But the SABSym requires all outstations to be honest. This hash chain removes need for a key per message. Additionally,
AMOAH et al.: SECURING DNP3 BROADCAST COMMUNICATIONS IN SCADA SYSTEMS 1485

because the hash chains are also associated with indexes, it pre- Network and System Security—Introduction to Security Issues, IEC TS
vents potential replay attacks from occurring. Using only the 62 351–1, 2007.
[18] K. Jensen, L. Kristensen, and L. Wells, “Coloured Petri Nets and CPN
index without hash values would not be sufficient because any tools for modelling and validation of concurrent systems,” Int. J. Softw.
compromised outstation that already has knowledge of the sym- Tools Technol. Transfer, vol. 9, no. 3, pp. 213–254, 2007.
metric key and the index can masquerade as the master station [19] K. Jensen, S. Christensen, and L. M. Kristensen, CPN Tools State Space
Manual, Dept. Comput. Sci., Univ. Aarhus, Aarhus, Denmark, 2006.
and send broadcast messages to its counterparts. The analy- [20] K. Jensen and L. Kristensen, Coloured Petri Nets. Berlin, Germany:
sis of the SAB CPN model in this paper has shown that the Springer-Verlag, 2006.
DNP3 broadcasts can be secured against attack vectors such [21] W. Kim, “On cyberwarfare,” Int. J. Web Grid Serv., vol. 8, no. 4,
as modification, injection, spoofing, and replay, attacks listed pp. 321–334, 2012.
[22] X. Lu, W. Wang, and J. Ma, “An empirical study of communication infras-
by the DNP3 consortium in the protocol specification. More- tructures towards the smart grid: Design, implementation, and evaluation,”
over, SAB’s performance and comparison with alternative meth- IEEE Trans. Smart Grid, vol. 4, no. 1, pp. 170–183, Mar. 2013.
ods have shown SAB’s advantage in security, computation, and [23] B. Miller and D. Rowe, “A survey SCADA of and critical infrastructure
incidents,” in Proc. 1st Annu. Conf. Res. Inf. Technol., 2012, pp. 51–56.
communication overhead. [24] Modbus Application Protocol Specification v1. 1a, I. Modbus, Grafton,
In the future, we will extend our model to address com- MA, USA, 2004.
munication on a data concentrator. A data concentrator is an [25] A. Perrig, R. Canetti, J. D. Tygar, and D. Song, “The TESLA broadcast
authentication protocol,” RSA Crypto Bytes, vol. 5, no. 2, pp. 2–13, 2002.
architecture where one a master station interacts with multiple [26] A. Perrig, R. Szewczyk, J. D. Tygar, V. Wen, and D. E. Culler, “Spins:
submaster stations and outstations with different communica- Security protocols for sensor networks,” Wireless Netw., vol. 8, no. 5,
tion modes. The motive of this work will be to analyze various pp. 521–534, 2002.
security properties on such a complex architecture. [27] PROFInet Architecture Description and Specification, PROFIBUS
International Std., version 2.01, Aug. 2003. [Online]. Available:
http://www.PROFIBUS.com
[28] S. Suriadi, C. Ouyang, and E. Foo, “Privacy compliance verification in
REFERENCES cryptographic protocols,” Trans. Petri Nets Other Models Concurrency
VI: Lecture Notes Comput. Sci., vol. 7400, pp. 251–276, 2012.
[1] J. Akerberg and M. Bjorkman, “Exploring security in PROFINET IO,”
in Proc. 33rd Annu. IEEE Int. Comput. Softw. Appl. Conf., 2009, vol. 1,
pp. 406–412.
[2] I. Al-Azzoni, D. G. Down, and R. Khedri, “Modeling and verification
of cryptographic protocols using coloured Petri Nets and design/CPN,” Raphael Amoah (M’14) received the Ph.D. de-
Nordic J. Comput., vol. 12, no. 3, p. 201, 2005. gree from the Queensland University of Technol-
[3] R. Amoah, S. Camtepe, and E. Foo, “Formal modelling and analy- ogy (QUT), Brisbane, Australia, in 2016.
sis of DNP3 secure authentication,” J. Netw. Comput. Appl., vol. 59, He has been a Sessional Academic with
pp. 345–360, 2016. the QUT since 2012. His current research
[4] R. Amoah, S. Suriadi, S. Camtepe, and E. Foo, “Security analysis of the interests include cyber-physical systems, for-
non-aggressive challenge response of the DNP3 protocol using a CPN mal methods, formal verification of communica-
model,” in Proc. IEEE Int. Conf. Commun., Jun. 2014, pp. 827–833. tion protocols used in supervisory control and
[5] E. J. Byres, M. Franz, and D. Miller, “The use of attack trees in assessing data acquisition, and industrial controls systems
vulnerabilities in SCADA systems,” presented at the Int. Infrastructure security such as smart grid.
Survivability Workshop, Lisbon, Portugal, 2004.
[6] M. Cheminod, A. Pironti, and R. Sisto, “Formal vulnerability analysis of
a security system for remote fieldbus access,” IEEE Trans. Ind. Informat.,
vol. 7, no. 1, pp. 30–40, Feb. 2011.
[7] D. Choi, H. Kim, D. Won, and S. Kim, “Advanced key-management Seyit Camtepe (S’04–M’07) received the Ph.D.
architecture for secure SCADA communications,” IEEE Trans. Power degree in computer science from Rensse-
Del., vol. 24, no. 3, pp. 1154–1163, Jul. 2009. laer Polytechnic Institute, New York, NY, USA,
[8] D. Choi, S. Lee, D. Won, and S. Kim, “Efficient secure group communica- in 2007.
tions for SCADA,” IEEE Trans. Power Del., vol. 25, no. 2, pp. 714–722, From 2007 to 2013, he was with Technische
Apr. 2010. Universitaet Berlin, Berlin, Germany, as a Se-
[9] G. Clarke and D. Reynders, Practical Modern SCADA Protocols: DNP3, nior Researcher and Research Group Leader
60870.5 and Related Systems. Burlington, MA, USA: Newnes, 2004. in Security. Since 2013, he has been with the
[10] S. East, J. Butts, M. Papa, and S. Shenoi, “A Taxonomy of Attacks on the Queensland University of Technology, Brisbane,
DNP3 Protocol,” Crit. Infrastructure Protection III, vol. 311, pp. 67–81, Australia, as a Lecturer. His research interests
2009. include mobile and wireless communication,
[11] G. Gilchrist, “Secure authentication for DNP3,” in Proc. IEEE Power En- pervasive security, and applied and malicious cryptography.
ergy Soc. Gen. Meet.-Convers. Del. Elect. Energy 21st Century, Pittsburgh,
PA, USA, 2008, pp. 1–3.
[12] S. Gilmore, Programming in Standard ML’97: A Tutorial Introduction.
Edinburgh, U.K.: Univ. Edinburgh, 1997.
[13] V. C. Gungor “Smart grid technologies: Communication technologies
and standards,” IEEE Trans. Ind. Informat., vol. 7, no. 4, pp. 529–539, Ernest Foo (M’99) received the Ph.D. degree
Nov. 2011. from the Queensland University of Technology
[14] P. Huitsing, R. Chandia, M. Papa, and S. Shenoi, “Attack Taxonomies (QUT), Brisbane, Australia, in 2000.
for the Modbus protocols,” Int. J. Crit. Infrastructure Protection, vol. 1, From 2007, he has been a Senior Lecturer
pp. 37–44, 2008. and Researcher at the Information Security Dis-
[15] ICS-CERT, Monthly Monitor (ICS-MM201502), ICS-CERT Moni- cipline, School of Electrical Engineering and
tor, 2015. [Online]. Available: https://ics-cert.us-cert.gov/monitors/ICS- Computer Science, QUT. His research interests
MM201502. Accessed on: 10/03/2015. can be broadly grouped into the field of secure
[16] IEEE Standard for Electric Power Systems Communications-Distributed network protocols with an active interest in the
Network Protocol (DNP3), IEEE Std 1815–2012, 2012, pp. 1–866. security of industrial controls systems such as
[17] IEC 62351Power Systems Management and Associated Information supervisory control and data acquisition and the
Exchange—Data and Communications Security—Part 1: Communication smart grid.

You might also like