張瑩瑩,朱智光
(1.中國電建集團成都勘測設計研究院有限公司,四川 成都 610072;2.電子科技大學,四川 成都 610000)
“互聯網+”、“工業4.0”的提出推動著工業領域的信息技術革命,ICS得到了快速發展,同時原本相對獨立和封閉的系統越來越多與互聯網發生聯系,安全性問題變得尤為突出。電力工控系統作為基礎設施的重要組成部分,關系到國家的經濟命脈,成為網絡攻擊的重要目標。
DDoS攻擊一直被視為電力行業重要網絡攻擊方式之一。近幾年來,DDoS攻擊的方式趨于多樣化,攻擊頻率呈上升趨勢,這使得電力工業控制系統受到了嚴重的影響和威脅[1]。例如,2015年12月,黑客通過建立僵尸網絡對烏克蘭電力設備實施DDoS攻擊,導致烏克蘭全國范圍內發生大規模停電,給烏克蘭造成了嚴重的經濟損失;2019年3月,黑客組織利用電力系統漏洞對美國可再生能源電力SPower公司發動DDoS攻擊,攻擊導致控制系統與太陽能和風力發電設備之間的通訊中斷。DDoS攻擊是攻擊者惡意地對網絡進行干擾,通過發送大量的數據包請求耗盡主機或網絡帶寬資源,導致其癱瘓并拒絕正常用戶合法請求。DDoS攻擊頻發的原因在于,它作為一種破壞型的攻擊,具有實施簡單的特點,只需要暴力式地消耗資源,而其攻擊效果又十分顯著,受害者很難做出及時有效的響應,且攻擊溯源也較為困難;此外,低廉的成本是其頻發的另一個主要原因。從博弈的角度,攻擊者只需要較小的攻擊成本,就可以發動一次大規模的DDoS攻擊。
電力工業控制系統與傳統的IT系統存在明顯差異,具有不同的特征。傳統IT系統對數據包的實時性要求不高,具有一定的延遲容忍度,而電力行業工控系統具有高實時、高可靠的特性,因此傳統的檢測手段不能直接應用于工控環境。傳統IT網絡的DDoS攻擊檢測方法在電力行業的應用是電力行業的一個新挑戰。
近年來,電力行業網絡安全事件頻繁出現,一些惡意軟件對電力網絡中的基礎設施影響巨大,且風險呈增長趨勢。電力系統網絡以各種方式暴露在互聯網中,一些互聯網用戶出于某些目的,對電力系統和設備進行病毒入侵、攻擊,導致影響網絡數據傳輸、破壞系統和泄露敏感數據、竊取公司商業秘密和機密信息、非法使用網絡資源等,給電力企業帶來了巨大的損失。電力行業網絡面臨的安全挑戰如下。
(1)面向電力行業網絡的攻擊增多。電力系統作為國家經濟發展的關鍵,容易遭受各種網絡攻擊,因此電力系統網絡安全意義重大。目前,電力系統網絡自身建設方面存在安全缺陷,且隨著“工業互聯網”、“智能制造”等創新技術的發展,電力行業網絡與傳統IT網絡的隔離逐漸被打破,攻擊者通過攻擊IT網絡,進而侵蝕電力系統網絡,且攻擊類型及手段也呈現多樣化特征。
(2)針對電力行業的惡意軟件增多。電力行業發生勒索攻擊、定向攻擊的事件逐漸增多,惡意病毒已經對能源等領域帶來了嚴重危害。攻擊者開始研究新型的惡意軟件以此對電力行業網絡發起定向攻擊,如針對電網設備的攻擊軟件“Industroyer”。
(3)工業智能化發展引入設備增多。隨著智能化和工業領域的深度融合,新的智能化設備不斷引入到電力系統中,為電力行業生產帶來便利,但同時也引入了新的網絡安全隱患,給電力網絡帶來了更大的安全挑戰。
由此可見,計算機網絡的發展給電力行業生產和發展帶來了新的技術和手段,但同時也帶來了一些安全隱患。因此,對電力行業網絡安全機制的研究非常迫切與必要。
工業控制系統一般分為企業管理層、制造執行層、過程監控層、現場控制層和現場設備層,以制造執行層為分界,向上為通用IT領域,向下為工業控制系統領域。在設計ICS網絡架構時,通常將ICS網絡與辦公網絡分開,因為ICS網絡是不允許因特網接入,以及FTP、e-mail、遠程接入,但是在傳統辦公網中是允許的。辦公網無法保證對網絡設備及其安裝以及軟件變化的精密控制,如果將ICS網絡運行在辦公網的上層,它通常能抵御一次DDoS攻擊;如果將辦公網與ICS網絡隔離開,發生在辦公網中的安全事件就不會對ICS網絡造成任何影響。其實,ICS網絡與辦公網之間的連接是不能斷開的,但此連接要承擔很大的風險。隨著互聯網的發展,攻擊者可控制的僵尸機不再局限于PC,任何接入網絡的設備都有可能被攻擊者利用來組織DDoS攻擊。
DDoS攻擊的最大特點是:攻擊控制端與受控僵尸主機之間是一對多的關系,而受控僵尸主機與被攻擊的目標主機之間又是多對一的關系。DDoS攻擊是一種分散性強、相互協作完成、分層次實施的大規模攻擊方式。攻擊源不是直接對受害者實時攻擊,而是通過大量的僵尸主機來發起的,這樣做有以下“好處”:第一,不管受害者的服務器安全性有多好,主機性能有多么強大,只要攻擊者控制的僵尸主機足夠多,發動攻擊的次數足夠頻繁,就可以輕松將某臺目標服務器摧毀,使之不能提供正常的服務而拒絕服務,即充分利用其分布式優勢來實現對受害者的高強度、高密度精確打擊;第二,DDoS攻擊能夠實現對某個域名服務器下屬的服務器集群的泛洪攻擊,甚至嚴重擁塞互聯網的某些骨干鏈路等;第三,由于從發起攻擊到受害者之間經歷了兩層,這就給IP源地址偽造提供了便利條件,從而給DDoS攻擊的追蹤溯源帶來極大困難。
工業控制系統的DDoS攻擊主要有兩種表現形式,一種通過消耗受攻擊設備的網絡帶寬來干擾合法的用戶連接請求,另一種以消耗CPU資源、存儲資源的方式影響合法用戶的請求。
1.3.1 ACK和SYN泛洪攻擊
ACK泛洪攻擊發生在攻擊者與目標設備建立連接的TCP三次握手過程中。三次握手過程從發送SYN報文[2-3]開始,然后從需要連接的設備接收到SYN+ACK包作為應答,反過來,ACK包的應答結束了整個連接建立階段。但是,在惡意意圖的情況下,攻擊者發送ACK位啟用包偽造的源地址會被目標設備丟棄,是因為它沒有建立任何的連接到主機的欺騙IP地址。這需要對每個傳入的數據包進行處理,這反過來會導致資源耗盡。
SYN泛洪是指攻擊者啟動三次握手過程[3-4],首先以較高的速率向目標設備發送SYN報文,目標設備在接到SYN報文后發送SYN+ACK數據包予以響應。然而,攻擊者沒有故意發送所需的ACK包,整個連接處于半打開狀態,致使目標服務器等待,直到有來自所需源地址的ACK包。
1.3.2 UDP泛洪攻擊
在這種攻擊中,入侵者不斷嘗試以匿名方式將UDP包發送到目標設備的隨機端口,然后,目標設備被迫檢查每個端口,以監聽相應的應用程序。然而,并沒有這樣的應用程序存在,因此它以一個目的地不可達的ICMP數據包響應。整個過程使目標設備由于繁忙等待而不可達。
1.3.3 ICMP泛洪攻擊
ICMP通常負責生成錯誤消息,將網絡中或目的地發生的任何故障通知源(比如當網關無法緩沖數據時,或者當數據包無法到達目的地時)在ICMP協議中執行Ping功能,并發起echo請求,得到echo應答。如果沒有收到這個應答,它表明另一個主機沒有活動或沒有Ping功能。在這種情況下,回顯請求在不等待回顯應答的情況下繼續發送,并通過消耗不必要的帶寬[3]而充斥網絡。
1.3.4 DNS放大攻擊
在DNS放大攻擊中,攻擊者使用的是開放的DNS解析器。它們用欺騙的源地址向這些解析器發送DNS查詢請求。對于這些報文,DNS解析器會發送一個DNS記錄響應給目標設備,而非攻擊者[5]的設備。這樣的響應通常比只包含域的查詢要大得多,而且響應可以包含一個域的許多不同的信息記錄。
1.3.5 NTP放大攻擊
NTP協議用于通過Internet同步本地時鐘和全球時鐘。然而,它可以通過請求具有欺騙源地址[6]的查詢來發起DDoS攻擊。地址要求較大的響應,如最近連接到服務器的600個主機列表,該列表用于確定UTC的實際時間。這種較大的響應常常導致大量請求,而服務器開始拒絕進一步的請求[6]。
工控環境下DDoS攻擊呈現出規模大和手段多的趨勢,因此對防御技術提出了新的要求。但無論DDoS攻擊源來自何處,其應對措施一般包括3個層次,分別是防范、檢測和緩解。本文將從這3個方面進行闡述。
DDoS攻擊防范的目標是盡量將攻擊流遏制在源端。通過對用戶的接入請求進行限制,如對用戶請求的延遲、選擇以及對端口的速率限制等,從源頭限制攻擊數據包侵入內網。如圖1所示,實施接入限制的策略可以給予門限、基于優先級或基于模式匹配等,而確定這些指標,通常要依據歷史數據,并采用統計學習的方法進行分析建模。

