繆海飛 曹 翔 林 青 胡紹謙 湯震宇
電力監控系統實時DDoS攻擊檢測方法
繆海飛 曹 翔 林 青 胡紹謙 湯震宇
(南京南瑞繼保電氣有限公司,南京 211102)
針對目前難以實時準確且低能耗地識別電力監控系統中分布式拒絕服務(DDoS)攻擊的問題,本文基于電力監控系統專用防火墻裝置提出一種實時DDoS攻擊檢測方法。采用軟硬件結合的方式:硬件方面,防火墻采用現場可編程門陣列(FPGA)實時采集報文數據,在轉發報文時更新計數器,實時提供檢測所需的特征值并進行攻擊預判;軟件方面,在防火墻的用戶空間內運行基于機器學習的在線識別器,首先在實時采集報文數據時感知網絡狀態,當網絡可能異常時使用在線識別器檢測攻擊。本文實現了基于該方法的DDoS攻擊檢測原型系統,并進行了實驗。實驗表明,該方法可以實現資源占用低、識別準確率高的實時DDoS攻擊檢測。
電力監控系統;分布式拒絕服務(DDoS)攻擊;檢測;實時;機器學習
近年來,電力信息安全事故頻發,電力作為關乎國計民生的重要基礎設施,一直以來都是網絡攻擊的重點對象,極易成為網絡戰的首要目標。烏克蘭大停電事故也進一步印證了網絡攻擊已成為破壞電力等國家關鍵基礎設施的新型武器。
電力監控系統的信息安全建設,已經從原來的只考慮網絡邊界的“十六字方針”(橫向隔離、縱向認證、安全分區、網絡專用)過渡到電力監控系統內部。盡管電力監控系統采用專網專用的形式,但是監控專用網絡中一旦有設備或計算機被黑客攻陷,極易在專用網絡環境下傳播,導致產生網絡安全問題。在軌道交通網絡信息系統[1]、配電網自動化通信系統[2-3]和直流控制保護系統[4]中均存在較復雜的網絡安全問題。其中,特別是分布式拒絕服務(distributed denial-of-service, DDoS)攻擊帶來的危害不可小覷,DDoS攻擊的主要目的是消耗攻擊目標的計算資源,令網絡服務在一段時間內不可被訪問,致使服務癱瘓,在電力監控系統中則會導致重要設備如監控后臺無法及時響應控制命令,發生嚴重電力安全事故。DDoS攻擊流量大、范圍廣、造成的損失大,已經嚴重威脅電力系統網絡的安全,因此,如何使用較少的資源實時準確地檢測出DDoS攻擊是目前一個亟待解決的問題。
本文基于準確性和實時性要求,提出一種基于防火墻裝置的軟硬件結合的實時DDoS攻擊檢測方法,硬件負責采集數據,軟件負責檢測和分析,軟硬件各司其職,大大提升了電力監控系統內DDoS攻擊檢測的準確性和實時性。
國內外針對DDoS攻擊檢測的研究有很多,在電力監控系統網絡環境和互聯網環境下,也有很多方法來檢測DDoS攻擊。文獻[5]總結歸納了電力信息物理系統中信息側的網絡攻擊檢測方案,利用網絡流量分布規律檢測電力監控系統是否遭受DDoS攻擊。文獻[6]提出一種基于時-頻域混合特征的變電站通信網異常流量檢測方法,采用人工蜂群優化的支持向量機算法進行DDoS攻擊的檢測。文獻[7]從攻擊方視角分析了電力系統內網絡攻擊的常見模式,分析了DoS攻擊帶來的危害,提出針對性的入侵檢測方法。在傳統領域,針對DDoS攻擊的檢測更是很多,文獻[8]提出一種針對物聯網設備的基于機器學習方法的DDoS攻擊檢測方法,通過有限數量的端點和數據包之間的固定時間間隔來進行特征選擇,最終實現低成本的DDoS攻擊檢測。文獻[9]提出一種通過構建平均數據包間到達時間的模糊估計器來進行DDoS檢測的方法,首先檢測DDoS攻擊事件,然后識別有問題的IP地址。文獻[10]提出一種基于目標IP地址的熵變化來檢測DDoS攻擊的解決方案,該方法的實時性較好,能夠在攻擊報文的前500幀報文內完成檢測。文獻[11]提出一種基于網絡熵估計、協同聚類、信息增益比算法的用于在線DDoS檢測的半監督式機器學習方法,該方法的無監督部分允許減少與DDoS檢測無關的正常流量數據,從而降低誤報率并提高準確性,而受監督的部分允許降低無監督部分的誤報率并準確地對DDoS流量進行分類。文獻[12]提出使用廣義熵度量和信息距離度量兩個新的信息度量,通過測量合法流量和攻擊流量之間的差異來檢測低速率DDoS攻擊。
但是,上述方法較少用于電力監控系統內部。因為這些方法要么計算量太大導致無法做到實時性,要么可以實時檢測但是準確率較低,無法滿足電力系統對攻擊檢測的實時性和準確性要求。為解決上述問題,本文提出一種基于防火墻裝置的軟硬件結合的實時DDoS攻擊檢測方法。電力監控系統中采用的防火墻裝置,一般都擁有可編程特性,本文利用電力監控系統防火墻的可編程特性,新增硬件計數器,通過讀取硬件計數器對DDoS攻擊進行預判斷,在疑似發生DDoS攻擊時,將報文提取至防火墻的軟件層面,并運行機器學習模塊對報文數據進行檢測,從而實現資源占用低、識別準確率高的實時DDoS攻擊檢測。
本文基于電力監控系統專用防火墻裝置,該裝置用于電力監控系統內網絡報文過濾,采用多核CPU作核心處理,同時輔以現場可編程門陣列(field programmable gate array, FPGA),兩者互相配合,以便實現特定的功能。由于CPU與FPGA的結合,防火墻裝置可以同時編寫軟硬件程序,控制其對報文的處理,實現可編程功能。
因此,本文在防火墻裝置中編寫軟件代碼,在FPGA中運行硬件程序,軟件代碼可以通過對應的應用程序接口(application programming interface, API)讀取相應的硬件計數器,可以較為方便地在該平臺上實現軟硬件的配合,收發并分析報文,以及配置規則等,電力監控系統專用防火墻裝置提供了硬件基礎,可以實現實時DDoS攻擊檢測。
本文從降低設備資源使用率、實時性和準確性出發,提出基于防火墻裝置的軟硬件結合的實時DDoS攻擊檢測方法,該方法由兩大模塊組成:基于FPGA的實時數據采集模塊和基于機器學習的攻擊識別模塊。兩大模塊均在防火墻裝置的用戶空間中運行,數據采集模塊基于FPGA進行編程,改變報文在防火墻中的流向,同時記錄重要數據并保存在寄存器中;攻擊識別模塊提取寄存器值和報文特征值進行在線識別,基于機器學習技術可以高準確率地檢測出是否存在DDoS攻擊。
在對DDoS攻擊的檢測中,實時數據采集比較影響網絡性能,容易造成網絡堵塞,影響防火墻裝置的正常轉發,因此采用硬件方式實時感知網絡狀態。經過對DDoS攻擊的調研可知,攻擊過程中一般會在短時間內有大量不同的源端訪問同一個目的機器,而目的機器無法處理大量的請求,從而導致拒絕服務。這樣在鏈路上可以看到接收的報文數遠大于發出的報文數,會出現收發數量不對等和流量激增等特征,利用這樣的特征可以通過對FPGA編程,從硬件層面上獲取網絡鏈路狀態值,同時將數據保存在寄存器中,便于軟件程序讀取硬件計數器,以最小的資源代價提前感知網絡異常狀態。
實時采集模塊基于FPGA的可編程特性,將流經防火墻的報文在經過簡單的計算后保存在相應的計數器中,用戶空間的軟件可以通過硬件API獲取實時采集的數據。報文在被FPGA捕獲到后,首先解析用戶定義的關鍵字信息,隨后根據關鍵字提取報文中的相應值,然后通過查表模塊將獲取的值更新到對應的硬件寄存器中,最后報文由自定義動作模塊轉發到目的地址,硬件原理框圖如圖1所示。

