本發(fā)明涉及一種智能電網(wǎng)通信網(wǎng)絡(luò)流量異常檢測方法,尤其涉及一種基于熵分析的智能電網(wǎng)通信網(wǎng)絡(luò)流量異常檢測方法,屬于電力通信安全
技術(shù)領(lǐng)域:
。
背景技術(shù):
:隨著網(wǎng)絡(luò)規(guī)模的急劇擴(kuò)展,網(wǎng)絡(luò)所面臨的安全問題越來越復(fù)雜,對網(wǎng)絡(luò)流量的分析是網(wǎng)絡(luò)安全管理尤其是入侵檢測分析的重要研究內(nèi)容。網(wǎng)絡(luò)異常是網(wǎng)絡(luò)面臨的重大威脅之一。典型的網(wǎng)絡(luò)異?;顒佑蟹植际骄芙^服務(wù)(DDos)、端口掃描、蠕蟲和病毒等。如今,雖然網(wǎng)絡(luò)異常檢測已經(jīng)有大量相關(guān)研究,但找到一種泛型方法來檢測網(wǎng)絡(luò)異常仍然是一個挑戰(zhàn)。在網(wǎng)絡(luò)運行過程中,攻擊和錯誤發(fā)現(xiàn)的越早,所能采用的補救措施就越多,造成的損失就會越少。因此,在線異常檢測受到了學(xué)術(shù)界和工業(yè)界的重視。在應(yīng)用運行的過程中,應(yīng)用本身和各種監(jiān)控程序都會產(chǎn)生各類日志信息來記錄應(yīng)用的狀態(tài)、重要的運行事件和網(wǎng)絡(luò)流量,因此日志信息中包含應(yīng)用運行的動態(tài)信息,適合用來進(jìn)行異常檢測。傳統(tǒng)日志分析是通過人工參與或者使用事前定義好的規(guī)則來完成的。當(dāng)日志大小有限以及異常類型事先可知時,這些方法非常有效并且也很靈活。但是如果程序產(chǎn)生了百萬行日志,人工處理日志就不太現(xiàn)實了。為了解決上述問題,在申請?zhí)枮?01310492962.9的中國專利申請中公開了一種實時在線日志檢測方法,包括:步驟1:將整個的訓(xùn)練日志轉(zhuǎn)換為一個離散事件序列;步驟2:建立一個檢測模型;步驟3:將待測日志分段生成至少一個日志段,并為每個日志段分配日志段序列;步驟4:對一個日志段進(jìn)行異常程度評分,得到相對熵;步驟5:判斷相對熵是否為正值,如果是,當(dāng)前日志段異常,跳至步驟7;否則,當(dāng)前日志段為正常;步驟6:判斷相對熵是否大于閾值,如果是,當(dāng)前日志段為異常;否則,跳至步驟8;步驟7:發(fā)送異常警告給用戶,待檢測程序恢復(fù)到檢測所述日志段之前的狀態(tài);步驟8:判斷異常日志中是否存在未評分日志段,如果是,跳轉(zhuǎn)至步驟4;否則,結(jié)束。該處理過程可以有效地檢測日志異常。但是,智能電網(wǎng)作為一種集成配電系統(tǒng)和通訊網(wǎng)絡(luò)的雙向電力及信息流基礎(chǔ)設(shè)施,在運行過程中會產(chǎn)生大量的日志信息,上述處理方法對于日志信息的處理過程過于復(fù)雜,不能滿足智能電網(wǎng)日志實時檢測的需求。另一方面,上述處理方法只能檢測出日志異常,不能根據(jù)獲取的日志信息判斷出異常類型,進(jìn)而獲取智能電網(wǎng)日志異常產(chǎn)生的原因,不能很好地滿足智能電網(wǎng)的檢測需求。技術(shù)實現(xiàn)要素:本發(fā)明所要解決的技術(shù)問題在于提供一種基于熵分析的智能電網(wǎng)通信網(wǎng)絡(luò)流量異常檢測方法。為實現(xiàn)上述發(fā)明目的,本發(fā)明采用下述的技術(shù)方案:一種基于熵分析的智能電網(wǎng)通信網(wǎng)絡(luò)流量異常檢測方法,包括如下步驟:S1,實時接收智能電網(wǎng)運行過程中產(chǎn)生的日志信息的特征值;S2,在時間閾值內(nèi),統(tǒng)計每個特征值出現(xiàn)的概率;S3,計算每個特征值的熵,并進(jìn)行歸一化處理,生成熵向量;S4,重復(fù)步驟S1~S3,計算當(dāng)前時間閾值與上一時間閾值的熵向量的差值,并根據(jù)熵向量的差值以及網(wǎng)絡(luò)流量攻擊特點判斷網(wǎng)絡(luò)流量異常的類型。其中較優(yōu)地,在步驟S1中,所述日志信息的特征值包括源IP地址、源端口號、目的IP地址和目的端口號。其中較優(yōu)地,在步驟S2中,所述在時間閾值內(nèi),統(tǒng)計每個特征值出現(xiàn)的概率包括如下步驟:S21,在時間閾值內(nèi),實時統(tǒng)計在智能電網(wǎng)運行過程中,每個源IP、源端口、目的IP、目的端口出現(xiàn)的次數(shù);S22,在時間閾值內(nèi),統(tǒng)計源IP、源端口、目的IP、目的端口出現(xiàn)的總數(shù);S23,用每個源IP、源端口、目的IP、目的端口出現(xiàn)的次數(shù)分別除以時間閾值內(nèi)源IP、源端口、目的IP、目的端口出現(xiàn)的總數(shù),分別得到源IP、源端口、目的IP、目的端口四個特征值出現(xiàn)的概率。其中較優(yōu)地,在步驟S3中,對每個特征值的熵進(jìn)行歸一化處理采用如下公式:Ht(Xi)=Hs(Xi)/logN;其中,Hs(Xi)為特征值的熵,logN為歸一化因數(shù),N為時間閾值內(nèi)觀測的活動特征值的個數(shù)。其中較優(yōu)地,在步驟S3中,所述根據(jù)熵向量的差值以及網(wǎng)絡(luò)流量攻擊特點判斷網(wǎng)絡(luò)流量異常的類型,包括如下步驟:S41,通過分析常見網(wǎng)絡(luò)流量攻擊模式的特點,獲取智能電網(wǎng)運行過程中出現(xiàn)常見網(wǎng)絡(luò)流量攻擊模式時,日志信息的特征值的熵的變化特征;S42,獲取智能電網(wǎng)運行過程中,當(dāng)前時間閾值與上一時間閾值的熵向量的差值;S43,判斷熵向量的差值是否滿足步驟S41中的熵的變化特征,如果滿足任意一條變化特征,則發(fā)出報警信息,同時將所述變化特征對應(yīng)的網(wǎng)絡(luò)流量攻擊模式展示出來。其中較優(yōu)地,在步驟S3中,根據(jù)熵向量的差值以及網(wǎng)絡(luò)流量攻擊特點判斷網(wǎng)絡(luò)流量異常的類型,還包括如下步驟:S44,當(dāng)熵向量的差值不滿足步驟S41中的熵的變化特征中的任意一條時,判定無網(wǎng)絡(luò)流量異常發(fā)生,繼續(xù)實時接收下一時間閾值的日志數(shù)據(jù)的特征值。本發(fā)明所提供的基于熵分析的智能電網(wǎng)通信網(wǎng)絡(luò)流量異常檢測方法,通過實時接收智能電網(wǎng)運行過程中產(chǎn)生的日志信息的特征值,計算每個特征值的熵,并進(jìn)行歸一化處理,生成熵向量;然后計算當(dāng)前時間閾值與上一時間閾值的熵向量的差值,并根據(jù)熵向量的差值以及網(wǎng)絡(luò)流量攻擊特點判斷網(wǎng)絡(luò)流量異常的類型,同時指明攻擊來源及攻擊目標(biāo)。該方法獲取熵向量的方法比較簡單,可以有效地滿足智能電網(wǎng)日志信息實時檢測的需求。另一方面,該方法不僅能檢測出日志異常,而且能根據(jù)獲取的日志信息判斷出異常類型,進(jìn)而獲取智能電網(wǎng)日志異常產(chǎn)生的原因,可以很好地滿足智能電網(wǎng)的檢測需求。附圖說明圖1為本發(fā)明提供的基于熵分析的智能電網(wǎng)通信網(wǎng)絡(luò)流量異常檢測方法的流程圖;圖2為本發(fā)明提供的實施例中,三種常見的網(wǎng)絡(luò)流量攻擊模式特點的展示圖;圖3為本發(fā)明提供的一個實施例中,在時間閾值內(nèi)不同特征值的變化狀態(tài)圖。具體實施方式下面結(jié)合附圖和具體實施例對本發(fā)明作進(jìn)一步的詳細(xì)說明。如圖1所示,本發(fā)明提供的基于熵分析的智能電網(wǎng)通信網(wǎng)絡(luò)流量異常檢測方法,具體包括如下步驟:首先,實時接收智能電網(wǎng)運行過程中產(chǎn)生的日志信息的特征值;其次,在時間閾值內(nèi),統(tǒng)計每個特征值出現(xiàn)的概率;然后,計算每個特征值的熵,并進(jìn)行歸一化處理,生成熵向量;最后,計算當(dāng)前時間閾值與上一時間閾值的熵向量的差值,并根據(jù)熵向量的差值以及網(wǎng)絡(luò)流量攻擊特點判斷網(wǎng)絡(luò)流量異常的類型。下面對這一過程做詳細(xì)具體的說明。S1,實時接收智能電網(wǎng)運行過程中產(chǎn)生的日志信息的特征值。實時接收在智能電網(wǎng)運行過程中產(chǎn)生的日志信息的特征值,便于在智能電網(wǎng)運行過程中及時對日志信息的特征值進(jìn)行判斷,如若網(wǎng)絡(luò)流量出現(xiàn)異常,能夠第一時間發(fā)現(xiàn),并及時進(jìn)行處理,能夠有效地保證在網(wǎng)絡(luò)異常出現(xiàn)初期檢測出來。在本發(fā)明所提供的實施例中,日志信息的特征值包括源IP地址、源端口號、目的IP地址和目的端口號。其中,源IP地址用srcIP代表,源端口號用srcPort代表,目的IP地址用dstIP代表,目的端口號用dstPort代表。通過對日志信息的特征值進(jìn)行簡單處理進(jìn)而判斷網(wǎng)絡(luò)流量是否發(fā)生異常,簡化了日志信息的處理過程,可以滿足智能電網(wǎng)日志實時檢測的需求。S2,在時間閾值內(nèi),統(tǒng)計每個特征值出現(xiàn)的概率。根據(jù)智能電網(wǎng)的運行特點和使用需求設(shè)定時間閾值,在時間閾值內(nèi),統(tǒng)計每個特征值出現(xiàn)的概率。為了通過流量檢測網(wǎng)絡(luò)異常,此處用xi表示網(wǎng)絡(luò)日志信息的特征值。前面已經(jīng)述及,主要使用四個特征值:srcIP代表源IP地址,srcPort代表源端口號,dstIP代表目的IP地址,dstPort代表目的端口號。在時間閾值內(nèi),統(tǒng)計每個特征值出現(xiàn)的概率,包括如下步驟:S21,在時間閾值內(nèi),實時統(tǒng)計在智能電網(wǎng)運行過程中,每個源IP、源端口、目的IP、目的端口出現(xiàn)的次數(shù)。S22,在時間閾值內(nèi),統(tǒng)計源IP、源端口、目的IP、目的端口出現(xiàn)的總數(shù)。S23,用每個源IP、源端口、目的IP、目的端口出現(xiàn)的次數(shù)分別除以時間閾值內(nèi)源IP、源端口、目的IP、目的端口出現(xiàn)的總數(shù),分別得到源IP、源端口、目的IP、目的端口四個特征值出現(xiàn)的概率。S3,計算每個特征值的熵,并進(jìn)行歸一化處理,生成熵向量。根據(jù)如下公式計算每個特征值的熵:Hs(X)=Σi=1np(xi·)loga1p(xi)]]>其中,Hs(X)表示特征值的熵,p(xi)為特征值的概率,i=1,2,3,4。當(dāng)i=1時,p(x1)為源IP的概率,Hs(X1)為源IP的熵;當(dāng)i=2時,p(x2)為目的IP的概率,Hs(X2)為目的IP的熵,當(dāng)i=3時,p(x3)為源端口的概率,Hs(X3)為源端口的熵;當(dāng)i=4時,p(x4)為目的端口的概率,Hs(X4)為目的端口的熵。根據(jù)對數(shù)底數(shù)的不同,以上公式可以適用于多種單位。例如比特(a=2),納特(a=e)和赫特利(a=10)等,采用不同單位需要用相應(yīng)對數(shù)底數(shù)。在本發(fā)明所提供的實施例中,對數(shù)均取2為底數(shù)。為定量比較熵時間間隔,對得到的各個特征值的熵進(jìn)行歸一化處理。其中,對每個源IP地址x1,可通過如下公式進(jìn)行歸一化處理:Ht(sIP)=Hs(X1)/logN;其中,Hs(X1)為源IP的熵,logN為歸一化因數(shù),N為測量區(qū)間內(nèi)觀測的活動源IP的個數(shù)。對每個目的IP地址x2,可通過如下公式進(jìn)行歸一化處理:Ht(sIP)=Hs(X2)/logN;其中,Hs(X2)為目的IP的熵,logN為歸一化因數(shù),N為測量區(qū)間內(nèi)觀測的活動目的IP的個數(shù)。對每個源端口地址x3,可通過如下公式進(jìn)行歸一化處理:Ht(sIP)=Hs(X3)/logN;其中,Hs(X3)為源端口的熵,logN為歸一化因數(shù),N為測量區(qū)間內(nèi)觀測的活動源端口的個數(shù)。對每個目的端口地址x4,可通過如下公式進(jìn)行歸一化處理:Ht(sIP)=Hs(X4)/logN;其中,Hs(X4)為目的IP的熵,logN為歸一化因數(shù),N為測量區(qū)間內(nèi)觀測的活動目的端口的個數(shù)。在本發(fā)明所提供的實施例中,選擇可成對描述的四個特征(sIP,dIP,sPort,dPort),如源IP地址、源端口、目的IP地址和目的端口。在每一個時間閾值內(nèi),根據(jù)歸一化處理的特征值的熵生成熵向量。Ht=[Ht(sIP),Ht(dIP),Ht(sPort),Ht(dPort)]S4,重復(fù)步驟S1~S3,計算當(dāng)前時間閾值與上一時間閾值的熵向量的差值,并根據(jù)熵向量的差值以及網(wǎng)絡(luò)流量攻擊特點判斷網(wǎng)絡(luò)流量異常的類型。重復(fù)步驟S1~S3,不斷計算當(dāng)前時間閾值內(nèi)的熵向量,計算當(dāng)前時間閾值與上一時間閾值的熵向量的差值,并根據(jù)熵向量的差值以及網(wǎng)絡(luò)流量攻擊特點判斷網(wǎng)絡(luò)流量異常的類型。根據(jù)熵向量的差值以及網(wǎng)絡(luò)流量攻擊特點判斷網(wǎng)絡(luò)流量異常的類型,具體包括如下步驟:S41,通過分析常見網(wǎng)絡(luò)流量攻擊模式的特點,獲取智能電網(wǎng)運行過程中出現(xiàn)常見網(wǎng)絡(luò)流量攻擊模式時,日志信息的特征值的熵的變化特征。圖2展示了三種常見的網(wǎng)絡(luò)流量攻擊模式。圖2(a)中可以看出分布式拒絕服務(wù)攻擊的典型特征是多臺主機(jī)通過不同端口與一特定主機(jī)(端口)創(chuàng)建大量通信。與之類似,網(wǎng)絡(luò)蠕蟲從已感染主機(jī)通過隨機(jī)生成的大量IP地址向易受攻擊的其他主機(jī)發(fā)送隨機(jī)探針,如圖2(b)所示。而圖2(c)中所示端口掃描則由單一主機(jī)通過單一IP地址和端口對不同目標(biāo)主機(jī)地址和端口進(jìn)行掃描等。通過對常見的網(wǎng)絡(luò)流量攻擊模式進(jìn)行分析,可以發(fā)現(xiàn)特征值的變化能夠體現(xiàn)不同網(wǎng)絡(luò)事件的特殊簽名。在本發(fā)明所提供的實施例中,以主機(jī)掃描、反向散射、DDos和端口掃描等幾類常見網(wǎng)絡(luò)流量攻擊模式為例進(jìn)行說明,如下表1所示。但是在實際使用中,可以對大量網(wǎng)絡(luò)流量攻擊模式進(jìn)行分析歸納總結(jié),以便于在智能電網(wǎng)快速運行過程中,及時、全面、有效地對網(wǎng)絡(luò)異常進(jìn)行檢測。主機(jī)掃描反向散射DDos端口掃描srcIP↑隨機(jī)的↓具體的↑隨機(jī)的↓具體的dstIP↑隨機(jī)的**↑隨機(jī)的**↓具體的↓具體的srcPort↑隨機(jī)的*↓具體的↑隨機(jī)的*↑隨機(jī)的*dstPort↓具體的↑隨機(jī)的*↓具體的↑隨機(jī)的表1預(yù)期熵模式變化表根據(jù)表1,可以得到當(dāng)發(fā)生主機(jī)掃描時,當(dāng)前時間閾值與上一時間閾值的熵向量的差值滿足如下公式:ΔHt1=[+Δh,(+Δh),+Δh,-Δh];Backscatter(反向散射)定義為由用大量虛假地址進(jìn)行DDos攻擊造成的無意識影響。Backscatter(反向散射)通信發(fā)生在當(dāng)受害者被虛假源地址進(jìn)行Dos攻擊并向虛假地址回應(yīng)時。當(dāng)前時間閾值與上一時間閾值的熵向量的差值滿足如下公式:ΔHt2=[-Δh,(+Δh),-Δh,+Δh];DDos分布式拒絕服務(wù)是一種用大量盜用系統(tǒng)攻擊個別系統(tǒng)導(dǎo)致拒絕服務(wù)的Dos攻擊。DDos攻擊的受害者遭受由端目標(biāo)系統(tǒng)和所有被黑客惡意控制的系統(tǒng)組成的分布式攻擊。當(dāng)前時間閾值與上一時間閾值的熵向量的差值滿足如下公式:ΔHt3=[+Δh,-Δh,+Δh,-Δh];可通過以上熵檢測出此類攻擊。端口掃描方法可通過觀察主機(jī)或網(wǎng)絡(luò)對連接嘗試的應(yīng)答來確定某特定服務(wù)是否適用。針對此類特征,當(dāng)前時間閾值與上一時間閾值的熵向量的差值滿足如下公式時,可檢測出此類攻擊。ΔHt4=[-Δh,-Δh,+Δh,+Δh]。S42,獲取智能電網(wǎng)運行過程中,當(dāng)前時間閾值與上一時間閾值的熵向量的差值。S43,判斷熵向量的差值是否滿足步驟S41中的熵的變化特征,如果滿足任意一條變化特征,則發(fā)出報警信息,同時將該變化特征對應(yīng)的網(wǎng)絡(luò)流量攻擊模式展示出來;否則轉(zhuǎn)向步驟S43;S44,無網(wǎng)絡(luò)流量異常發(fā)生,繼續(xù)實時接收下一時間閾值的日志數(shù)據(jù)的特征值。智能電網(wǎng)作為一種集成配電系統(tǒng)和通訊網(wǎng)絡(luò)的雙向電力及信息流基礎(chǔ)設(shè)施,在運行過程中會產(chǎn)生大量的日志信息,該智能電網(wǎng)通信網(wǎng)絡(luò)流量異常方法中獲取熵向量的方法比較簡單,可以有效地滿足智能電網(wǎng)日志實時檢測的需求。另一方面,該智能電網(wǎng)通信網(wǎng)絡(luò)流量異常方法不僅能檢測出日志異常,而且能根據(jù)獲取的日志信息判斷出異常類型,進(jìn)而獲取智能電網(wǎng)日志異常產(chǎn)生的原因,可以很好地滿足智能電網(wǎng)的檢測需求。下面通過實驗評估對該智能電網(wǎng)通信網(wǎng)絡(luò)流量異常方法的效果進(jìn)行進(jìn)一步說明。在本發(fā)明中,通過計算特征值的熵值展示原始數(shù)據(jù)和異常檢測分析結(jié)果。1)原始日志數(shù)據(jù)本發(fā)明采集了智能電網(wǎng)信息控制網(wǎng)絡(luò)從2014年12月30日至2015年1月1日三天的設(shè)備日志信息。并將將原始日志信息進(jìn)行過濾,表2為所選取用于異常檢測的樣本記錄。表中分別為:設(shè)備標(biāo)識、源IP地址、源端口號、目的IP地址和目的端口號。表2智能電網(wǎng)運行的設(shè)備日志信息表對過濾后的原始日志信息進(jìn)行總結(jié),總結(jié)結(jié)果如下表3所示。此處選取時間間隔為1小時且每個小時從1開始編入索引。表3中只列出兩個時間區(qū)段分別標(biāo)為1和2。時間區(qū)域索引1,有13個源IP地址,1個源端口,9個目的IP地址和1個目的端口。且在第一個小時內(nèi),13.10.40.12為目的源IP地址出現(xiàn)了32次,0為源端口出現(xiàn)92次,13.101.141.2為目的IP地址被掃描了31次,0端口也被訪問92次。同樣時間區(qū)間索引2,有14個源IP地址,12個源端口,13個目的IP地址和55個目的端口出現(xiàn)。表3日志信息總結(jié)表2)實驗結(jié)果因為每天都有大量日志信息生成,所以在本發(fā)明中選取HadoopSteaming的MapReduce規(guī)劃模型來執(zhí)行實驗Python程序。表4中展示了索引1和2期間四個特征值的熵值。可以看出源(目的)IP地址熵值在索引1和2期間降低。而源(目的)端口熵值在此期間升高。圖3展示了此趨勢,通過該趨勢可以推斷出這種行為屬于端口掃描,該結(jié)論也可以通過公式ΔHt4=[-Δh,-Δh,+Δh,+Δh]得到。表4不同時刻特征值的熵值變化表智能電網(wǎng)通信網(wǎng)絡(luò)中不同設(shè)備有多種類型日志。并且這些日志中包含能夠反映網(wǎng)絡(luò)所面臨威脅的重要信息。本實驗中收集日志信息中四個特征值,計算比較其熵值,并將該方法拓展到HadoopStreaming平臺。實驗結(jié)果顯示可有效檢測異常。綜上所述,本發(fā)明所提供的基于熵分析的智能電網(wǎng)通信網(wǎng)絡(luò)流量異常檢測方法,通過實時接收智能電網(wǎng)運行過程中產(chǎn)生的日志信息的特征值;在時間閾值內(nèi),統(tǒng)計每個特征值出現(xiàn)的概率;然后,計算每個特征值的熵,并進(jìn)行歸一化處理,生成熵向量;最后,計算當(dāng)前時間閾值與上一時間閾值的熵向量的差值,并根據(jù)熵向量的差值以及網(wǎng)絡(luò)流量攻擊特點判斷網(wǎng)絡(luò)流量異常的類型。智能電網(wǎng)作在運行過程中會產(chǎn)生大量的日志信息,該智能電網(wǎng)通信網(wǎng)絡(luò)流量異常方法中獲取熵向量的方法比較簡單,可以有效地滿足智能電網(wǎng)日志實時檢測的需求。另一方面,該方法不僅能檢測出日志異常,而且能根據(jù)獲取的日志信息判斷出異常類型,進(jìn)而獲取智能電網(wǎng)日志異常產(chǎn)生的原因,可以很好地滿足智能電網(wǎng)的檢測需求。以上對本發(fā)明所提供的基于熵分析的智能電網(wǎng)通信網(wǎng)絡(luò)流量異常檢測方法進(jìn)行了詳細(xì)的說明。對本領(lǐng)域的一般技術(shù)人員而言,在不背離本發(fā)明實質(zhì)精神的前提下對它所做的任何顯而易見的改動,都將構(gòu)成對本發(fā)明專利權(quán)的侵犯,將承擔(dān)相應(yīng)的法律責(zé)任。當(dāng)前第1頁1 2 3