面向閉源電力工控系統(tǒng)的安全防御體系架構(gòu)設(shè)計_第1頁
面向閉源電力工控系統(tǒng)的安全防御體系架構(gòu)設(shè)計_第2頁
面向閉源電力工控系統(tǒng)的安全防御體系架構(gòu)設(shè)計_第3頁
面向閉源電力工控系統(tǒng)的安全防御體系架構(gòu)設(shè)計_第4頁
面向閉源電力工控系統(tǒng)的安全防御體系架構(gòu)設(shè)計_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

付費下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

電力工控系統(tǒng),特指應(yīng)用于電力生產(chǎn)和供應(yīng)過程的工業(yè)控制系統(tǒng),如調(diào)度側(cè)的智能電網(wǎng)調(diào)度技術(shù)支持系統(tǒng)、變電站側(cè)的綜合自動化系統(tǒng)以及發(fā)電廠側(cè)的分散控制系統(tǒng)等,是關(guān)系到電網(wǎng)安全穩(wěn)定運行的重要領(lǐng)域。電力工控系統(tǒng)一般不公開其內(nèi)部函數(shù)邏輯調(diào)用關(guān)系及私有化通信協(xié)議,具有閉源特性。同時,由于缺少攻擊數(shù)據(jù)樣本,難以實現(xiàn)殺毒引擎的構(gòu)建,導(dǎo)致傳統(tǒng)基于特征庫匹配的網(wǎng)絡(luò)安全技術(shù)不適用于電力工控系統(tǒng)。數(shù)據(jù)采集與監(jiān)視控制系統(tǒng)(SupervisoryControlAndDataAcquisition,SCADA)作為下發(fā)遙控指令的核心組件,是攻擊者的主要目標。2010年,受“震網(wǎng)”病毒影響的系統(tǒng)包括SCADA和可編程邏輯控制器(ProgrammableLogicController,PLC)。介紹了SCADA和能量管理系統(tǒng)已有的具體漏洞。演示了一個攻擊示例,攻擊者可以通過修改GOOSE數(shù)據(jù)包來實現(xiàn)跳閘操作,觸發(fā)一系列級聯(lián)事件,從而導(dǎo)致災(zāi)難性的電網(wǎng)事故。針對SCADA系統(tǒng)的入侵防護,提出了基于異常行為檢測的SCADA系統(tǒng)防護方法。Morris等人對遠程終端單元(RemoteTerminalUnit,RTU)攻擊類型進行分析,提取了通信協(xié)議的異常行為檢測特征。面對電力系統(tǒng)自動化領(lǐng)域唯一的全球通用標準——IEC61850協(xié)議,開展了分析研究,并給出了IEC61850靜態(tài)及動態(tài)特征檢測方法。在安全防護異常檢測方面,研究了工控系統(tǒng)異常行為發(fā)現(xiàn)方法。給出了一種面向工業(yè)控制網(wǎng)絡(luò)的異常流量檢測方法,該方法采用自回歸移動平均模型(AutoregressiveIntegratedMovingAverageModel,ARIMA)對正常流量進行建模分析,并以此模型對網(wǎng)絡(luò)正常流量進行預(yù)測,從而檢測異常流量。密西西比州立大學(xué)針對電力系統(tǒng),提出了基于K-means聚類的無監(jiān)督學(xué)習(xí)異常檢測方法。羅耀峰等人在模糊聚類算法中引入了異常檢測方法,面向差異化多層網(wǎng)絡(luò),研究了深度異常檢測方法。考慮工控系統(tǒng)網(wǎng)絡(luò)的復(fù)雜性,單一的異常檢測方法難以滿足實際環(huán)境下的檢測精度要求。對此,有研究者為提高工控系統(tǒng)異常行為檢測能力,嘗試將多種檢測方法進行復(fù)合或加權(quán)組合。提出了一種SVM-KNN-PSO組合方法,利用粒子群優(yōu)化算法(ParticleSwarmOptimization,PSO)進行權(quán)重優(yōu)化,并結(jié)合支持向量機(SupportVectorMachine,SVM)和K近鄰法(K-NearestNeighbor,KNN)的分類優(yōu)勢,用以開展系統(tǒng)異常檢測,結(jié)果表明,與單一方法相比,組合方法的檢測精度有一定程度的提高。本文基于國家電網(wǎng)公司建立的“安全分區(qū)、網(wǎng)絡(luò)專用、橫向隔離、縱向認證”安全防護體系,重點考慮工控系統(tǒng)底層數(shù)據(jù)及運行機制的封閉性(閉源性)特點,利用逆向分析技術(shù),從系統(tǒng)底層運行狀態(tài)學(xué)習(xí)方法、安全防御模型構(gòu)建等方面,設(shè)計構(gòu)造不依賴特征庫比對的工控系統(tǒng)安全防御體系架構(gòu),解決未知惡意行為和惡意代碼潛伏問題,為閉源電力工控系統(tǒng)安全防御問題提供技術(shù)解決路線。1閉源電力工控系統(tǒng)安全防御架構(gòu)電力工控系統(tǒng)是一個有機整體,分析其安全防御模型,首先需要分析電力工控系統(tǒng)各業(yè)務(wù)場景及應(yīng)用模式。充分考慮在系統(tǒng)封閉、代碼非開源、協(xié)議私有化等閉源條件下,進行安全防護的技術(shù)難點。最終確定適用于電力工控系統(tǒng)安全防御業(yè)務(wù)的應(yīng)用模式。本文所設(shè)計的安全防御架構(gòu)如圖1所示。圖1閉源電力工控系統(tǒng)安全防御體系架構(gòu)從站端監(jiān)測、主站管控、云端分析3個方面增強安全防御體系。其中,站端監(jiān)測是通過數(shù)據(jù)采集模塊,采集工控系統(tǒng)的底層數(shù)據(jù),感知閉源系統(tǒng)在多個階段產(chǎn)生的數(shù)據(jù)信息,解析系統(tǒng)底層運行機理。主站管控是通過部署在網(wǎng)絡(luò)安全管理平臺的防御模型,對站端監(jiān)測到的數(shù)據(jù)進行異常判斷,并依據(jù)該判斷結(jié)果進行告警及威脅處置。云端分析是利用調(diào)控云平臺中的模型訓(xùn)練模塊,增加算力并計算異常判斷依據(jù),訓(xùn)練完畢的結(jié)果反向下發(fā)至主站防御模型中。如圖1所示,底層數(shù)據(jù)提取模塊部署在廠站閉源電力工控系統(tǒng)中,實現(xiàn)系統(tǒng)程序進程中各模塊、函數(shù)之間調(diào)用狀態(tài)的實時采集,實現(xiàn)函數(shù)調(diào)用關(guān)系與關(guān)鍵參數(shù)提取。采集的底層數(shù)據(jù)通過Agent、網(wǎng)絡(luò)安全監(jiān)測裝置,發(fā)送給網(wǎng)絡(luò)安全管理平臺防御模型。主站安全防御模型采用機器學(xué)習(xí)的方法對數(shù)據(jù)進行智能分析,生成模型判斷依據(jù)的參數(shù),形成安全穩(wěn)定運行基線,實現(xiàn)對廠站終端底層信息的實時監(jiān)測和告警。模型訓(xùn)練模塊部署在調(diào)控云平臺中,目的是為構(gòu)建防御模型提供充足的計算資源,并實時分析、驗證,不斷完善防御模型。完成階段性學(xué)習(xí)后,防御模型向廠站下發(fā)指令,實現(xiàn)對終端底層信息的實時監(jiān)測和告警等處置方法。2廠站底層數(shù)據(jù)提取模塊系統(tǒng)底層數(shù)據(jù)提取模塊主要用于提取閉源電力工控系統(tǒng)底層運行數(shù)據(jù),主要涉及內(nèi)部函數(shù)調(diào)用邏輯及參數(shù)逆向技術(shù)。系統(tǒng)內(nèi)部函數(shù)調(diào)用邏輯及參數(shù)逆向是用來分析閉源軟件的技術(shù),目的是獲取一些難以獲得的軟件信息、算法、被隱藏的許可密碼或是文件采用的加密方式等有用信息。具體包含兩部分,即軟件關(guān)鍵模塊定位技術(shù)和函數(shù)執(zhí)行軌跡特征提取技術(shù)。軟件關(guān)鍵模塊的獲取可以使用動態(tài)插樁的方法,定位關(guān)鍵模塊可有效減少冗余的函數(shù)執(zhí)行軌跡,更利于分析計算。函數(shù)執(zhí)行軌跡特征提取則針對關(guān)鍵模塊實施動態(tài)鏈接庫劫持,記錄關(guān)鍵模塊函數(shù)調(diào)用信息。2.1軟件關(guān)鍵模塊定位技術(shù)可執(zhí)行程序在完成其功能的過程中,需要執(zhí)行多個相應(yīng)的程序代碼,并且執(zhí)行過程具有一定順序,這種順序即程序執(zhí)行軌跡。依據(jù)不同的分析粒度,軟件執(zhí)行軌跡主要分為模塊級執(zhí)行軌跡和函數(shù)級執(zhí)行軌跡(如圖2、圖3所示)。圖2模塊級執(zhí)行軌跡圖3函數(shù)級執(zhí)行軌跡本文采用函數(shù)級執(zhí)行軌跡覆蓋度的方法進行關(guān)鍵模塊定位。主要流程為:(1)確定所要分析的應(yīng)用程序具體功能;(2)采集該功能在正常運行過程中的函數(shù)執(zhí)行軌跡,采集執(zhí)行過程中各個函數(shù)的調(diào)用次數(shù)和函數(shù)所屬模塊;(3)按模塊逐一統(tǒng)計函數(shù)調(diào)用總量次數(shù),得到各個模塊的函數(shù)執(zhí)行軌跡覆蓋度;(4)根據(jù)覆蓋度數(shù)值,從高到低選擇部分模塊,作為關(guān)鍵模塊。2.2函數(shù)執(zhí)行軌跡特征提取函數(shù)執(zhí)行軌跡特征提取是關(guān)鍵模塊定位的前提條件。其過程主要包含函數(shù)棧幀分析和動態(tài)連接庫劫持兩個部分。(1)函數(shù)棧幀分析。首先,需要對函數(shù)棧幀進行初步分析,確定相關(guān)函數(shù)參數(shù)。之后根據(jù)參數(shù)在相應(yīng)函數(shù)中傳遞過程、計算量等信息,初步判斷各參數(shù)在相應(yīng)函數(shù)中的作用,進而判斷相應(yīng)函數(shù)的具體類型。其次,需要進行函數(shù)棧幀監(jiān)控(可以使用具體的插樁工具開展)。通過監(jiān)控,可以確定所分配的函數(shù)參數(shù)和變量大小,也可以通過識別pushebp/movebp,esp的使用情況,確定幀指針的使用情況以及棧幀參數(shù)和變量的內(nèi)存引用情況。用WinCC50.dll舉例說明,該DLL文件中的函數(shù)(CCGetWinCCIniPath)棧幀如圖4所示。從圖4中可知,黑色框線內(nèi)的函數(shù)中包含arg_0和arg_4兩個參數(shù),對應(yīng)的是ebp+8h和ebp+0Ch位置,其中,arg_0上面的相關(guān)參數(shù)為相應(yīng)的局部變量。圖4CCGetWinCCIniPath函數(shù)棧幀(2)動態(tài)連接庫劫持。關(guān)鍵模塊定位之后,為了獲取模塊相關(guān)函數(shù)調(diào)用過程,需要采用動態(tài)鏈接庫劫持技術(shù)(又稱為動態(tài)鏈接庫Hooking)。動態(tài)鏈接庫劫持技術(shù)可以有選擇性地劫持動態(tài)鏈接庫內(nèi)用戶自定義的函數(shù)。其過程如圖5所示,在軟件和目標DLL文件之間,設(shè)置同名的偽裝DLL文件。每當程序調(diào)用關(guān)鍵DLL文件中的具體函數(shù)時,會被偽裝的同名DLL文件劫持,由于該偽裝DLL文件是被修改過的,因此可以將程序調(diào)用的具體函數(shù)記錄下來,進而截獲相關(guān)函數(shù)調(diào)用過程。圖5動態(tài)鏈接庫Hooking過程3主站安全防御模型安全防御模型構(gòu)建過程可分為數(shù)據(jù)集構(gòu)建和卷積神經(jīng)網(wǎng)絡(luò)(ConvolutionalNeuralNetwork,CNN)訓(xùn)練過程。原始數(shù)據(jù)主要從廠站工控系統(tǒng)或裝置中采集提取,并對每條數(shù)據(jù)標記時間戳,對采集到的原始數(shù)據(jù)進行數(shù)據(jù)處理,生成機器學(xué)習(xí)可識別的訓(xùn)練數(shù)據(jù)。訓(xùn)練數(shù)據(jù)應(yīng)包含正常樣例和異常樣例,但是異常樣例難以獲取,因此需要采用主動觸發(fā)設(shè)備異常的方式生成數(shù)據(jù)。數(shù)據(jù)收集完成后采用隨機抽樣的方法將訓(xùn)練數(shù)據(jù)劃分為訓(xùn)練集和測試集,訓(xùn)練集用于調(diào)整模型,測試集用于測試模型效果。主站安全防御模型可采用CNN構(gòu)建。CNN主要包含網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計和反向傳播算法設(shè)計兩個部分。3.1網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計CNN主要由卷積層、池化層和全連接層構(gòu)成,分別設(shè)計各層,然后將各層疊加,即可構(gòu)建完整的CNN。(1)卷積層。卷積層是CNN的核心層,大部分計算工作是在該層完成。在卷積層,處理后的訓(xùn)練數(shù)據(jù)經(jīng)過相關(guān)卷積計算,利用激活函數(shù)將輸入數(shù)據(jù)映射到輸出端,即可得到相應(yīng)的輸出特征,多個輸出特征再次進行卷積,即可得到多個特征的組合值,定義為第l卷積層的第個特征輸出值:其中,f()down為激活函數(shù),是在CNN神經(jīng)元上運行的函數(shù),負責(zé)將神經(jīng)元的輸入映射到輸出端。為第l層第i個輸出的激活值,其是將上層特征輸出值與核矩陣的卷積結(jié)果進行累加,再疊加特征偏置量得到的,如式(2)所示:(2)池化層。在連續(xù)的卷積層之間,需插入一個池化層,以有效控制過擬合情況的發(fā)生,并且可以降低數(shù)據(jù)空間的大小,減少網(wǎng)絡(luò)參數(shù)數(shù)量,降低計算資源消耗,定義為池化層第l層第