圖1 硬件原理框圖
為了減少軟件和硬件之間的交互時間,本文在收集消息特征時使用字節速率來幫助實現實時攻擊預測。一般來說,正常流中的字節率會比較穩定。當主機受到DDoS攻擊時,字節率的差異會在短時間內急劇增加,在統計上呈現出一定的突變。
本文基于滑動窗口法進行DDoS攻擊檢測預判,通過計算相鄰時間段內的狀態及狀態的變化量推算是否產生異常。采取該方法以窗口的形式計算網絡中的字節速率,判斷電力監控系統網絡環境是否穩定無突變等。

由于防火墻裝置可以從硬件層面實時提供當前時刻接收到的字節總數,用Y表示,那么式(1)可以轉換為式(2),改進后的計算量更小,且無需采集報文,對網絡環境幾乎沒有影響。

根據滑動窗口閾值的思想,若+1>bf,其中閾值取0.5,則網絡可能發生了異常波動。
綜上所述,基于FPGA的實時數據采集模塊能夠實時采集數據,并根據閾值進行DDoS攻擊檢測預判,一旦檢測到網絡異常,將通知DDoS攻擊識別模塊,在該模塊中,利用機器學習技術對DDoS攻擊進行識別。
1)基于機器學習的DDoS攻擊識別機制
在發生DDoS攻擊時,網絡環境中的某些特征在統計上與正常流量差異較為明顯,如IP數量、端口數量、雙向報文數量等特征值。因此可以利用機器學習技術分析正常流量和異常流量數據,提取特征值并建模,以識別DDoS攻擊。
基于機器學習的DDoS攻擊識別機制首先進行訓練和測試,訓練數據集和測試數據集的處理如下文所述。訓練和測試完成后將得到分類模型,DDoS攻擊識別器加載該分類模型后根據實時從報文中提取出的特征值進行DDoS攻擊識別。
為了達到實時性,本文選擇以2s為時間單位,在有報文流入該模塊后,分析每個周期的流量情況,提取該周期內的特征值,形成特征向量,由訓練好的DDoS攻擊識別程序進行分類,以進行實時DDoS攻擊檢測。
2)數據集處理
為達到最佳訓練效果,本文選用CICIDS2017數據集[13],該數據集由標記的網絡流組成,包括完整的數據包pcap文件和進行過標記的CSV文件等。
本文首先從數據集中提取與DDoS攻擊相關的報文和相應的CSV文件,根據已知的DDoS攻擊的發生時間和攻擊者與受害者IP等信息,對不同的記錄進行標記,將正常記錄標記為0,DDoS攻擊記錄標記為1,提取出正常記錄約9.0萬條,攻擊記錄約13.0萬條,共約22.0萬條。
隨后對數據集進行隨機劃分,按照9:1的比例將數據集劃分為訓練數據集和測試數據集,數據集劃分結果見表1。

