Về một phương pháp nâng cao an toàn trong mạng điều hành giám sát công nghiệp

TÓM TẮT— Bài báo tập trung nghiên cứu các vấn đề an toàn giao thức truyền thông SCADA. Mạng SCADA (Supervisory Control and Data Acquisition) là công nghệ truyền thông để thu thập dữ liệu từ những thiết bị, cơ sở từ xa và gửi các lệnh điều khiển đến các cơ cấu chấp hành. Do nhu cầu kết hệ thống SCADA với mạng doanh nghiệp và internet, vì vậy những bộ phận SCADA là mục tiêu của các cuộc tấn công mạng, thông qua mục tiêu đó mà những kẻ tấn công có thể dễ dàng đánh sập cơ sở hạ tầng quan trọng và nền kinh tế của quốc gia đó. Để bảo vệ mạng SCADA, chúng tôi tập trung vào giao thức truyền thông chưa được thiết kế an toàn. An toàn thông qua giao thức, với mục đích sửa đổi cấu trúc của giao thức nhằm đảm bảo tính toàn vẹn, xác thực và chống phát lại. Trong cấu trúc đề xuất chúng tôi sử dụng hai thuật toán để cải thiện tính bí mật và toàn vẹn của dữ liệu, đánh dấu thời gian để chống phát lại

Về một phương pháp nâng cao an toàn trong mạng điều hành giám sát công nghiệp trang 1

Trang 1

Về một phương pháp nâng cao an toàn trong mạng điều hành giám sát công nghiệp trang 2

Trang 2

Về một phương pháp nâng cao an toàn trong mạng điều hành giám sát công nghiệp trang 3

Trang 3

Về một phương pháp nâng cao an toàn trong mạng điều hành giám sát công nghiệp trang 4

Trang 4

Về một phương pháp nâng cao an toàn trong mạng điều hành giám sát công nghiệp trang 5

Trang 5

Về một phương pháp nâng cao an toàn trong mạng điều hành giám sát công nghiệp trang 6

Trang 6

pdf 6 trang xuanhieu 5460
Bạn đang xem tài liệu "Về một phương pháp nâng cao an toàn trong mạng điều hành giám sát công nghiệp", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Về một phương pháp nâng cao an toàn trong mạng điều hành giám sát công nghiệp

Về một phương pháp nâng cao an toàn trong mạng điều hành giám sát công nghiệp
g 
vào phân bố lại các byte trong giao thức, với những phân bố lại đó chúng tôi sử dụng các thuật toán nhƣ CRC cải tiến, 
Nguyễn Đào Trƣờng, Nguyễn Doãn Cƣờng, Nguyễn Đức Tâm 821 
mật mã AES (Advanced Encryption Standard), đánh dấu thời gian (TS – TimeStamp) và chữ ký số để đảm bảo các 
khía cạnh an toàn. Giao thức DNP3 truyền thống chỉ sử dụng CRC để phát hiện lỗi trong quá trình truyền [9], [11]. 
Chúng tôi đề xuất hai hình thức an toàn sau: 
 Mã hóa gói tin DNP3. 
 Cải tiến cấu trúc bên trong giao thức DNP3. 
Sử dụng 34 byte ngoài 272 byte PDU (Protocol Data Unit) liên kết DNP3 để cho mục đích an toàn và toàn vẹn. 
Chúng tôi phân phối lại các byte này để tăng cƣờng phạm vi dữ liệu và an toàn cho giao thức DNP3 bằng sự sắp xếp lại 
nhƣ sau: 
 New LH Header (4 byte) 
 Key Sequence Number (4 byte) 
 Original LH Header (8 byte) 
 Payload Data (256 byte) 
 CRC cải tiến (4 byte) 
 TimeStamp (4 byte). 