個輸出的激活值,如式(3)所示:其中,down()定義為池化函數(shù),將上層特征值輸出值?劃分為多個n×n塊,取該n×n塊中的平均特征值作為輸出,即有效降低了數(shù)據(jù)空間維度。β為權(quán)重系數(shù),為特征偏置量。(3)全連接層。全連接層在CNN中起著“分類器”的作用,將學(xué)習(xí)到的所有特征值映射到“分類器”上。該全連接層的權(quán)重w是一個巨大的矩陣,除特定塊外,其他部分都是零。在該層,二維特征值將會轉(zhuǎn)化為一維特征值并作為該層的輸入。對輸入進行加權(quán)求和,經(jīng)過激活后得到第l卷積層的輸出為:其中,為權(quán)重系數(shù),為特征偏置量。對于“分類器”的多分類問題,可將輸出期望與實際輸出做負對數(shù)似然,得到訓(xùn)練總誤差:其中,為樣本n的真值,為網(wǎng)絡(luò)輸出值。3.2反向傳播算法設(shè)計反向傳播算法主要用于計算梯度下降,是訓(xùn)練神經(jīng)網(wǎng)絡(luò)的常用算法。其思想是:訓(xùn)練數(shù)據(jù)經(jīng)神經(jīng)網(wǎng)絡(luò)輸出側(cè)輸出結(jié)果,是前向傳播過程,計算前向傳播輸出結(jié)果與實際結(jié)果誤差,并將該誤差從輸出側(cè)向輸入側(cè)反向傳播,在反向傳播過程中,根據(jù)誤差,調(diào)整各參數(shù)值,不斷迭代直至收斂。定義為卷積層l的靈敏度,其表示總誤差E隨第