表1 數據集劃分結果
3)特征選擇與分類器
特征選擇指的是在特征向量中選擇出那些優秀的特征,組成新的、更精簡的特征向量的過程。它在高維數據分析中十分常用,可以剔除冗余和無關的特征,提升分類器的性能。
本文在選擇特征時基于協議分析和流量模型分析等兩大類方法,泛化性較好。本文采用封裝的特征選擇方法,其核心思想是將子集的選擇視為一個搜索優化問題,生成不同的組合,對這些組合進行評估,并與其他組合進行比較。
在特征選擇的過程中,采用的具體算法為遞歸消除特征法。首先隨機構建模型,然后選出最差的特征,把選出來的特征剔除,在剩余的特征中重復這個過程,直至遍歷完所有的特征值。該特征選擇法使用比較簡單,可以面向分類器算法進行優化,但由于存在龐大的搜索空間,因此可能具有不穩定性,需要通過知識儲備預先定義啟發式策略,因此本文在選擇特征的過程中,同時考慮了Karimazad的建議[14],最終選擇表2中的11個特征值進行DDoS攻擊識別和分類。其中,8個特征值為計數特征值,可直接從防火墻設備上的硬件計數器獲取,3個特征值為計算特征值,需要在防火墻軟件層進行簡單計算。

表2 DDoS攻擊檢測算法特征值
分類器作用是在標記好類別的訓練數據基礎上判斷一個新的觀察樣本所屬的類別。針對DDoS攻擊識別,分類器依據的學習方式為監督學習,每個訓練樣本包括訓練樣本的特征和相對應的標簽。
本文選取支持向量機(support vector machine, SVM)分類算法,利用支持向量機建立的分類器能夠同時最小化經驗誤差與最大化幾何邊緣區,提高查準率和查全率。軟件選擇開源的支持向量機的庫LibSVM[15]。
為驗證所提的DDoS攻擊檢測算法能夠低能耗、高準確率地檢測出DDoS攻擊,在電力監控系統防火墻裝置中編寫軟硬件代碼,根據2.1節和2.2節中的算法實現了DDoS攻擊檢測原型系統,原型系統運行在該防火墻上。
原型系統由三個模塊組成:FPGA模塊、硬件感知模塊和在線識別模塊。首先根據需求對FPGA進行編程,使電力監控系統防火墻設備在轉發報文的同時可以進行計數,并提供2.2節中要求的計數型特征值。
硬件感知模塊定期讀取防火墻的硬件計數器,根據閾值判斷網絡是否波動。在線識別模塊在硬件感知模塊識別出異常的網絡波動后啟動,提取報文的特征值,并使用訓練好的分類器模型識別是否為DDoS攻擊。原型系統的流程如圖2所示。
采用變電站網絡交換機作為網絡交換設備,電力系統專用防火墻中安裝DDoS攻擊檢測原型系統,PC作為終端,針對服務器進行DDoS攻擊檢測實驗。所有機器均直接或間接地連接在變電站網絡交換機上,彼此可以互相訪問,其中服務器與PC之間安裝有電力監控系統防火墻。實驗拓撲如圖3所示。
在PC1和PC2上,運行DDoS攻擊流量產生軟件Hyenae,用于模擬對服務器進行DDoS攻擊,PC和服務器上均運行變電站站內通信常用程序等以模擬正常流量。PC2除了運行以上程序外,還用作電力監控系統防火墻的控制器,用于配置流表、下發規則、離線訓練分類器、下發分類器模型及控制DDoS攻擊產生器等。在電力監控系統防火墻中,運行2.3節中實現的軟硬件結合的DDoS攻擊檢測原型系統。