圖1 限制接入模型
文獻[7]提出了一種新的DDoS防御機制——Umbrella,它是一種多層防御結構,其在流量限制層安裝一組基于UDP等網絡服務協議的靜態過濾器,可以有效防御基于放大的攻擊;在擁塞解決層,該文提出了一種擁堵問責制,并強制執行以懲罰那些面對充血性損失而持續注入大量流量的攻擊者。該機制的原理是通過檢測用戶行為(例如,在發生擁塞時如果用戶忽略數據包的丟失并不斷注入數據包),判定用戶對DDoS攻擊中持續擁塞負有的責任。為了解決擁塞問題,Umbrella為每個用戶保留了一個速率限制窗口,以防止用戶發送速度超過它的速率限制窗口。速率限制的方法可能導致一定的不公平性,而且對于偽冒成正常用戶的攻擊者而言效果并不理想。文獻[8]提出了一種基于置信區間的過濾方法以限制用戶的接入請求,當用戶的訪問速率脫離了置信區間,就會對其請求進行過濾。置信區間通常根據統計分析歷史行為進行設定,數據包過濾能有效防范非法接入,但置信區間的設置是一個難題,如果設置不合理將導致大量合法用戶的請求受到限制。文獻[9]提出了基于學習自動機的解決方案,以防止在物聯網工作的面向服務架構(SOA)作為系統模型使用DDoS攻擊。此外,文獻[9]還提出了一種跨層模型,用于在網絡架構的每一層處理此類攻擊。該方法通過3個階段來防御DDoS攻擊:①DDoS檢測;②攻擊者識別;③DDoS防御。第一階段通過定義一個閾值來檢測攻擊,該閾值是根據計算資源可用性確定的服務能力最大值。如果服務請求的數量超過了限制,就會發出DALERT(DDoS警報),它會在相鄰鄰居的幫助下傳播。這就開始了下一個階段,通過找出發送比其他設備更多請求的設備ID來識別攻擊設備。此外,整個黑客的信息是通過一個包來傳輸的,這個包將進入下一階段來防御攻擊。現在,在獲得了關于攻擊者的所有信息之后,如果攻擊者的設備沒有合法采樣,那么所有傳入的數據包都很容易被丟棄。數據包通過取樣以確定整個數據包范圍的真實性。由于檢查所有入站數據包的不可行性,那么抽樣就是通過使用一個學習自動機概念來建立最佳抽樣率并以此執行。由于在抽樣過程中攻擊者拒絕發送請求,服務器上的請求數會減少,從而使DDoS攻擊無效。
DDoS攻擊檢測的目的是在造成更大損失前盡可能早地發現DDoS攻擊。通常在靠近攻擊端的位置發現是比較好的,但由于尚未匯聚成較大規模的攻擊流,往往特征不夠明顯。而在靠近受害端的位置雖然可以獲得較好的檢測結果,但缺點是發現攻擊的時間較晚。目前,針對工控系統中DDoS攻擊的檢測技術主要分為3類,其檢測指標包括:流量、性能和行為。網絡層流量特征的統計分析是檢測DDoS攻擊的常用手段,注入端口實時速率、受害端吞吐量、路由器緩存報個數等都是反映流流量特征的指標。流量檢測的一般流程如圖2所示。
文獻[10]提出了一種使用統計流量分析發現DDoS攻擊向量的方法,其原理是通過對攻擊進行通知,并對攻擊流量進行統計分析以找到向量,并分析正常流量的統計基線,發現異常流量作為TCP/IP數據包統計參數中的差異在給定時刻到達基線,從而確定攻擊及其向量。文獻[11]發現DDoS攻擊檢測受到高速網絡中海量流量存儲不可忽視的高復雜性的困擾,提出了一種新的低速率DDoS攻擊檢測方法(LDDM),它通過多維草圖結構聚合和壓縮網絡流,降低了數據存儲成本并提高檢測性能;然后,又提出了一種基于daub4小波變換的改進行為發散測量方法,以計算每個草圖發散的能量百分比,該方法在區分正常流量和攻擊流量方面獲得了有效的結果;此外,還設計了一種改進的加權指數移動平均法來構造正常網絡的動態閾值,同時提出了一種流量凍結機制,以保證動態閾值的標準化。文獻[12]提出采樣率會影響監視器的DDoS檢測率,并且對于相同的采樣率,不同類型流的DDoS檢測率是不同的;統一的采樣率可能不會產生良好的總體DDoS檢測率;于是作者為不同的流量分配不同的采樣率,并提出了一種基于虛擬機之間的相似性行為并進行虛擬機分層聚類的流分組方法;然后,為找到的最佳采樣率分布制定了一個優化問題,使用混合整數線性規劃對其進行了求解。文獻[13]研究了SDN下的DDoS攻擊檢測方法,由于現有DDoS檢測方法的不同局限性包括對網絡拓撲的依賴,無法檢測到所有DDoS攻擊,無法滿足過時和無效的數據集以及對強大而昂貴的硬件基礎架構的需求,在先前時段中應用靜態閾值及其對舊數據的依賴性降低了它們對新攻擊的靈活性,并增加了攻擊檢測時間,該作者提出了一種新方法可以檢測SDN中的DDoS攻擊,此方法包括3個收集器,基于熵的部分和分類部分,通過使用UNB-ISCX、CTU-13和ISOT數據集獲得的實驗結果表明,該方法在SDN中檢測DDoS攻擊的準確性方面優于同類方法。對于流量檢測,時域檢測法適用于對高速率的DDoS攻擊,但對低速率DDoS攻擊效果不好,而頻域檢測法雖然對低速率DDoS攻擊較為有效,但算法復雜度高,需要消耗較多的資源對其進行分析,這將會影響工控系統的性能。

