亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種電力工控網(wǎng)絡指令異常分析方法

        2020-05-24 08:44:56黃秀麗繆巍巍孫佳煒
        南京理工大學學報 2020年2期
        關鍵詞:遙控報文數(shù)據(jù)包

        張 明,黃秀麗,繆巍巍,裴 培,孫佳煒

        (1.江蘇省電力有限公司,江蘇 南京210000;2.全球能源互聯(lián)網(wǎng)研究院有限公司 信息網(wǎng)絡安全國網(wǎng)重點實驗室,江蘇 南京 210003)

        國家電網(wǎng)積極構建全球能源互聯(lián)網(wǎng),利用特高壓電網(wǎng)實現(xiàn)能源的大范圍優(yōu)化配置,在清潔電源引起電網(wǎng)波動、用電高峰突發(fā)等場景下,大規(guī)模源網(wǎng)荷系統(tǒng)能夠將不易控制的分散負荷調整為自適應資源,主動協(xié)同保障電網(wǎng)的穩(wěn)定,有效提升電網(wǎng)功率動態(tài)平衡能力。目前網(wǎng)荷互動的通信協(xié)議主要以IEC 60870-5-104為基準,并做了部分擴充的104規(guī)約。104規(guī)約解決了網(wǎng)荷互動終端的各項監(jiān)控數(shù)據(jù)傳輸問題,然而對協(xié)議的安全描述以及指令間的異常識別沒有提出有效解決方案,嚴重威脅了電力基礎設施的安全。國內外針對此問題的主流解決方法是協(xié)議格式解析[1-4],但是傳統(tǒng)協(xié)議解析方法很難普適,構造規(guī)約的上下文無關文法表示相對困難,同時解析過程多是基于堆棧、腳本或編譯器式的推理過程,解析速度受到限制。因此,迫切需要對工控系統(tǒng)協(xié)議指令級的特征處理進行研究。

        大規(guī)模源網(wǎng)荷友好互動系統(tǒng)是復雜的非線性系統(tǒng),受到多種外界因素影響,其宏觀指令行為往往復雜多變,數(shù)據(jù)中既含有多種周期類波動,又有非線性升、降趨勢,還受到不確定的隨機因素的干擾,所以,如何選擇和優(yōu)化非線性模型成為近年來分析指令級異常特征的研究重點,如何將非線性時序數(shù)據(jù)異常狀態(tài)分析與自相關特性聯(lián)系在一起是一個亟待解決的問題[5-7]。孤立森林算法尤其適于分析復雜交互系統(tǒng)中的異常狀態(tài),已經(jīng)在實時(Real-time)系統(tǒng)、電子電路、通訊網(wǎng)絡等大規(guī)模系統(tǒng)中應用[8]。本文提出一種網(wǎng)荷互動的工控網(wǎng)絡指令異常的分析方法,針對通信協(xié)議的規(guī)范格式和業(yè)務指令特征對協(xié)議進行解析,抽取指令級特征,采用孤立森林算法實現(xiàn)對網(wǎng)荷互動的工控網(wǎng)絡中正常指令的區(qū)分,在正常指令以外的離群點可以視為異常指令。

        1 孤立森林算法

        源網(wǎng)荷系統(tǒng)的主要拓撲如圖1所示,智能網(wǎng)荷互動終端通過用戶交互機實時向變電站上傳可切負荷量,變電站對各網(wǎng)荷互動終端的可切負荷量進行匯集,上傳到核心交換機,核心交換機將這些可切負荷量進一步匯集,并上傳至源網(wǎng)荷主站。在電網(wǎng)發(fā)生故障時,源網(wǎng)荷主站根據(jù)預定義策略,通過變電站向各網(wǎng)荷互動終端發(fā)送切負荷命令,網(wǎng)荷互動終端接受主站命令后,對可切負荷量進行切除,保證電網(wǎng)安全穩(wěn)定運行。在系統(tǒng)交互過程中,源網(wǎng)荷系統(tǒng)中的諸多風險點存在被利用的可能性,產(chǎn)生大量重復的異常網(wǎng)絡流事件。通過對這些事件按根源進行分類,使用類別表示異常類型,可以精準分類攻擊類型。

        孤立森林是一種基于集成算法的快速異常檢測方法[9,10],它一般用于網(wǎng)絡安全中的攻擊檢測,金融交易中的欺詐檢測等。孤立森林屬于非參數(shù)(Non-parametric)和無監(jiān)督(Unsupervised)方法,即無需定義數(shù)學模型也無需進行有標記的訓練。對于如何查找哪些點是否容易被孤立(Isolated),孤立森林使用了一套策略:假設數(shù)據(jù)空間(Data space)被一個隨機超平面切割,切一次可以生成兩個子空間,然后再使用一個隨機超平面切割每個子空間并將其循環(huán),直到每子空間只包含一個數(shù)據(jù)。直觀地,可以發(fā)現(xiàn)具有高密度的簇可以被多次切割,但是那些密度很低的點容易很早就停到一個子空間。

        如圖1所示,孤立森林由t個孤立樹iTree(Isolation tree)組成,每個iTree是一個二叉樹結構,算法步驟如下:

        (1)從N條數(shù)據(jù)中均勻抽樣出Ψ個子樣本(Subsample),放入樹的根節(jié)點;

        (2)隨機指定一個維度(Attribute),并在這個維度的所有值范圍內(最小值與最大值之間)隨機選一個切割點p;

        (3)對樣本進行二叉劃分:將樣本中小于該切割點的樣本劃分到節(jié)點的左邊,大于等于該切割點的樣本劃分到節(jié)點的右邊;

        (4)這樣得到了一個分裂條件和左、右兩邊的數(shù)據(jù)集,然后分別在左右兩邊的數(shù)據(jù)集上重復上面的過程,直到數(shù)據(jù)不可再分即只包括一個樣本,或樹的高度達到log2(Ψ)。

        當所有的iTree樹構建完成后,就可以對測試數(shù)據(jù)進行預測。對于一個測試數(shù)據(jù)x,令其在iTree樹上沿對應的條件分支往下走,直到達到葉子節(jié)點,并記錄過程中經(jīng)過的路徑長度h(x)。可以得出x在每棵樹的高度平均值(Average path length over iTrees)。

        獲得每個測試數(shù)據(jù)的高度平均值后,設定一個閾值,高度平均值低于此閾值的測試數(shù)據(jù)即為異常,也就是“孤立森林”(異常在這些樹中只有很短的平均高度)。

        2 基于孤立森林的指令異常分析方法

        目前針對指令間的異常識別主要采取協(xié)議格式解析的方法,但是傳統(tǒng)協(xié)議解析方法很難普適,首先構造規(guī)約的上下文無關文法表示相對困難,其次解析過程多是基于堆棧、腳本或編譯器式的推理過程,解析速度受到限制。對于系統(tǒng)中的指令來說,異常指令只占很少量,異常數(shù)據(jù)特征值與正常數(shù)據(jù)差別很大,因此識別異常指令具有一定的干擾。而本文提出一種網(wǎng)荷互動的工控網(wǎng)絡指令異常的分析方法,針對通信協(xié)議的規(guī)范格式和業(yè)務指令特征對協(xié)議進行解析,抽取指令級特征,本文設計的指令特征處理方法具有工控協(xié)議的普適性,同時孤立森林算法是一種快速異常檢測方法,對于識別異常點有天然的優(yōu)勢。方法主要包括數(shù)據(jù)包捕獲、數(shù)據(jù)包深度解析、協(xié)議特征跟蹤識別和孤立森林算法的自學習等內容,如圖2所示。數(shù)據(jù)包捕獲模塊為后續(xù)模塊提供基礎輸入;數(shù)據(jù)包深度解析模塊完成對數(shù)據(jù)包的傳輸層、網(wǎng)絡層及鏈路層的高效解析;協(xié)議特征跟蹤識別模塊根據(jù)協(xié)議特征模型進行應用層數(shù)據(jù)流的異常分析,輸出為畸形報文信息和協(xié)議交互異常信息;針對指令級異常分析,采用孤立森林算法進行識別監(jiān)測,為了避免單個異常報文樣本無法覆蓋完整的異常特征簇的現(xiàn)象,采用正常報文樣本數(shù)據(jù)集作為孤立森林算法輸入進行自學習,實現(xiàn)對被測指令的特征處理。

        2.1 數(shù)據(jù)包深度解析

        數(shù)據(jù)包深度解析的步驟設計如下:

        Step1實現(xiàn)協(xié)議切分。在會話的基礎上進一步細分出“檢測流”,例如:104協(xié)議的一次交互等,都可以抽象成一條“檢測流”;

        Step2實現(xiàn)協(xié)議域切分。在最小的粒度上細分報文,將檢測流分成Header和Body部分,Header要細分成各個Field。協(xié)議域切分有助于判別該頭域是否需要檢測,判定該頭域命中的特征與其定義是否吻合;

        Step3對源網(wǎng)荷104協(xié)議進行解析,提取遙信、遙測、遙控等交互指令,將協(xié)議解析后的指令級字段送入算法引擎;

        (a)通過解析接收到的104報文,搜索68H得到幀頭,繼而獲得幀長度;

        (b)根據(jù)類型標志判斷該報文的信息幀類型;

        例如,接收到一幀數(shù)據(jù)68 14 2E 00 04 00 1E 01 03 00 01 00 0B 00 01 31 25 16 15 12 04 0B,此幀為遙信突發(fā)幀,數(shù)據(jù)長度為20,數(shù)據(jù)標識為0x1E,表示帶時標CP56Time2a的單點遙信幀,0B 00 01代表信息對象地址為65547,31為碼值描述。

        (c)根據(jù)幀結構分析數(shù)據(jù)以獲得相關信息。獲得的遙測、遙調、遙信和遙控的命令值被分配相應的序號并放置在存儲器中。

        2.2 協(xié)議特征跟蹤識別

        典型的源網(wǎng)荷系統(tǒng)交互異常主要包括協(xié)議結構異常(畸形報文)、協(xié)議交互異常、指令功能碼異常(包括頻次、值域范圍等特征異常)等3類異常。協(xié)議特征跟蹤識別流程如圖3所示。由圖3可見,協(xié)議特征跟蹤識別主要識別畸形報文和協(xié)議交互異常。首先對數(shù)據(jù)包結構的正常性進行分析,如果數(shù)據(jù)包的結構不符合規(guī)范要求,則直接判定該數(shù)據(jù)包不合規(guī);其次,在源網(wǎng)荷系統(tǒng)監(jiān)測過程中預置計算監(jiān)測窗口周期達到時,計算指令非正常的顯著特征指標,包括TCP連接報文數(shù)、遙調上下行報文比、遙控超時區(qū)間W及業(yè)務流量等,進行協(xié)議交互快速異常狀態(tài)分類。

        (1)協(xié)議結構異常識別

        發(fā)現(xiàn)協(xié)議結構異??梢灾苯舆M行異常判定,104協(xié)議的協(xié)議幀結構為應用協(xié)議數(shù)據(jù)單元(Application protocol data unit,APDU),它由兩部分組成:應用控制協(xié)議信息(Application control protocol information,APCI)和應用服務數(shù)據(jù)單元(Application service data unit,ASDU)。在Least Significant Bits中使用的3種控制類型是帶編號信息傳輸(I格式,Numbered information transfer),帶編號監(jiān)控功能(S格式,Numbered supervisory functions)和無編號控制功能(U格式,Unnumbered control functions),分別取值00、10和11。對不符合規(guī)約規(guī)定的格式的協(xié)議判定為異常;

        (2)協(xié)議交互異常識別

        協(xié)議交互異常狀態(tài)判別的主要監(jiān)測指標如下:

        (a)業(yè)務流量狀態(tài)。

        (1)

        式中:s表示采樣周期,Len(PASDU)表示采樣周期內檢測到的典型業(yè)務報文中ASDU字節(jié)數(shù),采用變化遙測上行報文為典型業(yè)務報文;

        (b)典型報文的業(yè)務流量頻域直流模比值狀態(tài)r流量

        其次,計算典型報文流量頻域直流模比值

        (2)

        當直流模比值r流量大于正常傳輸?shù)拈撝祎流量時,判別為正常狀態(tài);反之,判別為異常狀態(tài)。

        (c)典型報文數(shù)的頻域直流模比值狀態(tài)r報文數(shù)

        首先,計算業(yè)務報文數(shù)Cs,其中s是采用周期,Cs是采樣周期內檢測到的完整典型業(yè)務報文個數(shù);

        最后,計算典型報文數(shù)頻域直流模比值

        (3)

        當傳輸?shù)膱笪臄?shù)頻域直流模比值r報文數(shù)大于正常傳輸?shù)拈撝祎報文數(shù)時,判別為正常狀態(tài);反之為異常狀態(tài)。

        (d)TCP連接請求報文數(shù)狀態(tài)

        104規(guī)約的工作方式為TCP鏈接在運行過程中處于長鏈狀態(tài),當發(fā)生諸如通訊設備問題或傳輸協(xié)議的序列號錯誤等軟件故障時,需要重新進行TCP鏈接。定義CTCP為主站在計算窗口期間發(fā)送的TCP連接報文數(shù)。當CTCP超過設定的閾值時,判別為傳輸異常;

        (e)遙調上下行報文數(shù)比r遙調狀態(tài)

        (4)

        式中:C指令、C響應分別是主站在計算窗口期間發(fā)送的遙調指令報文數(shù)及相應廠站上行的遙調應答報文數(shù)。

        對于遙調指令,典型狀態(tài)轉換為“指令↓-響應↑”或者“指令↓-響應↑-結束↑”。當r遙調小于對應設定的閾值時,判定遙調指令傳輸出錯;

        (f)遙控報文應答平均延遲時間狀態(tài)

        (5)

        式中:t指令表示計算窗口期間遙控指令時間,t響應表示相應上行應答報文時間,N為窗口期間發(fā)出的指令個數(shù)。

        對于遙控指令,典型狀態(tài)轉換為“選擇指令↓-選擇響應↑-執(zhí)行指令↓-執(zhí)行響應↑”,對于主站發(fā)出的每個指令,必須在一定的時間范圍內有相應的應答。對于每個廠站遙控指令,當遙控報文應答平均延遲時間r遙控延遲大于設定閾值時,判定遙控指令傳輸出錯。

        2.3 指令功能碼異常識別

        孤立森林算法本質上是一個無監(jiān)督學習,不需要數(shù)據(jù)的類型標注。在工控系統(tǒng)中異常樣本比較少,不能進行訓練,本文采用文獻[2,3]方法,僅用正常樣本構建孤立森林。構建正常指令itree,在源網(wǎng)荷中,可以通過建立遙測、遙信的頻次數(shù)、閾值數(shù)來判定正常指令。

        孤立森林正常指令特征的算法如下:

        由上述算法可以看出,正常指令特征iTree具體構造算法的主函數(shù)Gratree-Build,以正常報文類型DM和SMA為輸入,從正常報文類型的起始字段開始推導解析SMA。首先為起始字段(DM.Z)創(chuàng)建根節(jié)點(第1行);然后在正常報文類型的生成式集合(DM.P)中找到起始字段對應的生成式(第2行),調用生成式處理函數(shù)Production disposal對其進行處理;最后輸出SMA對應的正常指令狀態(tài)iTree。

        生成式處理函數(shù)(Production disposal)實現(xiàn)SMA解析的核心功能,即將SMA依次比對生成式右邊的構成元素,得到該SMA的語法結構。在處理每一個構成元素之前,首先計算其繼承屬性的值(第7行),因為它的值可能會影響到后序字段的解析。在處理文法元素識別SMA時,算法又根據(jù)字段類型的不同分為3種情況:

        (1)若為原子字段(第8-10行),則根據(jù)字段的屬性值提取(get-Data函數(shù))該字段在SMA中的取值,創(chuàng)建節(jié)點(Node函數(shù))加入正常指令狀態(tài)iTree;

        (2)若為包含結構屬性的復合字段(第12-13行),則先根據(jù)屬性規(guī)則計算出SMA對應的結構屬性值,再按照一般復合字段的處理方法構造分析樹;

        (3)若為一般的復合字段(第14-18行),先為該復合字段創(chuàng)建節(jié)點加入樹中,然后尋找復合字段的生成式,遞歸調用生成式處理函數(shù)(Production disposal),直到SMA解析完成或模型推導終止。同時當復合字段的生成式解析完全之后,還需對其綜合屬性進行計算(第18行)。

        正常指令特征iTree算法構建以后,給定一個包含n條記錄的指令數(shù)據(jù)集D,構造孤立森林:隨機采樣一部分指令數(shù)據(jù)集來構造每一棵樹,以確保不同樹之間的差異。文獻[2]中建議采樣大小不要超過256。除了限制采樣大小Ψ外,還要給每棵iTree設置最大高度L=ceiling(log2Ψ),這樣算法效率更高,不過這樣調整了后,后面計算h(x)需要進一步改進,算法1表示孤立森林構建過程:

        孤立森林構造后,對測試進行預測時,需要進行綜合每棵樹的結果,即通過閾值比較,閾值計算公式為

        (6)

        式中:E(h(x))表示記錄x在每棵樹的高度均值,h(x)的計算方法如下:

        應用孤立森林檢測后,如果檢測出異常報文,需要對報文進行后續(xù)處理,例如拒絕、丟棄、重定向或者斷開連接,生成攻擊日志告警等。

        3 方法分析

        源網(wǎng)荷系統(tǒng)典型的指令執(zhí)行過程如圖5所示。源網(wǎng)荷系統(tǒng)104規(guī)約采用TCP/IP協(xié)議進行數(shù)據(jù)傳輸,主要通信事件包括遙信、遙測、遙控。在遙控過程中,當主站需要控制子站的相關設備時,發(fā)送相應的遙控幀,主站首先向子站發(fā)送遙控指令,子站回送相應的返校指令,接著主站發(fā)送執(zhí)行指令,子站執(zhí)行相應的遙控指令并返回執(zhí)行確認指令,子站完成相應操作后,向主站發(fā)送操作結束指令。

        本文選用終端側源網(wǎng)荷智能網(wǎng)荷互動終端側交換機、通信側變電站交換機和主站側交換機的報文狀態(tài)數(shù)據(jù)集進行實驗。采集的部分報文如圖6-8所示。

        當接收到一個或多個數(shù)據(jù)幀時,通過搜索頭部為68H的數(shù)據(jù)幀確定一個數(shù)據(jù)幀。定位到68H后,提取的報頭的下一位即指示APDU數(shù)據(jù)單元長度的數(shù)據(jù)。利用數(shù)據(jù)長度L能夠確定出一個完整的數(shù)據(jù)幀,具體判斷方法如表1所示。

        在判斷幀的格式后,根據(jù)對應的幀格式解析子程序,得到相應的遙測、遙調、遙信和遙控信息。

        孤立森林學習穩(wěn)定后,將收到的幀以數(shù)組的方式存儲到內存中。解析接收到的幀,通過第7字節(jié)的數(shù)據(jù)標識確定數(shù)據(jù)幀類型。幀類型對應信息如表2所示。

        表1 基于數(shù)據(jù)長度L的幀類型判斷

        表2 數(shù)據(jù)標識符對應的信息幀類型

        根據(jù)實驗數(shù)據(jù)集采集的周期和時長的特點,本文參考Cortez對時間窗口的選取方法,劃分訓練集和測試集時,將數(shù)據(jù)集的前2/3用于訓練,后1/3用于測試模型的精確度。為了評估異常狀態(tài)分析模型的準確性,本文采用平均絕對百分比誤差(Mean absolute percentage error,MAPE)作為模型的評價指標[11,12]

        (7)

        ESN(回聲狀態(tài)網(wǎng)絡)是一種由輸入層、隱藏層(儲備池)、輸出層組成的新型遞歸神經(jīng)網(wǎng)絡。它的儲備池內有許多稀疏神經(jīng)元,這些神經(jīng)元蘊含系統(tǒng)的運行狀態(tài),并具有短期訓記憶功能。通過調整網(wǎng)絡內部權值能夠達到記憶數(shù)據(jù)的功能。ESN訓練的過程就是訓練隱藏層到輸出層的連接權值(Wout)的過程。LSTM(長短時記憶網(wǎng)絡)是一種特定形式的RNN,通過增加輸入門限、遺忘門限和輸出門限,使得自循環(huán)的權重是變化的,這樣,在模型參數(shù)固定的情況下,不同時刻的積分尺度可以動態(tài)改變,從而避免了梯度消失或者梯度膨脹的問題。

        通過將實驗采集數(shù)據(jù)經(jīng)過ESN、LSTM、孤立森林3種算法進行測試,3種算法的平均絕對百分比誤差如表3所示。

        由表3可以看到,在3個數(shù)據(jù)集上,孤立森林算法的指令異常檢測的平均絕對百分比誤差比ESN,LSTM算法小,異常狀態(tài)分析結果最好。

        實驗中分別記錄了3個數(shù)據(jù)集上3個算法的模型訓練時間,如表4所示。

        表3 指令異常檢測的平均絕對百分比誤差分析

        表4 不同算法訓練時間

        由表4可以看出,孤立森林算法訓練用時最少,效率最高。而ESN和LSTM算法由于都屬于神經(jīng)網(wǎng)絡算法,在計算隱藏層節(jié)點權重時需要不斷迭代,因此訓練耗時較高,在數(shù)據(jù)集1中甚至達到3 h 25 min。從以上實驗可以看出,基于孤立森林的指令異常檢測方法在具有較低誤差的同時也具有較高的效率。

        4 結論

        本文提出一種電力工控網(wǎng)絡指令異常的分析方法,在網(wǎng)-荷互動背景下,針對104規(guī)約的規(guī)范格式和業(yè)務指令特征,通過數(shù)據(jù)包的捕獲和深度解析,對協(xié)議特征進行跟蹤識別,采用孤立森林的自學習方法實現(xiàn)對電力工控網(wǎng)絡指令級異常特征挖掘。實驗證明了本文方法的有效性,該方法對電力工控網(wǎng)絡中減少各類運行信息和控制指令在采集、傳輸、觸發(fā)過程中存在的被竊聽、篡改、中斷等風險具有意義。

        猜你喜歡
        遙控報文數(shù)據(jù)包
        如何遙控引爆的
        基于J1939 協(xié)議多包報文的時序研究及應用
        汽車電器(2022年9期)2022-11-07 02:16:24
        CTCS-2級報文數(shù)據(jù)管理需求分析和實現(xiàn)
        淺析反駁類報文要點
        中國外匯(2019年11期)2019-08-27 02:06:30
        他是如何遙控引爆的
        SmartSniff
        ATS與列車通信報文分析
        基于Libpcap的網(wǎng)絡數(shù)據(jù)包捕獲器的設計與實現(xiàn)
        遙控賽車
        視覺注意的數(shù)據(jù)包優(yōu)先級排序策略研究
        v一区无码内射国产| 国产女人av一级一区二区三区| 亚洲美女毛多水多免费视频 | 久久精品国产亚洲av试看| 国产视频自拍一区在线观看 | 激,情四虎欧美视频图片| 精品亚洲一区二区三洲| 领导边摸边吃奶边做爽在线观看| 麻豆高清免费国产一区| 在线视频青青草猎艳自拍69 | 麻豆果冻传媒在线观看| 国产精品流白浆喷水| 亚洲中文字幕永久网站| 美腿丝袜在线一区二区| 国产操逼视频| 免费中文熟妇在线影片| 我也色自拍俺也色自拍| 亚洲人成网站18禁止| 99精品热这里只有精品| 亚洲无AV码一区二区三区| 熟女人妻一区二区三区| 乱码av麻豆丝袜熟女系列| 亚洲中久无码永久在线观看软件 | 中文字幕日韩精品人妻久久久| 精品国产乱码久久久久久婷婷| 国产欧美精品区一区二区三区| 国产精品美女久久久久浪潮AVⅤ| 国产激情视频在线观看大全| 久久视频在线| 国产午夜无码视频免费网站| 国内精品女同一区二区三区| 欧美老熟妇乱子| 亚洲熟女少妇一区二区| 中文字幕日韩熟女av| 人妻少妇不满足中文字幕| 日本理伦片午夜理伦片| 99JK无码免费| 一本久道久久丁香狠狠躁| 国产精品精品自在线拍| 国产免费资源高清小视频在线观看| 久久少妇呻吟视频久久久|