Trong giải pháp đề xuất của chúng tôi, thông điệp đƣợc bảo vệ bằng mật mã AES cải tiến [17] và giải thuật 
CRC cải tiến để xác thực, đánh dấu thời gian (TimeStamp) chống phát lại, nhƣ trong Hình 1. 
New LH Header
Sequence Number
Original LH Header
Payload Data
CRC cải tiến
M
ã h
ó
a (B
ảo
 v
ệ tín
h
 b
í m
ật)
X
ác th
ự
c (B
ảo
 v
ệ tín
h
 to
àn
 v
ẹn
)
0
3
7
15
271
275
TimeStamp
279
Hình 1. Cấu trúc gói tin giao thức DNP3 đề xuất (MoDNP3) 
Trong giao thức đề xuất (MoDNP3), thông điệp đƣợc bảo vệ bằng: 
 Thuật toán mã hóa/ giải mã AES: AES cung cấp tính bí mật bằng cách mã hóa dữ liệu. 
 Thuật toán CRC cải tiến để xác thực dữ liệu trong giao thức: CRC cải tiến giúp giúp xác thực dữ liệu ở cả bên 
gửi và bên nhận. Trong CRC cải tiến, sử dụng 4 byte trong giao thức MoDNP3. 
 Đánh dấu thời gian (TimeStamp): sử dụng giao thức NTP (Network Time Protocol)[7] để đánh dấu thời gian, 
sử dụng 4 byte. 
1. Thuật toán mã hóa AES cải tiến 
AES cải tiến [17] là mã khối đối xứng có độ dài khóa thay đổi (128, 192, 256). Nó đƣợc Rijndael đề xuất năm 
2001. Thuật toán AES gồm hai phần: Phần mở rộng khóa phục vụ cho các vòng mã và phần mã hóa. Trong phần mở 
rộng khóa, khóa đầu vào có thể là 128, 192 hoặc 256 bit. Quá trình mã hóa dữ liệu gồm 10, 12, 14 vòng thực hiện mã 
hóa tƣơng ứng với các độ dài khóa 128, 192, 256. 
Trong kịch bản của chúng tôi, số thứ tự khóa KSN (Key Sequence Number), phần đầu gốc, dữ liệu, CRC cải 
tiến và đánh dấu thời gian (TimeStamp) đƣợc mã hóa bằng thuật toán AES cải tiến nhƣ thể hiện trong Hình 2. Tổng 
272 byte đƣợc cho qua thuật toán mã hóa AES, là mã khối đối xứng, mỗi khối có độ dài 128 bit. Khóa mã của AES có 
độ dài 128, 192, 256 bit. Nó là một thuật toán mã hóa đủ mạnh với các giao thức sử dụng trong mạng SCADA. 
2. Thuật toán CRC cải tiến 
CRC giúp cho việc xác thực dữ liệu ở cả bên gửi và bên nhận. Trong CRC cải tiến, sử dụng 4 byte. Trong CRC 
sử dụng một đa thức sinh để chia thông điệp để tìm ra phần dƣ gọi là CRC[3], [8]. Để có CRC r bit ta cần đa thức sinh 
phải có bậc r. Để tìm đa thức phần dƣ bên gửi bổ sung thêm r bit „0‟ vào thông điệp m bit và chia đa thức gồm m + r 
bit đó cho đa thức sinh. Dữ liệu đƣợc truyền gồm m bit thông điệp gốc, tiếp theo là r bit CRC. Phƣơng pháp CRC[6], 
[14] thực hiện trên thông điệp nhƣ đa thức trên trƣờng GF(2). Tại bên nhận, ngƣời nhận sử dụng chung đa thức sinh đó 
để chia thông điệp nhận đƣợc. Nếu đa thức phần dƣ tìm đƣợc sau khi chia thông điệp nhận đƣợc đó bằng 0 thì thông 
điệp không có lỗi, ngƣợc lại là có lỗi. 
Trong giao thức MoDNP3, thông điệp ban đầu có thể biểu diễn dƣới dạng đa thức: ( ) 
 , biểu diễn dƣới dạng nhị phân là [ ], aN-1 là bit có trọng số cao nhất, n0 là 