圖2 流量檢測流程
由于完全阻止DDoS攻擊流非常困難,因此目前主要關注是在檢測到攻擊后如何緩解攻擊,最大限度地保障工控系統正常運行。對于來自工控系統外部的DDoS攻擊流,主要采取的是流量過濾技術,而在內部網絡,SDN技術可以有效應對來自內部的DDoS攻擊。
2.3.1 流量過濾
流量過濾技術的目的是盡量清洗掉攻擊包,同時最大限度地允許合法包通過。如圖3所示,該方法只要基于地址、特征和異常三種策略實現過濾。

圖3 流量過濾原理
文獻[14]提出了一種動態網絡流量管理(DNTM)系統,該系統包含用于ISP的攻擊檢測器、IP優先級劃分器、流量管理器和Netflow分類器。IP優先級劃分器將IP地址劃分為正常和可疑類別,然后應用速率限制算法為合法用戶保證不間斷的服務并減少網絡流量阻塞。本文通過部署兩層自組織映射(SOM)來標記數據,以訓練具有不同功能集的三種監督算法來對網絡流量進行分類,從而為Netflow分類器提供一種新穎的自我監督混合集成方法。我們為該系統配備了保險單,一致0和一致1的投票,以便從集成模塊中獲得最終分類結果,以降低將合法流量誤分類為惡意的可能性。
Internet上資源和激勵措施的分配不均,使得攻擊者可以利用網絡協議的缺陷來破壞其他用戶的訪問請求并獲得最大的資源份額。文獻[15]提出了一種基于貝葉斯博弈論的解決方案,通過對網絡用戶采用激勵和定價規則,使服務商能夠最大程度地提高社會福利。假定服務提供商和合法用戶可以長時間觀察網絡,并獲得有關其他用戶是否為惡意用戶的概率知識。服務提供商和合法用戶可以利用次概率知識來修改其行為,以抵消網絡中存在的惡意用戶。考慮到這些假設和事實,本文提出了貝葉斯定價和拍賣機制,以在概率信息證明對合法用戶和服務提供商有利的不同情況下實現貝葉斯納什均衡點;還提出了一種信譽評估和更新機制,其中考慮了付款和參與參數來量化用戶的可靠性。
2.3.2 SDN
軟件定義網絡自被定義以來應用廣泛,許多企業將軟件定義網路引入到工業網絡中,用以實現工業軟件定義產品功能和生產方式,并提供工業自動化的個性化定制方案。SDN應用于工業控制系統,為DDoS攻擊的檢測與防御提供了極大的便利。SDN防御DDoS攻擊的核心架構如圖4所示。

