費稼軒,張濤,馬媛媛,周誠
(國網(wǎng)智能電網(wǎng)研究院,江蘇 南京 210003)
智能電網(wǎng)[1]通過采用雙向流動的電力與通信網(wǎng)絡(luò),將傳感、嵌入式處理、數(shù)字通信等信息網(wǎng)絡(luò)技術(shù)應(yīng)用到電力系統(tǒng), 支持電流和信息在網(wǎng)內(nèi)所有用戶和節(jié)點間雙向流動,使得智能電網(wǎng)工控系統(tǒng)的各個部分連接在一起,并進行自動可靠的電力傳輸與控制,顯著提升了電力系統(tǒng)的可觀性、可控性、頑健性與自愈性[2]。 智能電網(wǎng)工控系統(tǒng)安全是智能電網(wǎng)建設(shè)中必須要解決的關(guān)鍵問題,目前電網(wǎng)安全主要在于電網(wǎng)基礎(chǔ)設(shè)施安全和網(wǎng)絡(luò)安全。網(wǎng)絡(luò)安全是智能電網(wǎng)工控系統(tǒng)要解決的重中之重, 由于網(wǎng)絡(luò)的異構(gòu)性、復(fù)雜性以及大規(guī)?;沟冒踩珕栴}變得更加有挑戰(zhàn)性[3,4]。先進基礎(chǔ)設(shè)備,量測設(shè)備的引進可以使得電網(wǎng)更加穩(wěn)定但同時也會引入更多的網(wǎng)絡(luò)安全風(fēng)險。
通信網(wǎng)絡(luò)安全在智能電網(wǎng)工控系統(tǒng)建設(shè)中顯得更加突出,在信息時代網(wǎng)絡(luò)通信安全本來就非常嚴(yán)重,在信息通信網(wǎng)中存在的安全風(fēng)險與隱私問題也同樣存在于智能電網(wǎng)工控系統(tǒng)通信網(wǎng)絡(luò)中。 例如伊朗Bushire(布什爾)核電站的控制系統(tǒng)曾在2010 年9 月遭到非法攻擊者發(fā)起Stuxnet(震網(wǎng))蠕蟲病毒攻擊[5],引發(fā)嚴(yán)重后果及不良影響,大大延遲了伊朗的核進程。這些安全威脅引發(fā)了人們對智能電網(wǎng)工控系統(tǒng)安全的恐慌和思考,如何檢測各種針對智能電網(wǎng)工控系統(tǒng)的攻擊行為,已經(jīng)成為智能電網(wǎng)工控系統(tǒng)安全、穩(wěn)定運行急需解決的問題[6,7]。
信息網(wǎng)絡(luò)中的各種漏洞和脆弱性使得攻擊者可以有更多的途徑入侵電力網(wǎng)絡(luò)系統(tǒng),如拒絕服務(wù)攻擊、數(shù)據(jù)竊聽、信息泄露、非法注入控制命令等,給攻擊者提供了滲透電力信息網(wǎng)絡(luò)甚至危害物理系統(tǒng)的更多途徑和可能。分布式拒絕服務(wù)(distributed denial of service,DDoS)攻擊[8]是一種基于拒絕服務(wù)(denial of service,DoS)的特殊式拒絕服務(wù)攻擊,是一種分布、協(xié)作的大規(guī)模攻擊方式。DoS 攻擊只要一臺計算機就能實現(xiàn),而DDoS 攻擊是利用一批受控制的計算機發(fā)起攻擊。DDoS 攻擊的攻擊者不需要直接對目標(biāo)進行攻擊,只需要控制大量的僵尸主機,就可以很容易地從不同站點并發(fā)地發(fā)起攻擊,攻擊來勢迅猛,令人難以防備,因此,DDoS 攻擊對于智能電網(wǎng)工控系統(tǒng)具有很大的破壞性。
本文希望通過研究智能電網(wǎng)工控系統(tǒng)安全體系結(jié)構(gòu),分析信息網(wǎng)絡(luò)中的各種漏洞和脆弱性引發(fā)的侵入攻擊,著重針對存在于智能電網(wǎng)工控系統(tǒng)中的DDoS 攻擊,提出一種智能電網(wǎng)工控系統(tǒng)中的DDoS 侵入攻擊檢測方法,提高對侵入攻擊的檢測準(zhǔn)確性和精度。
針對智能電網(wǎng)工控系統(tǒng)面臨的安全威脅, 許多研究者和機構(gòu)提出不同的網(wǎng)絡(luò)安全方法來進行安全監(jiān)測與監(jiān)控。入侵檢測系統(tǒng)(intrusion detection system,IDS)和流量分析技術(shù)[9]是目前應(yīng)用最廣泛的信息網(wǎng)絡(luò)攻擊檢測方法之一,通過監(jiān)視和分析網(wǎng)絡(luò)流量以檢測出帶有異常行為的數(shù)據(jù)分組和用戶。 Cisco 公司在《智能電網(wǎng)安全白皮書》[10]中提出了通過對智能電網(wǎng)中網(wǎng)絡(luò)流量和設(shè)備狀態(tài)進行實時監(jiān)測和融合分析,保證數(shù)據(jù)傳輸和處理、設(shè)備調(diào)度和控制、業(yè)務(wù)運行的安全性。Liang 等人[11]提出了電力二次系統(tǒng)安全防護的DDoS 攻擊原理及防御技術(shù),結(jié)合DDoS 攻擊的特點,分析了安全防護系統(tǒng)中可能受到DDoS 攻擊的風(fēng)險, 最后對電力二次系統(tǒng)安全防護體系中的DDoS 攻擊防御技術(shù)進行了探討, 但該方法在遭受入侵攻擊過程中,不能實時過濾攻擊流量。
為了檢測威脅數(shù)據(jù)入侵,Sun 等人[11]提出將信息網(wǎng)絡(luò)的報警事件和電力系統(tǒng)的錯誤數(shù)據(jù)關(guān)聯(lián),以檢測入侵和攻擊行為,Huang 等人[12]提出了一種基于CUSUM(cumulative sum)的最小檢測時延的防御方法,Liu 和Wang 等人[13,14]將分布式狀態(tài)估計應(yīng)用到了威脅數(shù)據(jù)檢測方面以提高檢測精度并降低計算量。 然而,攻擊者可以利用系統(tǒng)對誤差的容錯裕量, 設(shè)計特殊的攻擊從而逃避系統(tǒng)的檢測。 Liu 和Kosut 等人[15,16]通過分析電力系統(tǒng)的狀態(tài)估計,發(fā)現(xiàn)如果按照一定策略同時修改多個節(jié)點的數(shù)據(jù), 可以使得電網(wǎng)SCADA(supervisory control and data acquisition)系統(tǒng)的狀態(tài)估計結(jié)果保持平衡,躲避故障檢測。 然而隨著攻擊手段的不斷增多,電網(wǎng)攻擊可能產(chǎn)生的影響也越來越大,這些安全方法難以對威脅的嚴(yán)重性進行準(zhǔn)確估計,并且由于缺少對控制命令物理意義的理解,無法檢測格式正確但數(shù)據(jù)被篡改的通信。 此外,高誤報率也是部分信息安全檢測技術(shù)的一個大問題,這也導(dǎo)致很難確定和定位攻擊事件。
根據(jù)上面的分析,本文提出了一種基于BloomFilter 地址統(tǒng)計的動態(tài)閾值更新的改進型CUSUM(BF-DT-CUSUM)DDoS 異常流量識別算法, 以檢測智能電網(wǎng)工控系統(tǒng)的入侵攻擊事件。 在數(shù)據(jù)采集階段中,利用基于BloomFilter 的路由轉(zhuǎn)發(fā)地址映射統(tǒng)計方案收集電網(wǎng)流量數(shù)據(jù)和更新存儲的歷史數(shù)據(jù), 在數(shù)據(jù)聚集判定階段, 利用改進EWMA(exponent weighted moving average) 動態(tài)閾值更新算法計算閾值并判定目標(biāo)地址是否遭到攻擊, 利用改進型CUSUM 算法檢測DDoS 攻擊入侵。 該方法能夠提高攻擊檢測的準(zhǔn)確性及在線檢測速度,降低運算開銷。
CUSUM 算法在異常監(jiān)控領(lǐng)域得到廣泛的使用, 其作用是檢測一個統(tǒng)計過程均值的變化,主要基于隨機序列的概率分布會伴隨變化發(fā)生這一統(tǒng)計學(xué)事實。該算法的核心數(shù)學(xué)形式化描述如下:
令 x1,x2,…,xt為獨立的 N(0,1)分布,xt+1,xt+2,…為獨立的N(δ,1)分布,其中 t 為未知變點,對于給定的 x1,x2,…,xn,設(shè)t=v(v 其中,Φ 代表標(biāo)準(zhǔn)正態(tài)分布的分布密度函數(shù)。 假設(shè)變量x1,x2,…,xt與xt+1,xt+2,…有偏移,那么其對數(shù)似然統(tǒng)計量滿足: 假設(shè)檢測時發(fā)生向上偏移(δ>0),則Λn等價于: 定義1 設(shè)n-1 個觀測值未發(fā)生均值偏移并給定門限閾值 h(即 Zi≤h,i=1,2,…,n-1), 如果在時段 n 滿足,或 xn+xn-1-δ>h,或或這共計n 種情況的任意一種,則認(rèn)定這個過程發(fā)生了均值偏移。 此為CUSUM 算法的主要數(shù)學(xué)表述,在實際檢測中設(shè)定報警門限閾值h, 在第n 個觀察點發(fā)現(xiàn)首次出現(xiàn)Zn≥h,則認(rèn)為在過程n 以前的統(tǒng)計量發(fā)生了均值偏移并進行報警。 在IPv4 地址體系中,IP 地址被分為4 段,每段的值可取十進制的 1 到 255。 依照 BloomFilter 算法設(shè)置一個由4 個獨立散列函數(shù)組成的4×256 表結(jié)構(gòu)來跟蹤時間段t 內(nèi)通過路由器到達不同目的地址的IP 包數(shù)。 當(dāng)一個IP 包進入路由器后,其目的地址被4 個獨立的散列函數(shù)(針對IP地址的4 段分別映射)分別映射到各自不同的256 個域中的某一個(對每一段的值進行映射),此時保存在被映射域(共4 個,每個散列函數(shù)對應(yīng)一個)中的變量ai,j(1≤i≤256,1≤j≤4)加 1。 其映射方法如圖 1 所示。 圖1 基于BloomFilter 的地址映射統(tǒng)計示意 傳統(tǒng) EWMA(exponentially weighted moving average,指數(shù)加權(quán)移動平均) 算法是常用統(tǒng)計閾值生成方法之一,該算法從全期平均和移動平均方法發(fā)展而來,其特點在于對先前得到的流量值賦予不同的權(quán)值,依照權(quán)值對新的閾值加以計算,在n 時段結(jié)束后,其基本閾值計算式如下: 其中,hn表示第n+1 時段檢測時所使用的預(yù)測閾值,xn表示n 時段收集到的對象值,β 為數(shù)據(jù)更新系數(shù) (一般取值 0.01~0.03),隨著 n 的增大,先前的 x 對 h 的影響會逐步減小。該方案在統(tǒng)計對象長時間處于較低數(shù)值狀態(tài)下所計算的閾值較小,猝發(fā)性的網(wǎng)絡(luò)特點導(dǎo)致某個統(tǒng)計值的突發(fā)性變大會導(dǎo)致由于低閾值而產(chǎn)生誤報。 本文設(shè)計的方案在傳統(tǒng)EWMA 算法上新增可以選擇一個自然數(shù)m, 記錄預(yù)測閾值之前的m 次實際數(shù)據(jù)采集值,求出其標(biāo)準(zhǔn)差作為新閾值的調(diào)整項,最終該標(biāo)準(zhǔn)項取值的正負(fù)取決于如下思路:假設(shè)數(shù)據(jù)變化存在慣性,即當(dāng)計算第n 次閾值時,會檢測第n-1 次和第n-2 次收集到的實際數(shù)據(jù)值,若第n-1 次的流量大于第n-2 次的流量則調(diào)整項取正,反之取負(fù)。 如果n 為了保存計算出的閾值,需要一個與收集流量數(shù)據(jù)形式相同的4×256 表結(jié)構(gòu)用于存儲。 每次計算出新的閾值后,新的數(shù)據(jù)將覆蓋先前保存的閾值信息。 考慮到CUSUM 算法的檢測步驟需求, 發(fā)現(xiàn)均值偏移時,該xn+1作為非法數(shù)值,將不參與后續(xù)閾值更新。 此時δn表示某個 IP 地址轉(zhuǎn)發(fā)數(shù)據(jù)量均值,α 取值范圍是0.01~0.03,用于調(diào)整不同網(wǎng)絡(luò)環(huán)境下的識別參數(shù)。 為了完成攻擊識別,給出如下定義。 定義2 在本文設(shè)計的DDoS 攻擊識別模型中, 在檢測時段t-1,如果滿足: 而在檢測時段t,發(fā)生: 則認(rèn)為時間段t 中發(fā)生DDoS 異常攻擊, 其中ht-2、ht-1為利用第2.3 節(jié)中給出的方法計算的流量閾值,λ 為門限調(diào)整倍數(shù),其取值范圍為10≤λ≤20。 本系統(tǒng)部署于路由器,系統(tǒng)主要分為2 個模塊,其一為數(shù)據(jù)采集模塊,主要利用BloomFilter 算法收集流量數(shù)據(jù)和更新存儲的歷史數(shù)據(jù); 另一個模塊為數(shù)據(jù)聚集判定模塊,利用改進EWMA 算法計算閾值并利用改進CUSUM 算法判定目標(biāo)地址是否遭到攻擊。 其關(guān)鍵步驟包括: 步驟 1 分配存儲歷史數(shù)據(jù) x 的 m 個 BloomFilter 散列表; 生活如同巨大的幻術(shù)。明知如此,步步還需艱難持重,全神貫注。我們渴望做一場離經(jīng)叛道的嬉戲,如履薄冰,如蹈高空,并且最終不知所蹤。愛是和真相共存的幻術(shù)。隨時老去,隨時死去。即便如此,為探尋和得到愛,為獲得生命的真實性所付出的代價,依舊是這個幻術(shù)中最令人迷醉和感動的核心。 步驟2 分配存儲上一次報警閾值hn-1的BloomFilter散列表; 步驟3 分配存儲當(dāng)前報警閾值hn的BloomFilter 散列表; 步驟4 分配記錄當(dāng)前時段檢測流量的BloomFilter散列表。 每當(dāng)檢測時段結(jié)束,攻擊檢測的關(guān)鍵步驟包括: 步驟 1 利用式(9)~式(12)計算識別參數(shù) δn,Zn,Sn,Yn; 步驟2 比較Yn及如果滿足式(14)則認(rèn)為發(fā)生DDoS 攻擊,并跳過步驟3、步驟4; 步驟3 利用當(dāng)前數(shù)據(jù)xn替代歷史數(shù)據(jù)散列表最舊的數(shù)據(jù)xn-m+1,如果n 步驟 4 基于 n 和m 的大小關(guān)系利用式(7)或式(8)計算新的報警閾值并更新上一次報警閾值散列表和當(dāng)前報警閾值散列表; 步驟5 進入下一個檢測周期。 攻擊檢測的主要流程如圖2 所示。 本文設(shè)定的系統(tǒng)在電力系統(tǒng)內(nèi)部仿真環(huán)境進行了仿真, 這里采用多臺傀儡機實現(xiàn)大規(guī)模TFN-DDoS 攻擊,并在路由端記錄每一分鐘內(nèi)轉(zhuǎn)發(fā)的數(shù)據(jù)分組數(shù)量(每秒完成一次檢測周期),其結(jié)果如圖3、圖4 所示。 圖2 基于BF-DT-CUSUM 算法的DDoS 攻擊檢測示意 圖3 日志記錄轉(zhuǎn)發(fā)數(shù)據(jù)分組與攔截情況示意 低強度 DDoS 攻擊(如圖 3(a)所示)中,平均總數(shù)據(jù)分組在 700 左右,預(yù)設(shè)攻擊數(shù)據(jù)分組為 660 個,每次約有650 個數(shù)據(jù)分組被攔截,而發(fā)生大規(guī)模 DDoS 攻擊(如圖 3(b)所示)時,每秒有 1 萬個攻擊的數(shù)據(jù)分組被接收(另有4 000 個正常數(shù)據(jù)分組),這些數(shù)據(jù)分組全部被丟棄。 圖4 給出了在圖3(b)條件下的開始DDoS 攻擊1 min內(nèi)總的接收/發(fā)送數(shù)據(jù)分組示意(攻擊于第25 s 開始),可見在起始攻擊階段,識別算法未發(fā)現(xiàn)存在攻擊,總接收數(shù)據(jù)分組數(shù)量與轉(zhuǎn)發(fā)數(shù)量一致, 而到約28 s 識別算法發(fā)現(xiàn)存在DDoS 攻擊,并在30 s 開始攔截數(shù)據(jù)分組,從而導(dǎo)致DDoS 攻擊被有效防御。 針對智能電網(wǎng)工控系統(tǒng)中的入侵攻擊檢測問題,本文提出了一種基于BloomFilter 地址統(tǒng)計的動態(tài)閾值更新的改進型CUSUM(BF-DT-CUSUM)DDoS 異常流量識別算法。通過分析智能電網(wǎng)工控系統(tǒng)安全體系結(jié)構(gòu),結(jié)合電網(wǎng)流量特性與DDoS 攻擊特征, 提出了一種基于BloomFilter算法和 CUSUM 算法的動態(tài)閾值 DDoS 被攻擊地址檢測模型,和一種存在上限并包含調(diào)整項和緩沖流量項的改進型EWMA 動態(tài)閾值生成算法,該方法中調(diào)整區(qū)間長度因子大小可變, 該調(diào)整項正負(fù)性由流量變化慣性決定。仿真實驗表明該算法能夠提高入侵攻擊檢測的準(zhǔn)確性以及在線檢測速度,并降低運算開銷,該算法可以作為嵌入式模塊,安裝在核心路由器中,提高電力網(wǎng)絡(luò)的總體性能。 圖4 高強度DDoS 攻擊起始1 min 內(nèi)數(shù)據(jù)分組轉(zhuǎn)發(fā)情況示意 [1]FANG X, MISRA S, XUE G L, et al. Smart grid-the new and improved power grid: a survey [J]. IEEE Communications Surveys & Tutorials, 2012, 14(4): 944-980. [2]WANG W Y, LU Z. Cyber security in the smart grid: survey and challenges [J]. Computer Networks, 2013, 57 (5):1344-1371. [3]METKE A R, EKL R L. Security technology for smart grid networks [J]. IEEE Transactions on Smart Grid, 2010, V1(1):99-107. [4]LINE M B, TONDEL I A, JAATUN M G. Cyber security challenges in smart grids [C]// The 2nd IEEE PES International Conference and Exhibition on Innovative Smart Grid Technologies (ISGT Europe), December 5-7, 2011, Manchester,United Kingdom. New Jersey: IEEE Press, 2011: 1-8. [5]FALLIERE N, MURCHU L O, CHIEN E. W32stuxnet dossier[R]. 2011. [6]CHEN T M. Stuxnet, the real start of cyber warfare? [J]. IEEE Network, 2010, 24(6): 2-3. [7]LU Z, LU X, WANG W, et al. Review and evaluation of security threats on the communication networks in the smart grid [C]// The 2010 Military Communications Conference(MILCOM 2010), October 31-November 3, 2010, San Jose,USA. [S.l.: s.n.], 2010: 1830-1835. [8]DOULIGERIS C, MITROKOSTA A. DDoS attacks and defense mechanisms: classification and state-of-the-art [J]. Computer Networks, 2004, (44): 643-666. [9]VALDES A, CHEUNG S. Intrusion monitoring in process control systems [C]// The 42nd Hawaii International Conference on System Sciences(HICSS’09), January 5-8, 2009, Hawaii,USA. Washington: IEEE Computer Society, 2009: 1-7. [10]Systems C. Security for the smart grid [R]. San Jose: Cisco,2009. [11]LIANG Z Q, FAN Y. Principles and defense techniques of DDoS attacks in electricity auxiliray system security protection[J]. Computer Security, 2010(9): 70-72. [12]SUN Y A, GUAN X H, LIU T, et al. A cyber-physical monitoring system for attack detection in smart grid [C]// IEEE INFOCOM 2013, April 26-May 1, 2013, Hong Kong, China.Washington: IEEE Computer Society, 2013. [13]YI H, EEMALIFALAK M, NGUYEN H, et al. Bad data injection in smart grid: attack and defense mechanisms [J].IEEE Communications Magazine, 2013, 51(1): 27-33. [14]LIU T, YUN G, DAI W, et al. A novel method to detect bad data injection attack in smart grid [C]// The 2013 IEEE Conference on Computer Communications Workshops(INFOCOM WKSHPS), April 14-19, 2013, Turin, Italy.Washington: IEEE Computer Society, 2013: 49-54. [15]WANG D, GUAN X H, LIU T, et al. Extended distributed state estimation: a detection method against tolerable false data injection attacks in smart grids [J]. Energies, 2014, 7(3):1517-1538. [16]KOSUT O, JIA L Y, THOMAS R J, et al. Malicious data attacks on the smart grid [J]. IEEE Transactions on Smart Grid,2011, 2(4): 645-658. [17]LIU Y, NINE P, REITER M K. False data injection attacks against state estimation in electric power grids [J]. ACM Transactions on Information and System Security, 2011, 14(1):1301-1333.3.2 基于BloomFilter 的路由轉(zhuǎn)發(fā)地址映射統(tǒng)計方案
3.3 改進型EWMA 動態(tài)閾值更新算法
3.4 基于改進型CUSUM 的DDoS 攻擊識別算法
4 系統(tǒng)實現(xiàn)與系統(tǒng)測試
4.1 系統(tǒng)實現(xiàn)環(huán)境與步驟
4.2 系統(tǒng)測試
5 結(jié)束語