bit có trọng số thấp nhất. 
822 VỀ MỘT PHƢƠNG PHÁP NÂNG CAO AN TOÀN TRONG MẠNG ĐIỀU HÀNH GIÁM SÁT CÔNG NGHIỆP 
NH KSN OH
Data
DataOH
DataOHKSN
DataOHKSNNH
PD
DataOHKSNNH PD
CRC cải tiến
DataOHKSNNH PD CRC
AES 
algorithm
DataOHKSNNH PD CRC
DataOHKSNNH PD CRC
Data
Tầng giả chuyển vận
Tầng liên kết dữ liệu 
(tối đa 292 byte)
Tầng vật lý
Trong đó:
NH: New Header
KSN: Key Sequence Number
OH: Original Header
PD: Padding
CRC: Cyclic Redundancy Check
TS: TimeStamp
Tối đa 2048 byte
TS
TS
TS
Hình 2. Cấu trúc bên trong của MoDNP3 
Trong việc tính CRC, luôn luôn kết hợp với đa thức sinh G(x) có bậc M, G(x) đƣợc biểu diễn dƣới dạng đa thức 
 ( ) 
 , dạng nhị phân [ ]. 
Trong thuật toán CRC cải tiến, chia thông điệp ban đầu gồm N bit [ ] thành n đoạn, mỗi đoạn có 
M bit. Không mất tính tổng quát, N = nM, với N là số bit của thông điệp ban đầu, M là số bít của mỗi đoạn, n là số 
nguyên dƣơng. Trong giao thức MoDNP3, thông điệp gồm 272 byte đƣợc chia thành 68 đoạn (S0, S1,  S67), mỗi đoạn 
4 byte, nhƣ đƣợc thể hiện trong Hình 3. 
S0...S66S67
l0...l66l67
Å
Ä Ä Ä Ä
CRC 
Hình 3. CRC cải tiến 
Trong đó, ( ) ( ) 
 . 
Thông điệp gốc sẽ là: ( ) 
 (1). Và Si(x) là đoạn thứ i của thông điệp gốc. 
Với thông điệp gốc là P(x) và đa thức sinh G(x), chúng ta có thể tính CRC bằng cách bổ sung M bit 0 sau bit có 
trọng số thấp nhất và chia thông điệp sau khi đã bổ sung cho đa thức G(x). Kết quả là: 
 [ ( )] ( ( ) ) ( ) (2). Từ (2) và tính chất đồng dƣ, việc tính trên các đoạn thông điệp đã chia (1) 
nhƣ sau: [ ( )] ( )
 ( ) 
 ( ). Ở đây, ( ) ( ) ( ). 
 ( ) 
( ) ( ) ( ) ( ) 
( ) ( ), với i = 0, 1, 2, , n-1. Với bậc của đa thức 
Si(x) trong mỗi đoạn nhỏ hơn M. Xác định hệ số l, li = x
(i+1)M
 mod G(x) với i = 0,1,2, , n-1. 
Sau đó tính CRC nhƣ sau: CRC[P(x)] = Sn-1 Ä ln-1Å  ÅS0 Ä l0. 
Sử dụng đa thức sinh G(x) để tính l. Để tính các thành phần của l, chúng ta có: 
l0=x
M
 mod G(x) = {gM-1 + gM-2 + +g0} 
l1=x
2M
 mod G(x) = {l0 Ä l0} 
.. 
Nguyễn Đào Trƣờng, Nguyễn Doãn Cƣờng, Nguyễn Đức Tâm 823 
ln=x
nM
 mod G(x) = l0