圖2 原型系統流程

圖3 實驗拓撲
首先通過Hyenae程序產生大量的正常流量和TCP、UDP、ICMP等攻擊流量,在防火墻中采集報文,每隔單位時間匯總至控制器處,本次數據采集共運行2天,每一種類型(Normal、TCP、UDP、ICMP)各24h,每隔2s采集一次數據,共采集17.28萬條數據,然后在控制器上訓練SVM分類器,并采用Radial Basis核函數[16]進行驗證。訓練完成后控制器將分類模型更新至電力監控系統防火墻裝置的配置中。
實驗開始后,在兩臺機器之間正常通信,將某電力監控系統站內報文進行還原和重放,分類結果一直顯示為0(即沒有攻擊產生),在Hyenae產生攻擊流量(TCP SYN Flood)后,分類結果顯示為1(即有TCP SYN Flood攻擊),當調整DDoS攻擊類型后,如進行UDP Flood攻擊時,電力監控系統防火墻裝置中的分類程序顯示結果為相應的代碼。
在發起攻擊后,本實驗監控DDoS攻擊檢測和識別的實時性能。實驗發現,識別系統可以在1~2個周期內,即2s內確定DDoS攻擊類型,并通過控制臺打印攻擊類型。每種攻擊類型測試10min,計算周期2s,計算識別準確率。表3為實時DDoS攻擊識別程序對不同類型攻擊的識別準確率。

表3 不同DDoS攻擊的識別準確率
由表3可見,該方法能夠準確識別TCP、UDP、ICMP三種不同類型的DDoS攻擊,其中對TCP SYN Flood攻擊的識別準確率最高,達到96.3%。不同算法的對比見表4,由表4可知,與Karimazad提出的RBF神經網絡算法[14]和Subbulakshmi提出的EMC-SVM算法[17]相比,本文提出的基于硬件感知器和在線SVM的DDoS攻擊檢測有更高的準確率,較高的準確率為后續的DDoS攻擊流量的清洗提供了前提。

表4 不同攻擊檢測算法的準確率對比
同時注意到,在線識別對防火墻裝置的系統資源消耗較大,所以本文采用硬件感知結合機器學習在線識別的方式對DDoS攻擊進行檢測,降低了資源使用率。實驗中對防火墻裝置的資源使用率進行了監控,其在識別期間的CPU和RAM的使用率變化曲線如圖4所示。
由圖4可見,系統運行時CPU只使用了30%左右,當開始在線識別DDoS攻擊后,CPU使用率最高也只是在35%左右,而RAM則一直穩定在42%~48%之間。由此可見,本文提出的實時DDoS攻擊檢測方法具有占用系統資源小的特點。