l層激活值變化的程度:卷積層靈敏度大于池化層靈敏度,因此為計算第l層的靈敏度,需要利用上采樣方法,對l+1池化層靈敏度進行提升,以達到和第l卷積層靈敏度同量級的程度,通過鏈式求導(dǎo)可得第l層第j個通道靈敏度為:其中,,up()表示一個上采樣操作,將每個特征值在二維方向上進行n次復(fù)制n×n,即可提升l+1層靈敏度。總誤差E對偏移量的偏導(dǎo),可通過累加l層所有節(jié)點靈敏度得到:總誤差E對卷積核參數(shù)的偏導(dǎo),可通過累加所有特征元素得到:其中,是在計算時,與逐元素相乘的元素。其中,全連接層的權(quán)重w是一個巨大的矩陣,在l層,定義η為學(xué)習(xí)率,若其過小,則CNN整體訓(xùn)練速度會過慢;若其過大,則系統(tǒng)運行將不可收斂。通過調(diào)整學(xué)習(xí)率,調(diào)整整體訓(xùn)練時間;通過調(diào)整CNN各項參數(shù),不斷迭代直至收斂后,可以得到CNN運行收斂的具體參數(shù)。整個訓(xùn)練過程是:對數(shù)據(jù)進行上述處理,產(chǎn)生的特征向量作為輸入數(shù)據(jù)對CNN進行訓(xùn)練。在CNN訓(xùn)練過程中采用若干個卷積核對特征向量拼接成的矩陣進行掃描、池化和全連接。訓(xùn)練過程則是使用BP算法修改神經(jīng)網(wǎng)絡(luò)中每條鏈接的權(quán)值。訓(xùn)練的過程實際上是對模型的極大似然估計,即最大化,其中,X為樣本,y是樣本標簽,θ為模型參數(shù),因此訓(xùn)練過程就是已知X和y的情況下,通過優(yōu)化θ,使得L最大化。4安全防御模型構(gòu)建及架構(gòu)示例在安全防御模型構(gòu)建中,訓(xùn)練數(shù)據(jù)應(yīng)包含正常樣例和異常樣例,但是異常樣例難以獲取,因此做出如下定義:正常運行是指通過軟件提供的修改方法正常修改變量數(shù)據(jù);非正常運行則是指除正常運行外任何可能的行為。模型訓(xùn)練過程可視為將模型擬合數(shù)據(jù)的過程,定義為機器學(xué)習(xí)模型,其中,x為輸入數(shù)據(jù),θ為模型參數(shù),為模型對輸入數(shù)據(jù)x的預(yù)測結(jié)果。定義損失函數(shù)表示模型預(yù)測的誤差,其中y為樣本標簽,即當x為正常數(shù)據(jù)時,y=0;當x為異常數(shù)據(jù)時,y=1。模型的訓(xùn)練過程:通過尋找合適的模型參數(shù)θ,使得預(yù)測誤差最小。因此訓(xùn)練過程是解決優(yōu)化問題,如式(11)所示:本文采用卷積神經(jīng)網(wǎng)絡(luò)模型,損失函數(shù)可導(dǎo),可利用隨機梯度下降技術(shù)解決該優(yōu)化問題,完成對神經(jīng)網(wǎng)絡(luò)模型的訓(xùn)練。在訓(xùn)練結(jié)束后,模型參數(shù)θ可作為工控系統(tǒng)是否存在異常的依據(jù),從而獲得安全穩(wěn)定運行基線。在訓(xùn)練過程中,從訓(xùn)練集中隨機抽取部分數(shù)據(jù),定期檢驗預(yù)測正確率,驗

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論