n
. 
Kết quả ta có (l0, l1, ,ln), sau đó tính CRC nhƣ sau: CRC(P(x)) = Sn-1 Ä ln-1Å  ÅS0 Ä l0. 
Phép toán Ä, Å trong các biểu thức trên là phép nhân và phép cộng trên trƣờng GF(2) (Galois Field). 
Thuật toán CRC cải tiến đƣợc mô tả nhƣ sau: 
B1. Thông điệp N bit, chia thành n đoạn [Sn-1Sn-2S1S0] và mỗi đoạn có kích thƣớc M bit (N = nM). 
B2. Khởi tạo đa thức sinh G(x) với bậc M đồng thời tính các hệ số l (nhƣ đã trình bày ở trên). 
B3. Nhân n-cặp trên trƣờng GF(2) đồng thời và sau đó thực hiện phép XOR thu đƣợc CRC. 
Thông điệp ban đầu sẽ đƣợc chia thành 68 đoạn, mỗi đoạn 4 byte. Những đoạn này sẽ sử dụng thuật toán CRC 
để tạo ra xác thực thông điệp. Trong Hình 3 mô tả CRC cải tiến. Trong thuật toán CRC đƣợc sử dụng để đảm bảo tính 
toàn vẹn của thông điệp trong giao thức SCADA. Ở đây 4 byte đƣợc sử dụng trong CRC trong 20 byte và những byte 
còn lại phục vụ trong tƣơng lai. Do đó giao thức này sẽ đƣợc xác thực và toàn vẹn bằng cách sử dụng thuật toán mã 
AES cải tiến và CRC cải tiến nhƣ đã trình bày ở trên. Với giải pháp này chúng tôi sắp xếp lại các byte của giao thức 
DNP3 để đảm bảo tính bí mật, toàn vẹn và xác thực. Trong giao thức này chúng tôi đã thay đổi một số cách sắp xếp 
thông tin trong giao thức để đảm bảo tính an toàn của giao thức. Phần mở đầu LH ban đầu và dữ liệu Payload đƣợc mã 
hóa bằng thuật toán AES để đảm bảo tính bí mật của thông điệp. 4 byte phần CRC đề xuất của chúng tôi đƣợc sử dụng 
để xác thực thông điệp. 4 byte đánh dấu thời gian đƣợc sử dụng để chống tấn công phát lại trong SCADA. 
3. Đánh dấu thời gian 
Đánh dấu thời gian đƣợc bên nhận sử dụng kết hợp với khe thời gian nội bộ để kiểm tra tính mới của gói tin vừa 
nhận. Giải pháp này sử dụng một số tuần tự 4 byte đơn giản và đƣợc cung cấp cho tất cả các thiết bị DNP3 với những 
khe thời gian có kích thƣớc hữu hạn để xác minh tính mới của gói tin. Do đó, giải pháp này không những thuận tiện mà 
còn hoàn toàn an toàn. Việc triển khai thực tế sử dụng các đánh dấu thời gian NTP (Network Time Protocol)[7] phù 
hợp trong việc đánh giá tính mới của gói tin với độ chính xác cao. Tất nhiên, việc thực hiện các đánh dấu thời gian 
NTP yêu cầu một máy chủ NTP trong kiến trúc SCADA để cung cấp một xung nhịp đồng bộ đáng tin cậy cho tất cả 
các thiết bị tham gia truyền thông. Tại bên nhận, sau khi giải mã thông điệp thì thiết bị Slave phải đối chiếu đánh dấu 
thời gian này với thời gian trong khóa phiên (trong phần 4.), nếu hai thời gian này khớp nhau thì mới tiếp tục thực hiện 
hành động trong thông điệp, ngƣợc lại thì Slave bỏ qua hành động yêu cầu này vì có thể là một tấn công phát lại. 
4. Quản lý khóa trong MoDNP3 
Việc quản lý khóa trong MoDNP cần đơn giản phù hợp với môi trƣờng mạng SCADA. Đƣợc thực hiện trong 
quá trình cấu hình thiết bị Primary Master, Secondary Master và các thiết bị Slave để thiết lập kết nối khởi tạo giữa 
chúng; 
Master Slave
MoDNP3 request
ModDNP3 response
M_CSDLKhoa
Slave 
Address KSN
Time Stamp
Slave 
Session Key
S_CSDLKhoa
0 Primary
1 Secondary
Master 
Session Key
KSN
Hình 4. Truyền thông trong SCADA/MoDNP3 
Thiết bị Master tạo và quản lý một cơ sở dữ liệu khóa an toàn “M_CSDLKhoa” cho các khóa phiên dùng chung 
với các Slave (Hình 4). Cơ sở dữ liệu này bao gồm 4 trƣờng: Địa chỉ Slave đƣợc sử dụng nhƣ một chỉ số khóa, khóa 
phiên dùng chung, đánh dấu thời gian để giới hạn việc sử dụng khóa dùng chung trong thời gian định trƣớc và số thứ tự 
khóa. Thiết bị Master gọi hàm “M_TaoKhoa” để tạo ra một khóa phiên duy nhất khi mà khóa phiên cũ đã hết hạn. Hàm 
“M_BosungKhoa” để thêm một khóa phiên mới vào cơ sở dữ liệu khóa. 
Thiết bị Slave phải duy trì hai khóa phiên, một khóa để truyền thông với thiết bị Primary Master, khóa còn lại để 
truyền thông với thiết bị Secondary Master (Hình 4). Cơ sở dữ liệu này có 3 trƣờng và 2 bản ghi: (0, Khóa phiên thiết 
bị Master chính (Primary Master Session Key) và 1, Khóa phiên thiết bị Master thứ hai (Secondary Master Session 
Key), Số thứ tự khóa (Key Sequence Number)). Hàm “S_ BosungKhoa” để cập nhật khóa phiên mới vào cơ sở dữ liệu 
khóa và hàm “S_BosungSTTKhoa” để cập nhật số thứ tự khóa KSN vào cơ sở dữ liệu khóa. 
824 VỀ MỘT PHƢƠNG PHÁP NÂNG CAO AN TOÀN TRONG MẠNG ĐIỀU HÀNH GIÁM SÁT CÔNG NGHIỆP 
IV. KẾT LUẬN 
Khi hệ thống mạng điều hành giám sát công nghiệp bị xâm nhập trái phép, kẻ tấn công có thể từ đó phá hủy 
những công trình quan trọng của quốc gia. Những hiểm họa từ những mạng này là rất lớn, nó ảnh hƣởng đến an ninh 
của đất nƣớc, ảnh hƣởng tới tính mạng của ngƣời dân. Trong bài báo này, chúng tôi nghiên cứu vấn đề an toàn giao 
thức truyền thông trong mạng điều hành giám sát công nghiệp. Để bảo vệ các mạng SCADA, chúng tôi hƣớng tới 
những giao thức mà khi xây dựng chúng ban đầu chƣa có những thuộc tính an toàn. Với mục đích thay đổi cấu trúc bên 
trong của các giao thức đó để tạo ra giao thức toàn vẹn, xác thực hơn, chống tấn công phát lại. Trong cấu trúc giao thức 
đề xuất, sử dụng hai thuật toán đƣợc để cải tiến khả năng an toàn và toàn vẹn của phần Payload. Chúng tôi đã sử dụng 
4 byte cho CRC cải tiến, 4 byte đánh dấu thời gian và còn lại 12 byte trong cấu trúc để cho những cải tiến trong tƣơng 
lai. Mục đích là tăng tính an toàn của giao thức trƣớc những hiểm họa trên mạng điều hành giám sát công nghiệp. 
TÀI LIỆU THAM KHẢO 
[1] Anupam Saxena, Om Pal, Zia Saquib, Dhiren Patel, “Customized PKI for SCADA Systems Network”, Int. J. of Advanced 
Networking and Applications. 282. Volume: 01, Issue: 05, Pages: 282-289 , 2010. 
[2] Athar Mahboob, Junaid Zubairi, “Intrusion Avoidance for SCADA Security in Industrial Plants”, Collaborative Technologies 
and Systems, 2010. 
[3] David C. Feldmeier, “Fast Software Implementation of Error Detection code”, IEEE/ACM Transactions on networking, 
December 1995. 
[4] Distributed Network Protocol (DNP3), IEEE Standard for Electric Power Systems Communications 2012. 
[5] DNP3 Application Note AN2003-001,  
[6] D. V. Sarwate, “Computation of Cyclic Redundancy Checks via Table Lookup”, Communications of the ACM, vol. 31, no. 8 
1988. 
[7] D. L. Mills. Internet time synchronization: The network time protocol. IEEE Transactions on Communications, 39(10):1482–
1493, October 1991. 
[8] H. Michael Ji, Earl Killian, “Fast Parallel CRC Algorithm and Implementation on a Configurable Processor”, IEEE 2002 vol3. 
[9] M. Bellare, P. Rogaway, “Entity authentication and Key distribution”, in Advances in cryptology-CRYPTO 93, Leture notes in 
computer Science, Springer 1994. 
[10] Munir Majdalawieh, Francesco Parisi- Presicce, Duminda Wijesekera (2006), “DNPSec Distributed Network Protocol Version 
3 (DNP3)”, Security Framework Advances in Computer, Information and Systems Sciences and Engineering 2006. 
[11] P. Rogaway, M. Bellare, J. Black, “OCB A block –cipher mode of operation for efficient authenticated”, ACM Trans. Inf. Syst. 
Secure 2006. 
[12] Robert Dawson, “Secure Communication for Critical Infrastructure Control System”, University of Queensland 1997. 
[13] Safeguarding IEDs, Substations, and SCADA Systems Against Electronic Intrusions by Paul Oman, Edmund O. Schweitzer, 
III, and Jeff Roberts - Schweitzer Engineering Laboratories, Inc. Pullman, WA USA. 
[14] Sanjay M.Joshi, Pradeep K. Dubey, Marc A. Kalpan, “A new parallel algorithm for CRC Generation, Communication”, ICC 
IEEE International Conference 2000. 
[15] S. Bhagaria, S B Prabhakar, Z Saquib, “Flexi-DNP3: Flexible distributed network protocol version 3(DNP3) for SCADA 
security”,Recent Trends in Information System 2011. 
[16] S Saiwan, P Jain, Z Saquib, D Patel, “Cryptography key Management for SCADA System An Architectural Framework”, 
Advances in Computing Control, & Telecommunication 2011. 
[17] V. Sumathy & C. Navaneethan, “Enhanced algorithm for strong encryption”, International Journal of Advances in Engineering 
& Technology, Sept 2012. 
[18] Zia Saquib, D. Patel, R. Rajrajan, “A configurable and efficient key management scheme for SCADA” International Journal of 
Research and Reviews 2011. 
A NEW METHOD FOR ENHANCING SECURITY ON NETWORKED 
INDUSTRIAL SUPERVISORY AND CONTROL SYSTEM 
Nguyen Dao Truong, Nguyen Doan Cuong, Nguyen Duc Tam 
ABSTRACT— This paper investigates security issues of SCADA communication protocol. SCADA stands for Supervisory Control 
and Data Acquisition, a communication technology which collects data from distant facilities and sends control signals to actuators. 
Due to the need to connect SCADA systems with corporate networks and the Internet, so SCADA components are considered to be 
profoundly privileged targets for cyber attacks through which hackers can easily demolish the nation’s critical infrastructure and 
economy. In order to protect the SCADA networks, we focus on the protocols as they were not designed with inherent security 
features. Security system through protocol hardening is the main focus of this paper. The goal is to modify the structure of such 
protocols to provide more integrity and authentication. In the proposed structure, two algorithms are used to enhance the security 
and integrity of the payload and using timestamp againt replay on the network. 

File đính kèm:

  • pdfve_mot_phuong_phap_nang_cao_an_toan_trong_mang_dieu_hanh_gia.pdf