圖4 檢測期間防火墻裝置的資源使用率
本文提出了一種基于電力監控系統防火墻裝置的軟硬件結合的實時DDoS攻擊檢測方法,該方法采用軟硬件結合的方式,首先利用硬件計數器感知網絡狀態,占用資源較少,在檢測到可能的網絡異常后,使用機器學習技術在線識別DDoS攻擊。由于電力監控系統防火墻裝置可以從硬件層面提供大多數特征值,因而大大減少了計算量,達到實時檢測的效果,且準確率較高。實驗表明,本文所提方法可以有效地進行實時DDoS攻擊檢測。
[1] 陳超群, 陳勃, 劉布麒, 等. 軌道交通網絡信息安全防護系統研究與設計[J]. 電氣技術, 2020, 21(2): 50-55.
[2] 王剛, 張向東, 陳順利, 等. 依托灰關聯投影的配網自動化通信網絡安全性評價研究[J]. 電氣技術, 2019, 20(6): 66-69.
[3] 金能, 梁宇, 邢家維, 等. 提升配電網線路保護可靠性的遠方保護及其與就地保護優化配合方案研究[J]. 電工技術學報, 2019, 34(24): 5221-5233.
[4] 張浩然, 賈帥鋒, 趙冠華, 等. 直流控制保護系統網絡安全分析與對策[J]. 電氣技術, 2020, 21(1): 110- 112.
[5] 湯奕, 李夢雅, 王琦, 等. 電力信息物理系統網絡攻擊與防御研究綜述: (二)檢測與保護[J]. 電力系統自動化, 2019, 43(10): 1-9.
[6] 楊挺, 侯昱丞, 趙黎媛, 等. 基于時-頻域混合特征的變電站通信網異常流量檢測方法[J]. 電力系統自動化, 2020, 44(16): 79-86.
[7] 蘇盛, 吳長江, 馬鈞, 等. 基于攻擊方視角的電力CPS網絡攻擊模式分析[J]. 電網技術, 2014, 38(11): 3115-3120.
[8] DOSHI R, APTHORPE N, FEAMSTER N. Machine learning ddos detection for consumer internet of things devices[C]//2018 IEEE Security and Privacy Workshops (SPW), San Francisco, USA, 2018: 29-35.
[9] SHIAELES S N, KATOS V, KARAKOS A S, et al.
Real time DDoS detection using fuzzy estimators[J]. Computers & Security, 2012, 31(6): 782-790.
[10] MOUSAVI S M, ST-HILAIRE M. Early detection of DDoS attacks against SDN controllers[C]//2015 International Conference on Computing, Networking and Communications (ICNC), Garden Grove, USA, 2015: 77-81.
[11] IDHAMMAD M, AFDEL K, BELOUCH M. Semi- supervised machine learning approach for DDoS detection[J]. Applied Intelligence, 2018, 48(10): 3193- 3208.
[12] YANG Xiang, LI Ke, ZHOU Wanlei. Low-rate DDoS attacks detection and traceback by using new information metrics[J]. IEEE Transactions on Infor- mation Forensics and Security, 2011, 6(2): 426-437.
[13] SHARAFALDIN I, LASHKARI A H, GHORBANI A A. Toward generating a new intrusion detection dataset and intrusion traffic characterization[C]//4th Inter- national Conference on Information Systems Security and Privacy (ICISSP), Portugal, 2018: 108-116.
[14] KARIMAZAD R, FARAAHI A. An anomaly-based method for DDoS attacks detection using RBF neural net-works[C]//Proceedings of the International Con- ference on Network and Electronics Engineering, Singapore, 2011, 11: 44-48.
[15] CHANG C C, LIN C J. LIBSVM: a library for support vector machines[J]. ACM Transactions on Intelligent Systems and Technology (TIST), 2011, 2(3): 1-27.
[16] BUHMANN M D. Radial basis functions: theory and implementations[M]. UK: Cambridge University Press, 2003.
[17] SUBBULAKSHMI T, BALAKRISHNAN K, SHALINIE S M, et al. Detection of DDoS attacks using enhanced support vector machines with real time generated dataset[C]//2011 Third International Conference on Advanced Computing, India, 2011: 17-22.
Real-time DDoS attack detection method in power monitoring system
MIAO Haifei CAO Xiang LIN Qing HU Shaoqian TANG Zhenyu
(NR Electric Co., Ltd, Nanjing 211102)
Aiming at the problem that distributed denial-of-service (DDoS) attacks in power monitoring system are difficult to identify in real time with high accuracy and low energy consumption, a real-time DDoS attack detection method based on firewall is proposed. The method adopts a combination of software and hardware. On the hardware side, the firewall uses field programmable gate array (FPGA) to collect message data in real time, update counters when forwarding messages, provide real-time characteristic values required for detection and perform attack prediction. On the software side, it runs a recognizer based on machine learning. The hardware senses the network status in real time when collecting packet data. Once the network is abnormal, the online identifier is launched to detect DDoS attack. A DDoS attack detection prototype system based on this method is implemented and deployed. Experiments show that the method can detect DDoS attack in real time with low resource occupancy and high accuracy.
power monitoring system; distributed denial-of-service (DDoS) attack; detection; real time; machine learning
2021-08-23
2021-09-30
繆海飛(1994—),男,江蘇如東人,碩士,工程師,主要從事變電站網絡安全和變電站自動化系統的研究與開發工作。