圖4 SDN防御DDoS架構
傳統電網中的信息通信技術(ICT)環境使DDoS攻擊的檢測和緩解更具挑戰性,現有的安全技術,除了其效率外,由于高度分布且動態的網絡環境,不足以滿足智能電網的安全性。為解決這一類問題,文獻[16]提出基于軟件定義網絡的DDoS保護系統(S-DPS),它通過使用SDN緩解使用輕量級基于Tsallis熵的防御機制,并提供了早期檢測機制,可以達到緩解異常情況的目的。該方法還提供了最佳的防御機制部署位置,采用了動態閾值機制使檢測過程使用不斷變化的網絡狀況。文獻[17]提出了一種使用流量監控的新型檢測和緩解SDN控制器中的DDoS攻擊方法。該方法不僅可以利用基于排隊論的模型優勢來評估到達流和利用魯棒的特征和熵,還可以基于距離的分類準確地設計為從合法數據包中檢測惡意數據包。
文獻[18]在防御DDoS攻擊的初始階段提出了另一種緩解技術,使用基于軟件定義網絡(Software Defined Networking,SDN)的基礎設施概念來控制DDoS攻擊的傳播,防止其到達端點防火墻或者其他異常檢測系統。SDN基礎設施的效率體現在基于軟件分析、本地集中控制、動態流插入等功能上,這些都有助于建立一個有效的DDoS緩解系統。它也有助于減少網絡擁塞和防止惡意設備擴大攻擊的服務器/主機。通過將網絡控制與數據(轉發信息)隔離開來,以區分SDN體系結構與傳統網絡基礎設施的工作方式,從而使網絡控制可以直接編程見圖5。控制智能由一個能夠理解整個網絡拓撲結構的集中式控制器負責。傳統的路由是通過查找路由表來確定入站數據包的目的地,與此不同的是,SDN體系結構能夠在控制器的幫助下動態地操縱網絡中的流量流或數據包流。為了在多個SDN域之間實現接口,可以將SDN基礎架構擴展到SDNi,從而在多個域的SDN控制器之間實現信息共享。一個開放流協議用于允許由控制器管理的開放流啟用開關(OF-switch),且該開關包含內部流表。如果一個包的流條目出現在OF-switch的流表中,那么它將被正常轉發;否則,則會被發送到控制器進行進一步分析。SDN控制器具有合理的計算能力來監控流量。交通分析可以使用機器學習算法(支持向量機(SVMs)、高斯混合模型(GMM)、人工神經網絡(ANN))、數據庫和任何其他軟件工具實時執行。

