孫利剛 葛圣超 王沼鈞 王建功 王保齊



摘? 要:如何提高IED設備抵御站控層網絡風暴與網絡攻擊的能力,是智能變電站安全可靠運行的焦點問題。本文首先分析了抵御站控層網絡風暴與網絡攻擊的必要性,其次,分析了廣播風暴與各種攻擊的原理及對裝置的影響,并根據智能變電站的典型結構建立了測試模型,用于方案驗證。最后,從設備架構、網卡與驅動設計、廣播風暴和攻擊過濾算法幾個方面提出了有效的網絡風暴與網絡攻擊抑制方法。經驗證,本文論述方案在設備抵御站控層網絡風暴與網絡攻擊方面效果良好。
關鍵詞:網絡風暴;網絡攻擊;智能變電站;站控層網絡。
中圖分類號:TP3? ? 文獻標志碼:A
【Abstract】How to improve IED equipment against network storm and network attack on substation control layer is the focus of safe and reliable operation of smart substation.At first,This paper analyzes the necessity of resisting network storm and network attack. Secondly, it analyzes the principle of broadcast storm and various network attacks , the influence on the device, and establishes the test model according to the typical structure of smart substation, which is used for program verification Finally, an effective network storm and network attack suppression technology are proposed from several aspects ,as device architecture, network card and driver design, broadcast storm and attack filtering algorithm. Through validation, this paper discusses the program in the equipment against network storms and network attacks to facilitate the effect is good.
【Key words】Network Storm;Network Attack;Smart Substation; Substation Control Layer Network
1 引言
近年來,變電站正在朝著智能化、信息化、網絡化的方向發展。變電站越來越依賴于網絡通信技術,這已成為智能電網健康穩定運行的關鍵因素。各種保護系統,自動化系統及通信設備通過網絡互聯,從而導致網絡安全成為電網可靠穩定運行的焦點問題。
變電站采用的是共享信道的以太網通信技術,是一種存在資源競爭的鏈路通信技術。雖然可以通過虛擬以太網技術將競爭降低,但是存在著網絡風暴與攻擊的可能[1]。站控層網絡在變電站內承擔著運載采集數據,監控控制,操作閉鎖等信息功能。一旦網絡出現風暴或者攻擊,可能會導致變電站保護與控制功能退出,甚至導致IED設備重啟,死機,誤動等錯誤行為,進而影響整個電網的安全運行。
至今,在智能變電站網絡風暴與攻擊方面仍然沒有一種有效的方案。文獻[2]提出了基于哈希值過濾的方案,但是只能針對重復性報文。文獻[3]從軟硬件及網絡結構方面提出了多種風暴抑制技術,但是沒有提出對于網絡攻擊的有效應對方案。本文闡述了網絡風暴與攻擊對IED設備產生的危害原理,并在智能變電站特殊應用環境與要求下提出了一種有效抑制網絡風暴與攻擊的設備結構與算法。
2 網絡風暴與攻擊原理分析與測試模型
網絡風暴會大量占用信道帶寬,造成網絡擁塞。從設備角度來講,對其造成最大危害的是廣播報文。大量廣播報文會消耗處理器資源,嚴重的會導致功能缺失,死機等。網絡攻擊是針對IED設備產生大量使其消耗資源從而拒絕服務甚至死機的報文。目前,針對網絡泛洪式攻擊及智能電網的特殊網絡環境,允許IED設備暫時的拒絕服務,但是要保證設備保護等重要功能正常,不能出現誤動,拒動,甚至死機等嚴重問題。在攻擊過后,網絡通信能夠恢復正常[4]。
2.1 測試模型與性能要求
開普電器檢測研究院《合并單元智能終端裝置集成測試方案》和中國電科院《智能變電站保護及相關設備網絡壓力測試方案》規定了網絡風暴與網絡攻擊的測試方法,并提供了詳細的測試例。站控層網絡壓力測試模型如圖1所示。
整個測試分為網絡壓力與網絡安全測試。網絡壓力測試是在原有網絡流量基礎上通過網絡測試儀分別注入廣播報文(ARP廣播,UDP廣播, TCP未知單播),注入量為1-100M,持續時間2分鐘。要求被測裝置運行正常,動作可靠,能正確接收訂閱報文及聯閉鎖信號,且要求能與MMS客戶端正常通信。網絡安全測試是在原有網絡流量基礎上通過網絡測試儀分別施加SYN FLOOD、UDP FLOOD、ICMP FLOOD、SMURF攻擊、pingofdeath攻擊、arp緩存攻擊及異常MMS報文攻擊。注入流量為1-100M,持續時間2分鐘,要求被測裝置運行正常,動作可靠,能正確接收訂閱報文及聯閉鎖信號,可以與MMS客戶端暫時中斷通信,網絡攻擊結束后應保證測試過程中所有保護動作信號正確上送。
2.2 風暴與攻擊作用原理
2.2.1 風暴作用原理及影響
當變電站站控層網絡出現廣播風暴時,大量的廣播報文會使接收到報文的網卡產生大量中斷及數據傳輸復制,導致內存,CPU資源使用率迅速升高。這種情況下下如果IED設備系統任務或者架構設計不合理,將會導致通信,保護功能,GOOSE等重要功能時延增大,不能滿足保護要求,甚至出現重啟死機。
2.2.2 攻擊作用原理及影響
相對于廣播風暴,網絡攻擊要復雜許多。下面將簡單闡述網絡攻擊的原理及影響。
1)SYN FLOOD:該泛洪攻擊是利用建立鏈接時三次握手的缺陷,向IED設備大量發送鏈接請報文。IED設備收到請求,未得到對方回應時,會進入等待期。這會導致大量socket資源消耗,并最終拒絕服務。
2)UDP FLOOD:UDP是無連接協議,所以只要向IED設備開放的端口中注入大量UDP報文,將會導致設備拒絕服務。目前智能變電站通信不采用UDP,故可以關閉UDP服務或者端口。
3)ICMP FLOOD:通過向目標IED設備發送大量ICMP報文,導致目標消耗大量CPU資源和有效帶寬來處理ICMP RELAY,導致目標設備拒絕服務或者故障。
4)SMURF攻擊:通過向目標IED設備發送大量ICMP ECHO報文,消耗目標IED設備大量資源,導致拒絕服務或者故障。實驗發現,部分操作系統的協議棧不能經受SMURF攻擊而癱瘓。
5)PINGOFDEATH攻擊:利用TCP/IP特征“碎裂”,允許將一個大包分成幾個小包分發的特點,向目標IED設備發送長度大于65535長度的大包ping request,并修改最后一個分裂小包大小,這樣將會導致目標IED協議棧出現故障,甚至死機。
6)異常MMS通信報文:隨意向IED設備發送修改過的MMS異常請求報文,導致IEC61850規約異常。該類攻擊考查IEC61850協議健壯性。
由于網絡攻擊的復雜性,目前沒絕對可靠的應對方法。但是智能電網屬于專用網絡,同時網絡結構上也做了許多防范措施,以上攻擊很難發生。一旦發生上述攻擊,首先要確保IED設備保護,采集,控制等功能正常,其次設備可以緩存報告,允許通信暫時中斷,能夠在攻擊過后恢復通信,并上送報告。
3 網絡風暴與攻擊抑制技術初探
智能電網是專用網絡,其內部IED設備服務接入量有固定的限制,通常每個IED設備不會超過30個連接,甚至更少,并不是盡最大能力服務。現行測試標準要求設備具備同時服務16個通信鏈接的能力。
3.1 設備架構在抑制方面的作用
目前智能電網對IED設備的要求越來越高,多核架構及多處理器架構已經是主流趨勢,如圖2所示。
圖2所示三種架構中,后兩種架構是當前發展的主流架構,實現了通信,顯示與保護,測量,控制等重要單元隔離,增強了保護設備的可靠性。對于后兩種通信與保護等功能分離的設備,只要實現通信核心上廣播風暴的檢測過濾及MMS通信可恢復性即可,無需考慮對保護,采集,測量及控制功能及實時性的影響。后兩種架構是大多數廠商采用的架構,能在風暴與攻擊抑制方面起到很好系統保護作用,增加系統可靠性與實時性。
3.2 采用流量控制式MAC與驅動設計
網卡通常采用中斷方式通知CPU數據的接收與發送情況。驅動設計上采用上半程中斷與下半程中斷相結合的程序設計。上半程中斷是中斷服務程序,簡單處理中斷標志與簡短必要的處理,然后將數據處理任務投到工作隊列,由下半程中斷來處理。下半程中斷通常是系統內核線程。在實時操作系統中,當網絡風暴或者壓力注入裝置后,如果下半程中斷線程優先級太高或者是不合理,將導致該線程大量消耗CPU資源而導致設備異常。而頻繁的中斷則會導致大量任務向隊列中投遞,控制不當將會導致系統崩潰。目前,智能電網中IED設備網絡接口較多,要求特殊,很多廠商采用FPGA自行構建。本文提出一種采用流量控制式的MAC與驅動設計方案,能有效緩沖網絡壓力的沖擊,如圖3所示。
驅動層的上下半程中斷通過任務隊列進行同步。當驅動收到網卡接收中斷后,查看上半程中斷是否已經處理完上次任務。如果上次任務已經處理完成,則向任務隊列投遞任務。下半程中斷每次收到任務后將處理所有數據包。MAC核在設計上要在緩存滿后停止接收,并停止向驅動發送中斷。數據緩存實際上起到一個令牌桶的作用,驅動負責釋放令牌,而MAC只有從緩存中取到令牌才能接收數據并產生中斷。在實時操作系統中,下半程中斷線程的優先級應低于重要任務優先級,而非實時操作系統則需要合理的軟件架構。這種設計會以處理器處理能力為上限形成兩級緩沖,減少大量網絡數據對系統處理能力的沖擊,形成自適應式流量控制,而非絕對數值的流量控制。實驗表明,這種設計在抵御網絡壓力方面表現優良。
3.3 廣播風暴識別與過濾
站控層網絡傳播的廣播報文是網絡控制報文,如ARP,ICMP,其它報文則可以全部丟棄,并不會對通信造成影響。這些廣播報文通常流量不會很大,也不具備連續性和突發大流量的情況。這些特點可以做為廣播風暴識別的一個重要依據。
如果采用FPGA進行過濾,可以采用圖4所示的滑窗法。FPGA需要先濾掉除ARP,ICMP以外的報文。滑動窗口的大小T1設定為200ms,當滑窗內廣播數據大于等于WH,則停止向CPU發送廣播數據。當滑窗內數據小于等于WL,恢復廣播數據的上送CPU的操作。WH與WL選擇可以根據自己CPU處理能力合理選定,參考值為: WH=100, WL=70。
如果采用軟件方法實現過濾,則需要采用圖4的定窗檢測指數退避方法。采用定窗檢測主要原因是定時統計更加方便,節省資源。該方法需要網卡具備廣播報文接收統計功能及廣播報文禁止接收功能支持。定窗檢測窗口一般不宜設置過小,過小浪費CPU資源,設置T2=20ms即可。當窗口收接收報文數量大于等于WH,則將網卡接收廣播功能關閉T3=n x T2s(n=2K ),K為一個隨機數,使得。
3.4 網絡攻擊處理算法
智能電網IED設備的處理網絡攻擊方面有其特殊性。首先,每個IED設備提供相對很少的MMS接入服務,目前最多只需接入16路MMS服務。其次,IED設備在網絡攻擊發生時,可以拒絕服務來保證保護功能正常。網絡攻擊的處理方式不能像廣播風暴處理一樣按流量大小進行攻擊識別。因為小量而長時間的smurf攻擊也會造成部分操作系統協議棧癱瘓而不能恢復。FPGA在過濾攻擊時可以按報文類型過濾,比如過濾掉UDP報文,但是對于小流量smurf攻擊也顯得很無力。基于以上問題,本文提出一種固定長度ARP表的替換算法。算法如圖5所示。
該算法可以結合流量閾值過濾算法,可以起到非常好的抵御攻擊效果。流量閾值不宜設置過低,限制裝置網絡傳輸能力,可以根據具體裝置處理能力設定。通常,MMS流量不會超過3M/S,但是為了兼容其他應用,如FTP傳輸,我們通常將流量閾值設定到10M以上。沒有達到流量閾值而上送驅動層的數據包,通過建立固定長度的驅動層ARP表,按圖5所示算法進行過濾。在收到網絡攻擊時,IED設備站控層通信可能會響應延遲增大,甚至通信斷開。但是能保證裝置保護功能正常,通信能在攻擊停止后恢復。
4 結束語
本文通過對網絡風暴與網絡攻擊的分析,結合實際測試驗證,從繼電保護設備角度提出了應對風暴和攻擊的有效手段。隨著今后智能電網的不斷發展提高,愈加復雜的網絡會對設備抵御網絡風暴與攻擊的能力提出更高要求,更加高效的算法和方案有待提出。
參考文獻:
[1] 李大勇,房亞囡,王洋,等.智能變電站網絡壓力性能測試研究[J].電子技術應用,2015,41(S1)18—20.24.
[2] 黃曙,馬文霜, 陳炯聰,等. 智能變電站網絡風暴的監測和過濾算法研究, 電力系統保護與控制,2013, Vol.41 No.18.
[3] 王志華,杜振華,董志平等,智能變電站網絡風暴抑制技術研究,電氣工程學報,2016, Vo1.11 No. 2.
[4] 國家電網公司,GB/T 14598.XX-201,智能保護測控設備技術規范,2016.
[5] Q/GDW 396—2009 IEC 61850 工程繼電保護應用模型[S].北京:中國電力出版社,2010.
[6] 浮明軍,劉秋菊等,智能變電站網絡風暴測試研究,現代電力,2013,Vol.3
[7] 丁騰波,林亞男,趙萌.智能變電站虛擬局域網邏輯結構劃分方案的研究[J].電力系統保護與控制,2012,40(1):115-119.
作者簡介:
孫利剛(1983-),男,山東煙臺,中級工程師,研究方向為智能變電站繼電保護平臺軟件。
葛圣超(1986-),男,山東煙臺,中級工程師,研究方向為繼電保護原理及應用,電力系統自動化技術。
王沼鈞(1988-),男,山東煙臺,中級工程師,研究方向為智能變電站繼電保護硬件平臺。
王建功(1985-),男,山東泰安,中級工程師,研究方向為智能變電站繼電保護算法。
王保齊(1978-),男,山東煙臺,中級工程師,研究方向為智能變電站繼電保護硬件平臺。