Network Intrusion Detection Based On Deep Neural N
Network Intrusion Detection Based On Deep Neural N
Network Intrusion Detection Based On Deep Neural N
Abstract. Security monitoring is one of the security strategies for the supervisory control and
data acquisition (SCADA) systems, and the intrusion detection system (IDS) is a main tool to
do security monitoring. Main task of security monitoring is to develop the SCADA-specific
IDS, which reflects the semantics of the SCADA domain. In this paper, we work on
developing IDS based on deep learning models for the SCADA system. The target SCADA
communication protocol of the detection model is the DNP3, which is currently the most
commonly utilized communication protocol in the power substation. The attack of major
concern is data injection or modification attacks, which is most critical attack in the SCADA
system. We extract 12 data features from distributed network protocol 3 (DNP3) packets, and
use them to train the deep neural network. We measure the accuracy and loss of the detection
system trained based on different deep learning algorithms, and show the comparison of the
results.
1. Introduction
Supervisory control and data acquisition (SCADA) systems are process control systems which
interconnect and monitor remote physical processes. SCADA systems collect data from remote
facilities about the state of the physical process and send commands to control the physical process
creating a feedback control loop. SCADA systems are used in power transmission and distribution
systems for situational awareness and control.
Security monitoring is one of the integral strategies for the SCADA systems, and the intrusion
detection system (IDS) is a main tool of doing security monitoring. The anomaly IDS detection is the
process to determine which observed events are to be identified as abnormal because it has significant
deviation from normal behavior which is called ‘profile.’ The difficult part is how to decide or derive
profiles which reflect all semantics of the system. Thus, the main task to do security monitoring is to
design domain-specific IDS which is aware of the target domain semantics.
Deep learning and machine learning have shown some achievement in different fields, such as video
recognition and image processing, audio processing, natural language processing and robotics, etc.
Therefore, many researchers have begun to focus on constructing IDSs using machine learning and
deep learning methods [1]. However, very few work have been done for developing the SCADA-
specific IDS, which reflects the semantics of the SCADA domain [2-6].
In this paper, we work on developing IDS based on deep learning models for the SCADA system. The
target of the detection model is the DNP3 protocol, which is currently the most commonly utilized
communication protocol in the power substation [7]. The paper focuses on detecting the data injection
or modification attacks, which are most critical attacks in the SCADA system [8, 9].
Content from this work may be used under the terms of the Creative Commons Attribution 3.0 licence. Any further distribution
of this work must maintain attribution to the author(s) and the title of the work, journal citation and DOI.
Published under licence by IOP Publishing Ltd 1
CEEPE 2020 IOP Publishing
Journal of Physics: Conference Series 1585 (2020) 012038 doi:10.1088/1742-6596/1585/1/012038
The rest of this paper is organized as follows. In section 2, we present the proposed SCADA-IDS
model based on deep learning methods. In section 3, we present an experiment setup and evaluation of
the proposed methods. Finally, we suggest conclusion and future work in section 4.
2. IDS MODEL
The IDS design is composed of two main phases: the extracting phase and the detection phase. The
extracting phase is performed offline as it is somehow time consuming. In the extracting phase, the
DNP3 packet is processed to extract data features that represent the behaviour of the network. Each
processed DNP3 packet has a label indicating either normal or anomalous packet. This is used for the
detection phase by adopting the deep neural network structure to train with the features. The detection
phase uses the same features, which are extracted from the extracting phase, as input, and the neural
network structure calculates trained parameters to predict which class packets belong to, either normal
or abnormal.
To detect attacks that require examination of the payload, the following DNP3 specific features are
extracted.
• Contains DNP3 packet: A feature indicating if the connection contains a DNP3 packet.
• DNP3 payload length: The total length of the DNP3 payload contained within the connection.
• Min DNP3 payload length: The minimum DNP3 payload length in the connection.
• Cold restart in DNP 3 packet: A Boolean indicating if there exist a cold restart or disable
unsolicited message command in the connection.
2
CEEPE 2020 IOP Publishing
Journal of Physics: Conference Series 1585 (2020) 012038 doi:10.1088/1742-6596/1585/1/012038
consists of an input layer with 12 data features, 3 hidden layer around 16 neurons for each, and an
output layer that represents the multi-class classification (normal, DoS, Cold Restart and Unsolicited)
as output classes.
After fetching the input and train the network, we use different deep learning algorithms: RNN, LSTM,
CNN, GRU, and FNN. The Feedforward neural network (FNN) is an artificial neural network wherein
connections between the nodes do not form a cycle [12]. By using these deep learning algorithms for
SCADA-IDS system, we investigate which model can be an effective and flexible IDS that has higher
accuracy rate for detecting anomaly attacks.
3
CEEPE 2020 IOP Publishing
Journal of Physics: Conference Series 1585 (2020) 012038 doi:10.1088/1742-6596/1585/1/012038
experiment, the intercepted frame coming from the master node to the outstation was altered from
being a read class frame to a cold restart packet or disable unsolicited messages command to
compromise normal operation of the outstation node.
3.3. Results
After training the neural network on the prepared dataset using Tensorflow and Keras, we evaluate the
performance of the detection model on the same dataset, which provides the accuracy and the loss.
The figures 3 and 4 show the results of accuracy and loss, depending on the different deep learning
models.
As shown in figure 3, the accuracy is increasing as number of steps (epochs) is increasing until it
reaches approximately 98.75% of accuracy, which means that there is a chance of around 98% of
detecting any anomalous traffic inside the network by these deep learning algorithms. It is good to
note that the neural network performed very well while training, judging from the fact that from 0 to
10 epochs the accuracy reached approximately 98% of detecting.
Another metric to be considered is the loss. Lower the loss means the better the model is. Figure 4
shows the loss upon training the models. Similar to accuracy, loss will decrease as number of epochs
increase till it reaches a value of 0.1, which is almost negligible loss at the end of the training.
Figure 3. Model accuracy during the training Figure 4. Model loss during the training of
of the network. the network.
4
CEEPE 2020 IOP Publishing
Journal of Physics: Conference Series 1585 (2020) 012038 doi:10.1088/1742-6596/1585/1/012038
the detection model, which can detect unseen and unexpected attacks. In addition, we need to validate
and evaluate IDS based on deep learning models by comparing with the traditional rule-based or
protocol-based IDSs.
5. References
[1] Liu H and Lang B 2019 Machine Learning and Deep Learning Methods for Intrusion
Detection Systems: A Survey, applied sciences, Vol 9, No 4396
[2] Perez R, Adamsky F, Soua R and Engel T, 2019 Forget the Myth of the Air Gap: Machine
Learning for Reliable Intrusion Detection in SCADA, EAI Endorsed Transactions on Security
and Safety
[3] Alrawashdeh K and Purdy C 2016 Toward an online anomaly intrusion detection system based
on deep learning, Proc. IEEE International Conference on Machine Learning and Applications
(ICMLA) pp 195-200
[4] Yang, H, Cheng, L and Chuah, M C 2019 Deep-Learning-Based Network Intrusion Detection
for SCADA Systems, Proc. IEEE Conf. on Communications and Network Security (CNS)
[5] Gao J, Gan L, Buschendorf F, Zhang L, Liu H, Li P, Dong X and Lu T 2019. Omni SCADA
Intrusion Detection Using Deep Learning Algorithms, arXiv:1908.01974v1
[6] Kwon S, Yoo H and Shon T 2019 RNN-based Anomaly Detection in DNP3 Transport Layer,
Proc. IEEE International Conference on Communications, Control, and Computing
Technologies for Smart Grids (SmartGridComm)
[7] IEEE Standard for Electric Power Systems Communications Distributed Network Protocol
(DNP3), IEEE Standard Association, IEEE Std 1815-2012
[8] Volkova A, 2019 Security Challenges in Control Network Protocols: A Survey, IEEE Com.
Surveys & Tutorials, Vol 21, No 1, pp 619-639
[9] East S, Butts J, Papa M, and Shenoi S 2009 A Taxonomy of Attacks on the DNP3 Protocol,
Critical Infrastructure Protection III, IFIP AICT 311 chap 5 (Springer, Berlin, Heidelberg), pp
67-81
[10] Igbe O, Darwish I and Saadawi T 2017 Deterministic Dendritic Cell Algorithm Application to
Smart Grid Cyber-Attack Detection, Proc. IEEE Int. Conf. on Cyber Security and Cloud
Computing, pp 199-204
[11] Karlijn Willems 2017 Keras Tutorial: Deep Learning in Python, [Online]. Available:
https://www.datacamp.com/community/tutorials/deeplearning-python
[12] Aslam, M, Lee, J.-M, Kim, H.-S, Lee, S.-J and Hong, S. 2020 Deep Learning Models for
Long-Term Solar Radiation Forecasting Considering Microgrid Installation: A Comparative
Study, Energies, Vol 13, No 147
[13] Welsh C, GNS3 network simulation guide. Packt Publ. 2013
[14] OpenDNP3, [Online]. Available: https://www.automatak.com/opendnp3
[15] Linux, Kali, [Online]. Available: https://www.kali.org
[16] hping3, [Online]. Available: http://www.secdev.org/projects/scapy
[17] arpspoof, [Online]. Available: http://www.secdev.org/projects/scapy
[18] Scapy, [Online]. Available: http://www.secdev.org/projects/scapy
Acknowledgments
This work was supported by “Human Resources Program in Energy Technology” of the Korea
Institute of Energy Technology Evaluation and Planning (KETEP), granted financial resource from the
Ministry of Trade, Industry & Energy, Republic of Korea. (No. 20174030201790), And this research
was also supported by Korea Electric Power Corporation. (Grant number: R18XA01).