圖5 傳統網絡架構與SDN網絡架構
SDN架構中描述了不同類型的DDoS攻擊的緩解方法:①對于基于源的攻擊,可以使用SDN控制器檢測流量中的異常,并對網絡入口附近的報文進行相應的改變。②對于網絡攻擊,控制器也被稱為網絡操作系統(NOS),可以用數據包流來控制整個SDN網絡的全局。在設備之間的網絡流量流中,任何偏離正常行為的動作都很容易被控制器檢測到,并采取先發制人的措施來防止攻擊。③對于涉及從一個網絡基礎設施到另一個網絡基礎設施過渡的跨域攻擊,SDN基礎設施與傳統IP網絡并行存在,以交換可達性信息,并與其他協作功能一起轉發流量。因此,從地理位置上,物聯網設備觸發的此類攻擊檢測變得有效,也更容易被減輕。對上述DDoS攻擊緩解技術進行比較后,如表1所示。

表1 DDoS緩解技術的比較
隨著信息化和工業化的深度融合,電力工控系統與互聯網的聯系增多,導致電力工控系統DDoS攻擊的途徑增多,嚴重破壞了工控系統的業務連續性,因此有必要針對工控環境下的DDoS攻擊展開防御研究工作。文中首先分析了電力行業網絡面臨的安全威脅,揭示了攻擊者基于這些隱患威脅實施DDoS攻擊的手段和后果。除了傳統大流量的DDoS攻擊外,面向工控系統的DDoS攻擊也呈現多樣化的特點,新型攻擊層出不窮,因此對工控環境下的DDoS攻擊進行了分類比較十分必要。然后從攻擊防范、攻擊檢測和攻擊緩解3個層面進行了綜述,針對每個層面的技術進行評估和比較,并探討了當前技術在抗DDoS攻擊的實踐和部署中存在的局限性。在未來的研究方向上,SDN為緩解DDoS攻擊提供了有效的途徑,由于SDN的用途極為廣泛,因此其自身遭受DDoS攻擊的問題也是未來需要重點關注的領域。SDN的應用層、控制層和基礎設施層均有可能遭受DDoS攻擊。如果SDN控制器被攻擊,那么攻擊者將很容易地打破SDN架構。目前,SDN中DDoS的攻防研究大多從流表中提取一些直觀的特征進行檢測,然后通過簡單的丟包方式防御攻擊。從流表緩存建模、超時機制、擁塞控制等方面應對DDoS攻擊是未來值得深入研究的方向。