摘 "要: 針對工業(yè)控制網(wǎng)絡(luò)通信信息安全與穩(wěn)定問題,設(shè)計一種基于SDN和集成學(xué)習的工業(yè)控制網(wǎng)絡(luò)安全防護系統(tǒng)。該系統(tǒng)采用SDN技術(shù),分為物理層、現(xiàn)場層、轉(zhuǎn)發(fā)層、控制層和應(yīng)用層等5個層次。物理層包含現(xiàn)場終端設(shè)備;現(xiàn)場層通過控制模塊與操作員站實現(xiàn)對現(xiàn)場終端的控制;轉(zhuǎn)發(fā)層使用SDN交換機進行通信數(shù)據(jù)傳輸,并將數(shù)據(jù)鏡像傳輸至應(yīng)用層進行安全分析;控制層中的SDN控制器管理和控制SDN交換機,并執(zhí)行應(yīng)用層下發(fā)的安全防護策略;應(yīng)用層利用集成學(xué)習算法對工業(yè)控制網(wǎng)絡(luò)進行入侵行為檢測,通過安全響應(yīng)模塊分析入侵信息并選擇相應(yīng)的防御機制。實驗結(jié)果表明,所設(shè)計系統(tǒng)滿足工業(yè)控制網(wǎng)絡(luò)通信的實時性要求,能準確地實施入侵檢測,從而保障工業(yè)控制網(wǎng)絡(luò)的安全性和正常通信。
關(guān)鍵詞: 工業(yè)控制網(wǎng)絡(luò); 安全防護; SDN技術(shù); 集成學(xué)習; 交換機; 控制器; 入侵檢測; 防御機制
中圖分類號: TN915.1?34; TP393 " " " " " " " " " 文獻標識碼: A " " " " " " " " " "文章編號: 1004?373X(2024)06?0022?05
Industrial control network security protection system based on SDN and
integrated learning
YANG Fan1, DING Zhi2, WANG Yang2, QING Lingyun2
(1. Chengdu Institute of Computer Applications, University of Chinese Academy of Sciences, Chengdu 610123, China;
2. Information Center, Sichuan Tobacco Industry Co., Ltd., Chengdu 610020, China)
Abstract: In allusion to the problem of communication information security and stability in industrial control networks, an industrial control network security protection system based on SDN and ensemble learning is designed. The SDN technology is applied in the system, and the system is divided into physical layer, field layer, forwarding layer, control layer, and application layer. The physical layer includes on?site terminal devices. The on?site layer can control the on?site terminal by means of control modules and operator stations. In the forwarding layer, the SDN switch is used for the communication data transmission and to mirror the data to the application layer for the security analysis. The SDN controller in the control layer is used to manage and control the SDN switch, and execute the security protection policies issued by the application layer. In the application layer, the integrated learning algorithm is used to detect intrusion behavior in industrial control networks, and the security response module is used to analyze intrusion information and select corresponding defense mechanisms. The experimental results demonstrate that the designed system can meet the real?time requirements of industrial control network communication and can accurately implement intrusion detection, thereby ensuring the security and normal communication of the industrial control network.
Keywords: industrial control network; safety protection; SDN technology; integrated learning; switch; controller; intrusion detection; defense mechanism
0 "引 "言
工業(yè)控制網(wǎng)絡(luò)中所包含的新型網(wǎng)絡(luò)技術(shù)越來越多,導(dǎo)致其從封閉狀態(tài)逐漸轉(zhuǎn)向互聯(lián)狀態(tài)[1],因此也對工業(yè)控制網(wǎng)絡(luò)的安全保障性能提出了越來越高的要求[2]。
近年來,相關(guān)領(lǐng)域?qū)W者對于工業(yè)控制網(wǎng)絡(luò)的安全防護問題進行了大量研究。例如,顧兆軍等人針對工控網(wǎng)絡(luò)安全性問題,提出一種基于時間自動機的方法[3],但該方法在實際應(yīng)用過程中對不同類型的網(wǎng)絡(luò)入侵與攻擊無法做到全面防護。丁朝暉等人在工控網(wǎng)絡(luò)安全研究過程中,從多維角度出發(fā),通過不同形式保障網(wǎng)絡(luò)通信安全[4]。但該方法無法滿足網(wǎng)絡(luò)通信的時效性要求。尹彥尚等人提出基于貝葉斯攻擊圖的SDN安全預(yù)測方法[5],但該方法無法滿足網(wǎng)絡(luò)通信的安全性要求。
為解決上述方法中存在的問題,本文設(shè)計一種基于SDN和集成學(xué)習的工業(yè)控制網(wǎng)絡(luò)安全防護系統(tǒng),保障網(wǎng)絡(luò)通信安全。
1 "工業(yè)控制網(wǎng)絡(luò)安全防護系統(tǒng)設(shè)計
1.1 "系統(tǒng)整體架構(gòu)設(shè)計
基于SDN和集成學(xué)習的工業(yè)控制網(wǎng)絡(luò)安全防護系統(tǒng)共分為5個層次,分別是物理層、現(xiàn)場層、轉(zhuǎn)發(fā)層、控制層以及應(yīng)用層,整體架構(gòu)如圖1所示。
1) 物理層中包含若干個現(xiàn)場終端,這些終端均為工業(yè)控制網(wǎng)絡(luò)的物理對象。
2) 現(xiàn)場層主要包含兩部分:一部分是由傳感器、控制器以及執(zhí)行器共同組成的控制模塊;而另一部分是操作員站。該層的主要功能是控制物理層中的各物理對象。
3) 轉(zhuǎn)發(fā)層內(nèi)主要有SDN交換機,負責傳輸現(xiàn)場層生成的控制數(shù)據(jù)。SDN交換機根據(jù)流表轉(zhuǎn)發(fā)相應(yīng)的報文,并將工業(yè)控制網(wǎng)絡(luò)內(nèi)的通信數(shù)據(jù)鏡像傳輸給應(yīng)用層進行安全分析。
4) 控制層內(nèi)包含SDN控制器,使用Open Flow協(xié)議全面管理和控制上一層的SDN交換機,并執(zhí)行應(yīng)用層下傳的安全防護策略。
5) 應(yīng)用層主要由兩個模塊組成,分別是安全監(jiān)測模塊以及安全響應(yīng)模塊。安全監(jiān)測模塊利用SDN鏡像獲取工業(yè)控制網(wǎng)絡(luò)的控制數(shù)據(jù),采用集成學(xué)習算法進行入侵檢測,實時監(jiān)測工業(yè)控制網(wǎng)絡(luò)的運行狀態(tài);在發(fā)現(xiàn)異常入侵的條件下,安全響應(yīng)模塊確定入侵信息防御機制,利用REST API將入侵信息防御指令傳輸至SDN控制器內(nèi),達到工業(yè)控制網(wǎng)絡(luò)安全防護的目的。
如圖1所示,基于SDN和集成學(xué)習的工業(yè)控制網(wǎng)絡(luò)安全防護系統(tǒng)的核心為:利用SDN鏡像得到工業(yè)控制網(wǎng)絡(luò)內(nèi)的通信流量,并對其進行監(jiān)測與分析,在發(fā)現(xiàn)入侵信息后,觸發(fā)對應(yīng)的防護機制,利用SDN執(zhí)行對應(yīng)的防護策略,完成入侵檢測至安全防護的閉環(huán),由此確保工業(yè)控制網(wǎng)絡(luò)的動態(tài)安全。
1.2 "SDN控制器結(jié)構(gòu)設(shè)計
SDN控制器是軟件定義網(wǎng)絡(luò)架構(gòu)的主要組成部分,其掌控工業(yè)控制網(wǎng)絡(luò)的全局信息,對于工業(yè)控制網(wǎng)絡(luò)的路徑網(wǎng)絡(luò)與流量拓撲進行管控。SDN控制器的主要特征描述如下:
1) 可靠性強。SND控制器在實際工業(yè)控制網(wǎng)絡(luò)安全防護系統(tǒng)應(yīng)用過程中需具備較強的容錯、容災(zāi)能力,由此符合系統(tǒng)高可靠性需求。
2) 可擴展性。該特性是大規(guī)模工業(yè)控制網(wǎng)絡(luò)有效應(yīng)用的基礎(chǔ)[6]。
為滿足高度可靠性與可擴展性需求,工業(yè)控制網(wǎng)絡(luò)安全防護系統(tǒng)設(shè)計過程中選取ONOS架構(gòu)為SDN控制器的基礎(chǔ)架構(gòu),并對控制器內(nèi)的業(yè)務(wù)驅(qū)動與邏輯進行獨立自主設(shè)計。
SND控制器的整體架構(gòu)如圖2所示。
分析圖2可知,SDN控制器的設(shè)計可在麒麟操作系統(tǒng)中進行,中標麒麟服務(wù)器操作系統(tǒng)可令SDN控制器內(nèi)包含64位系列CPU,并令其具備虛擬化功能。SDN控制器的北向接口與南向接口分別采用REST API接口和gRPC接口。
1.3 "基于集成學(xué)習的工業(yè)控制網(wǎng)絡(luò)入侵檢測
集成學(xué)習算法作為一種通過若干個分類器處理同一問題的方法,能夠顯著提升學(xué)習系統(tǒng)的泛化能力[7]。一般情況下,集成學(xué)習算法可劃分為兩個部分:第一部分是通過單一學(xué)習算法分別訓(xùn)練樣本;第二部分是集成單一網(wǎng)絡(luò)的輸出結(jié)果,由此獲取最終結(jié)果。
應(yīng)用層中采用集成學(xué)習算法對工業(yè)控制網(wǎng)絡(luò)進行入侵檢測。針對工業(yè)控制網(wǎng)絡(luò)的特性以及入侵檢測的實際情況,選取異構(gòu)集成模式[8],以及具有優(yōu)質(zhì)泛化性能的K最鄰近算法、貝葉斯算法、支持向量機算法以及神經(jīng)網(wǎng)絡(luò)算法構(gòu)建分類器模型。為充分增強不同分類器模型間的差異性,結(jié)合特征集選擇訓(xùn)練集的集成學(xué)習入侵檢測算法,詳細過程描述如下:
1) 按照集成學(xué)習算法中一種普遍使用的算法——Bagging算法,對工業(yè)控制網(wǎng)絡(luò)通信數(shù)據(jù)樣本實施重采樣,由此獲取若干個工業(yè)控制網(wǎng)絡(luò)初始通信數(shù)據(jù)集的樣本子集。
2) 選取特征集方法,隨機選取步驟1)中所得的工業(yè)控制網(wǎng)絡(luò)初始通信數(shù)據(jù)集的樣本子集特征,由此獲取特征子集。
3) 選取集成學(xué)習算法,通過各類學(xué)習算法學(xué)習所獲取的工業(yè)控制網(wǎng)絡(luò)通信數(shù)據(jù)特征子集,其中集成學(xué)習算法內(nèi)的各分類通過試湊方式確定參數(shù)[9],由此得到不同分類器。
4) 針對不同分類器的入侵判斷結(jié)果,進行加權(quán)綜合處理。通過螢火蟲算法對加權(quán)處理過程中的權(quán)值進行尋優(yōu)處理,由此獲取最終的工業(yè)控制網(wǎng)絡(luò)入侵檢測結(jié)果。
基于集成學(xué)習的入侵檢測流程如圖3所示。
1.4 "安全防護算法
采用集成學(xué)習方法完成工業(yè)控制網(wǎng)絡(luò)入侵檢測后,構(gòu)建工業(yè)控制網(wǎng)絡(luò)信息安全的防御功能模塊,構(gòu)建動態(tài)的工業(yè)控制網(wǎng)絡(luò)入侵信息防御機制。
防御機制子模塊的主要功能為對入侵信息進行分析,同時選取對應(yīng)的防御機制,令工業(yè)控制網(wǎng)絡(luò)運行達到安全、穩(wěn)定狀態(tài)。以三元組描述工業(yè)控制網(wǎng)絡(luò)安全防御過程[10],防御機制的主要算法如下:
[θ=Esδξ] " " " " " " " " (1)
式中:[Es]和[δ]分別表示入侵側(cè)同防御側(cè)工業(yè)參與數(shù)據(jù)與效用計算式;[ξ]表示參與數(shù)據(jù)的對應(yīng)防護量。
針對入侵信息實施自動追蹤與攔截,但入侵信息內(nèi)包含一定量的噪聲信息,導(dǎo)致所選取的入侵信息防御機制并非全部準確。為了解決這一問題,在追蹤與攔截入侵數(shù)據(jù)過程中引入泛化誤差,通過泛化誤差判斷對置信度的誤差,公式如下:
[w=θ?a,bscona?] " " " " " (2)
式中:[w]和[?]分別表示泛化誤差和數(shù)據(jù)集X內(nèi)所含數(shù)據(jù)數(shù)量。
基于上述誤差判斷結(jié)果,在誤差值大于1的條件下,需再次確定置信度;在誤差值小于1的條件下,說明誤差對于實際計算結(jié)果的影響并不顯著,可在不考慮此誤差的條件下開展后續(xù)工作。由數(shù)據(jù)庫內(nèi)獲取合適的工業(yè)控制網(wǎng)絡(luò)入侵信息防御機制,通過安全響應(yīng)模塊中央處理器的控制單元傳輸控制命令,觸發(fā)相應(yīng)的防御機制,同時在存儲器內(nèi)存儲當前的數(shù)據(jù)信息,達到數(shù)據(jù)處理的目的,由此完成實時、智能的工業(yè)控制網(wǎng)絡(luò)入侵處理,增強工業(yè)控制網(wǎng)絡(luò)的安全防護性能,為工業(yè)控制網(wǎng)絡(luò)提供安全、穩(wěn)定的運行環(huán)境。
2 "實 "驗
2.1 "實驗參數(shù)設(shè)置
本文的實驗參數(shù)如表1所示。
2.2 "實驗方法
本文設(shè)計一種基于SDN和集成學(xué)習的工業(yè)控制網(wǎng)絡(luò)安全防護系統(tǒng),為驗證該系統(tǒng)的實際應(yīng)用性能,以某工業(yè)控制網(wǎng)絡(luò)為實驗對象,采用本文系統(tǒng)對實驗對象進行安全防護測試。
2.2.1 "端口跳變測試
圖4所示為本文系統(tǒng)端口跳變測試結(jié)果。
分析圖4得到,采用本文系統(tǒng)后,實驗對象端口跳變時能夠?qū)崿F(xiàn)正常數(shù)據(jù)通信,跳變前后實驗對象通信過程中的延遲大致相同,僅在跳變的一瞬間出現(xiàn)大幅提升。由此說明采用本文系統(tǒng)對實驗對象進行控制,可以滿足實驗對象通信的實時性要求。
2.2.2 "入侵檢測結(jié)果
本文系統(tǒng)的入侵檢測結(jié)果如表2所示。分析表2得到,采用本文系統(tǒng)對實驗對象進行入侵檢測,所得入侵檢測結(jié)果與實際情況完全一致,由此說明本文系統(tǒng)能夠準確實現(xiàn)實驗對象的入侵檢測。
2.2.3 "攻防性能測試
本文系統(tǒng)進行功能性能測試過程中,利用hping3攻擊工具對入侵行為進行模擬仿真,在實驗對象運行第5 s時對其進行入侵攻擊。采用本文系統(tǒng)針對入侵行為調(diào)用防御機制進行安全防御,本文系統(tǒng)的攻防性能測試結(jié)果如圖5所示。
分析圖5得到,實驗對象正常運行條件下的通信數(shù)據(jù)包約為50個/s,當實驗對象受到入侵攻擊的條件下,其通信數(shù)據(jù)包數(shù)量快速提升至45 000個左右。采用本文系統(tǒng)進行防護后,實驗對象內(nèi)部產(chǎn)生斷連現(xiàn)象;采用本文系統(tǒng)進行防護前,實驗對象通信數(shù)據(jù)包在3 s內(nèi)快速下降。由此說明采用本文系統(tǒng)對實驗對象進行安全防護后,能夠保障實驗對象在內(nèi)部斷聯(lián)前阻斷入侵攻擊,由此確保實驗對象安全運行效果,令實驗對象正常通信。
3 "結(jié) "論
本文整體考慮工業(yè)控制網(wǎng)絡(luò)安全防護需求,設(shè)計一種基于SDN和集成學(xué)習的工業(yè)控制網(wǎng)絡(luò)安全防護系統(tǒng),基于SDN設(shè)計系統(tǒng)整體架構(gòu),通過集成學(xué)習進行系統(tǒng)入侵檢測,基于檢測結(jié)果進行入侵處理,實現(xiàn)安全防護目的。實驗結(jié)果表明,所設(shè)計系統(tǒng)滿足工業(yè)控制網(wǎng)絡(luò)通信的實時性要求,能準確地實施入侵檢測,從而保障工業(yè)控制網(wǎng)絡(luò)的安全性和正常通信。
注:本文通訊作者為丁之。
參考文獻
[1] 原錦明.云計算網(wǎng)絡(luò)安全防護技術(shù)在冶金工業(yè)控制系統(tǒng)中的應(yīng)用:評《有色輕金屬冶煉過程優(yōu)化與控制系統(tǒng)》[J].中國有色冶金,2023,52(2):165.
[2] 張春坡.黑岱溝露天煤礦工業(yè)控制網(wǎng)絡(luò)安全防護技術(shù)研究與應(yīng)用[J].煤炭工程,2021,53(z1):144?148.
[3] 顧兆軍,孫浩然.基于時間自動機的工控系統(tǒng)網(wǎng)絡(luò)安全研究[J].計算機仿真,2023,40(1):326?332.
[4] 丁朝暉,張偉,楊國玉,等.多維工控系統(tǒng)網(wǎng)絡(luò)安全風險監(jiān)測預(yù)警系統(tǒng)研究與應(yīng)用[J].電子技術(shù)應(yīng)用,2023,49(2):76?79.
[5] 尹彥尚,索同鵬,董黎剛,等.基于貝葉斯攻擊圖的SDN安全預(yù)測方法[J].電信科學(xué),2021,37(11):75?85.
[6] 言洪萍,周強,王世豪,等.基于SDN的實際網(wǎng)絡(luò)流中Tor網(wǎng)頁復(fù)合特征提取方法[J].通信學(xué)報,2022,43(3):76?87.
[7] 姚玉坤,任麗丹,任智,等.MSC中基于SDN的拓撲感知RLNC重傳方案[J].系統(tǒng)工程與電子技術(shù),2022,44(4):1393?1400.
[8] 賈立鵬,王鳳英,姜倩玉.基于多特征融合和集成學(xué)習的惡意代碼檢測研究[J].中國科技論文在線精品論文,2021,14(2):168?176.
[9] 陳仲磊,伊鵬,陳祥,等.基于集成學(xué)習的系統(tǒng)調(diào)用實時異常檢測框架[J].計算機工程,2023,49(6):162?169.
[10] 曹波,李成海,宋亞飛,等.基于Stacking集成學(xué)習的網(wǎng)絡(luò)安全態(tài)勢預(yù)測方法[J].空軍工程大學(xué)學(xué)報,2022,23(5):101?107.
[11] 米慶軍,馮大鵬,于慧超.工業(yè)控制系統(tǒng)網(wǎng)絡(luò)安全體系的架構(gòu)設(shè)計[J].自動化應(yīng)用,2023,64(10):88?90.
[12] 王樂,劉順志,韓正.軍工企業(yè)工業(yè)控制系統(tǒng)網(wǎng)絡(luò)安全防護研究[J].工業(yè)信息安全,2023(1):61?67.
[13] 賈志強.基于工控網(wǎng)絡(luò)數(shù)據(jù)的網(wǎng)絡(luò)安全態(tài)勢分析研究[D].北京:華北電力大學(xué)(北京),2023.
[14] 楊軼茜,張龍山.大數(shù)據(jù)背景下工業(yè)控制網(wǎng)絡(luò)信息安全防護存在的問題及措施[J].網(wǎng)絡(luò)安全和信息化,2023(3):119?121.
[15] 張永亮.基于深度學(xué)習的工業(yè)控制網(wǎng)絡(luò)安全管理模型應(yīng)用與研究[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2023(11):10?12.