一種網絡協同攻擊風暴源檢測方法及裝置與流程
2023-10-23 12:54:22 3
本發明涉及網絡安全
技術領域:
,具體而言,涉及一種網絡協同攻擊風暴源檢測方法及裝置。
背景技術:
:隨著網絡攻擊技術和工具的發展演變,網絡攻擊方式不斷朝著自動化、智能化、協同化方向發展,其中協同化網絡攻擊藉助自身隱蔽性好、可靠性高等特徵在黑客組織得到大範圍的傳播和應用。目前,絕大多數企業或機構已經實現傳統服務模式到網際網路服務模式的轉變,面對多領域業務擴展、大量的用戶群體和快速變化的網絡環境,協同攻擊因其協同關係複雜和協同節點眾多,使傳統的基於動態基線控制的檢測方式無法適應現有安全運維環境。該種傳統網絡協同攻擊風暴源檢測方式存在如下缺陷:短時間的動態基線閾值不能排除風暴點行為相關性,易造成風暴特性誤判;協同攻擊風暴點的挖掘沒有專業的技術體系,僅是傳統的數量級統計方式;風暴點協作性判定尚未實現,只關注變化趨勢,缺少對風暴本身產生原因的最終調查。技術實現要素:有鑑於此,本發明的目的在於提供一種網絡協同攻擊風暴源檢測方法及裝置。一方面,本發明較佳實施例提供一種網絡協同攻擊風暴源檢測方法,該方法包括:對網絡攻擊事件集建立三維數據模型,並計算得到該三維數據模型的異常時間區間;獲取所述異常時間區間的神經網絡模型預測結果,以根據該神經網絡模型預測結果及異常時間區間內的網絡攻擊事件數量,得到該異常時間區間內的風暴時間區間;獲取所述風暴時間區間內的所有網絡攻擊事件構成第一事件集,並計算所述第一事件集內每一個網絡攻擊事件所對應的絕對事件數量分布矩陣的標準差,以根據該標準差的計算結果從所述第一事件集中提取存在非周期性行為相似特性的網絡攻擊事件構成第二事件集;對所述第二事件集中的每一個網絡攻擊事件按照預設的周期頻率建立事件數量的頻率分布圖,計算該頻率分布圖的偏度係數,並根據所述偏度係數從所述第二事件集中提取頻率分布異常的網絡攻擊事件構成第三事件集;分別計算第三事件集中的每一個網絡攻擊事件所對應的實時事件數量趨勢圖及頻率分布圖的峰度係數,根據該峰度係數的計算結果從所述第三事件集中提取峰度係數大於預設閾值的網絡攻擊事件構成第四事件集;以及判斷該第四事件集中每一個網絡攻擊事件的周期性行為相關性,並根據判斷結果從所述第四事件集中提取不具有周期性行為相關性的網絡攻擊事件構成最終的風暴源事件集。另一方面,本發明較佳實施例提供一種網絡協同攻擊風暴源檢測裝置,該裝置包括:異常時間區間計算模塊,用於對網絡攻擊事件集建立三維數據模型,並計算得到該三維數據模型的異常時間區間;風暴區間獲取模塊,用於獲取所述異常時間區間的神經網絡模型預測結果,以根據該神經網絡模型預測結果及異常時間區間內的網絡攻擊事件數量,得到該異常時間區間內的風暴時間區間;標準差計算模塊,用於獲取所述風暴時間區間內的所有網絡攻擊事件構成第一事件集,並計算所述第一事件集內每一個網絡攻擊事件所對應的絕對事件數量分布矩陣的標準差,以根據該標準差的計算結果從所述第一事件集中提取存在非周期性行為相似特性的網絡攻擊事件構成第二事件集;偏度係數計算模塊,用於對所述第二事件集中的每一個網絡攻擊事件按照預設的周期頻率建立事件數量的頻率分布圖,計算該頻率分布圖的偏度係數,並根據所述偏度係數從所述第二事件集中提取頻率分布異常的網絡攻擊事件構成第三事件集;峰度係數計算模塊,用於分別計算第三事件集中的每一個網絡攻擊事件所對應的實時事件數量趨勢圖及頻率分布圖的峰度係數,根據該峰度係數的計算結果從所述第三事件集中提取峰度係數大於預設閾值的網絡攻擊事件構成第四事件集;及風暴源獲取模塊,用於判斷該第四事件集中每一個網絡攻擊事件的周期性行為相關性,並根據判斷結果從所述第四事件集中提取不具有周期性行為相關性的網絡攻擊事件構成最終的風暴源事件集。本發明較佳實施例提供的網絡協同攻擊風暴源檢測方法及裝置,結合神經網絡模型預估和基於K階矩的離散度分析、偏度分析及峰度分析排除行為相關性風暴源事件,與傳統的基於動態基線的風暴源檢測方法相比,具有更為精確合理的風暴源事件捕獲特性,基於相同的特徵資料庫,具有分析維度多樣化、對網絡攻擊事件的協同性分析深入、數據表達更直觀的優勢。附圖說明為了更清楚地說明本發明實施例的技術方案,下面將對實施例中所需要使用的附圖作簡單地介紹,應當理解,以下附圖僅示出了本發明的某些實施例,因此不應被看作是對範圍的限定,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他相關的附圖。圖1為本發明較佳實施例提供的數據處理設備的示意性結構框圖;圖2為本發明較佳實施例提供的網絡協同攻擊風暴源檢測方法的流程圖;圖3為本發明較佳實施例提供的一種絕對事件數量分布矩陣的示意圖;圖4為本發明較佳實施例提供的一種示意性頻率分布圖;圖5為本發明較佳實施例提供的網絡協同攻擊風暴源檢測裝置的功能模塊框圖。附圖標記:數據處理設備100風暴區間獲取模塊420存儲器200標準差計算模塊430處理器300偏度係數計算模塊440網絡協同攻擊風暴源檢測裝置400峰度係數計算模塊450異常時間區間計算模塊410風暴源獲取模塊460具體實施方式為使本發明實施例的目的、技術方案和優點更加清楚,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發明一部分實施例,而不是全部的實施例。通常在此處附圖中描述和示出的本發明實施例的組件可以以各種不同的配置來布置和設計。應注意到:相似的標號和字母在下面的附圖中表示類似項,因此,一旦某一項在一個附圖中被定義,則在隨後的附圖中不需要對其進行進一步定義和解釋。因此,以下對在附圖中提供的本發明的實施例的詳細描述並非旨在限制要求保護的本發明的範圍,而是僅僅表示本發明的選定實施例。基於本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬於本發明保護的範圍。如圖1所示,是本較佳實施例提供的一種數據處理設備100的示意性結構框圖。該數據處理設備100包括存儲器200、處理器300以及網絡協同攻擊風暴源檢測裝置400。所述數據處理設備100可以是計算機或其他任意具有數據處理能力的計算設備。所述存儲器200與處理器300之間直接或間接地電性連接,以實現數據的傳輸或交互。例如,可通過一條或多條通訊總線或信號線實現電性連接。所述網絡協同攻擊風暴源檢測裝置400包括至少一個可以軟體或固件(firmware)的形式存儲於所述存儲器200中或固化在所述數據處理設備100的作業系統(operatingsystem,OS)中的軟體功能模塊。所述處理器300用於執行存儲器200中存儲的可執行模塊,例如所述網絡協同攻擊風暴源檢測裝置400包括的軟體功能模塊或電腦程式。所述處理器300在接收到執行指令後,執行所述功能模塊或程序,下述本發明任一實施例揭示的流過程定義的伺服器所執行的方法可以應用於處理器300中,或者由處理器300實現。請參閱圖2,是本發明較佳實施例提供的網絡協同攻擊風暴源檢測方法的流程圖。下面將對圖2所示的具體流程及步驟進行詳細闡述。步驟S101,對網絡攻擊事件集建立三維數據模型,並計算得到該三維數據模型的異常時間區間。首先,對用戶系統的網絡日誌進行關聯分析得到網絡攻擊事件集。然後對該網絡攻擊事件集建立三維數據模型(X軸:N天,Y軸:24小時,Z軸:事件數量),並計算該三維數據模型的峰值及峰間距比例,得到異常時間區間。具體計算過程為,根據事件數量區間段分布比例獲取所述三維數據模型中的可疑峰值節點,並計算該峰值節點其餘數據節點X、Y軸斜率,判斷是否為異常時間區間。步驟S103,獲取所述異常時間區間的神經網絡模型預測結果,以根據該神經網絡模型預測結果及異常時間區間內的網絡攻擊事件數量,得到該異常時間區間內的風暴時間區間。根據行為規則對所述網絡攻擊事件集進行周期性行為特徵分析,並根據分析結果提取數據樣本集合以建立所述神經網絡模型。所述行為規則依託於用戶系統的業務劃分、工作模式、網絡環境和設備配置策略。對該神經網絡模型的特徵數據進行長期機器學習和樣本訓練,以預測當前異常時間區間內網絡攻擊事件的數量。若所述神經網絡模型的預測值與該異常時間區間的某一子區間內的網絡攻擊事件的數量之差在預設偏差範圍內,則認為該子區間為正常時間區間,即不存在風暴源威脅,否則,則認為該子區間為風暴時間區間。步驟S105,獲取所述風暴時間區間內的所有網絡攻擊事件構成第一事件集,並計算所述第一事件集內每一個網絡攻擊事件所對應的絕對事件數量分布矩陣的標準差,以根據該標準差的計算結果從所述第一事件集中提取存在非周期性行為相似特性的網絡攻擊事件構成第二事件集。對所述第一事件集內的每一個網絡攻擊事件,根據X軸(歷史相似時間節點)及Y軸(24小時),分別構建實時事件數量分布矩陣,並對該實時事件數量分布矩陣進行3x3窗口中值濾波獲得該實時事件數量分布矩陣的基線矩陣。利用所述實時事件數量分布矩陣及基線矩陣,計算實時事件數量偏差,並根據公式:絕對數量=|偏差|+基線數量得出絕對事件數量分布矩陣,以將正、反向事件風暴進行規整統一。得到絕對事件數量分布矩陣後,計算該絕對事件數量分布矩陣的二階中心矩,以得到矩陣數據的橫向、縱向標準差。標準差表示數據的離散程度。如圖3所示,橫向為24小時網絡攻擊事件的數量趨勢,其離散度表示當前網絡攻擊事件的實時數量分布狀態,離散度越高表示數據波動性越大,存在風暴源事件的可能性越大;縱向(歷史相似時間節點)離散度表示當前網絡攻擊事件的歷史數量分布狀態,離散度越高表示事件不存在周期性行為相似特性的可能性越大。通過橫縱數據離散度關聯分析,排除周期性行為相似性,提取與總體風暴時間區間重合的風暴源事件集合,即根據所述絕對事件數量分布矩陣的橫、縱向標準差的計算結果,從所述第一事件集中提取存在周期性行為相似特性的網絡攻擊事件構成第二事件集。步驟S107,對所述第二事件集中的每一個網絡攻擊事件按照預設的周期頻率建立事件數量的頻率分布圖,計算該頻率分布圖的偏度係數,並根據所述偏度係數從所述第二事件集中提取頻率分布異常的網絡攻擊事件構成第三事件集。將所述風暴時間區間所在當天的24小時按照預設周期頻率,如可以是15分鐘,但不限於此,劃分為若干時間段,獲取每一個時間段內的網絡攻擊事件數量的發生次數,形成頻率分布圖。例如,於某一具體實施方式中,得到如圖4所示的頻率分布圖,該頻率分布圖中單一時間段內事件發生次數(事件頻率)在600~800及800~1000的時間段佔總時間段的比例相同,為34.14%,時間頻率在400~600及1000~1200的時間段佔總時間段的比例相同,為13.59%,其餘部分可同理推得。計算所述頻率分布圖的三階中心矩,以得到該頻率分布圖的偏度係數。偏度係數為0表示所述頻率分布圖為正太分布,低頻和高頻數據較少,數量偏差較小,數據整體趨勢較為平穩;當偏度係數越小(0正偏)數據集中在高頻部分,存在逆向風暴(事件數量突發性較少)。根據所述偏度係數的計算結果從所述第二事件集中提取頻率分布圖為正偏或負偏的網絡攻擊事件構成第三事件集。步驟S109,分別計算第三事件集中的每一個網絡攻擊事件所對應的實時事件數量趨勢圖及頻率分布圖的峰度係數,根據該峰度係數的計算結果從所述第三事件集中提取峰度係數大於預設閾值的網絡攻擊事件構成第四事件集。計算第三事件集中每一個網絡攻擊事件所對應的實時事件數量趨勢圖及頻率分布圖的四階中心矩,得到峰度係數。峰度係數用來度量數據在中心聚集程度,在正態分布情況下,峰度係數值等於3。峰度係數大於3時表明數據在中心的聚集程度較高,有比正態分布更短的尾部;峰度係數小於3時表明數據在中心的聚集程度較低,有比正態分布更長的尾部。實時事件數量趨勢圖的峰度係數越大表示對應的網絡攻擊事件發生的時間越短。頻率分布圖的峰度係數越大表明對應的網絡攻擊事件的風暴強度越大。根據該峰度係數的計算結果從所述第三事件集中提取峰度係數大於預設閾值的網絡攻擊事件構成第四事件集。步驟S111,判斷該第四事件集中每一個網絡攻擊事件的周期性行為相關性,並根據判斷結果從所述第四事件集中提取不具有周期性行為相關性的網絡攻擊事件構成最終的風暴源事件集。根據第四事件集中的每一個網絡攻擊事件對應的單事件神經網絡模型及該網絡攻擊事件在所述風暴時間區間對應的歷史相似時間節點處的事件發生數量,採用如下公式計算所述單事件神經網絡模型的預測值與真實的事件發生數量的標準偏差,:St=1n-1Σi=0n-1(yt-i-b)2]]>其中,St為標準偏差值,b為單事件神經網絡模型的預測值,yt為網絡攻擊事件在當前時間節點的事件發生數量,yt-1,yt-2....yt-n+1為網絡攻擊事件在歷史相似時間節點的事件發生數量。利用所述標準偏差確定周期性行為相關性偏差區間,即低/中/高風暴時間區間,並計算所述網絡攻擊事件在風暴時間區間內的真實事件發生數量與所述單事件神經網絡模型的預測值之間的偏差值。若所述偏差值落在所述周期性行為相關性偏差區間內,則該網絡攻擊事件具有周期性行為相關性。若所述偏差值未落在所述周期性行為相關性偏差區間內,則該網絡攻擊事件不具有周期性行為相關性。最後,根據判斷結果從所述第四事件集中提取不具有周期性行為相關性的網絡攻擊事件構成最終的風暴源事件集。請參閱圖5,是本發明較佳實施例提供的網絡協同攻擊風暴源檢測裝置400的功能模塊框圖。所述網絡協同攻擊風暴源檢測裝置400包括異常時間區間計算模塊410、風暴區間獲取模塊420、標準差計算模塊430、偏度係數計算模塊440、峰度係數計算模塊450以及風暴源獲取模塊460。下面將對圖5所示的具體功能模塊進行詳細描述。所述異常時間區間計算模塊410,用於對網絡攻擊事件集建立三維數據模型,並計算得到該三維數據模型的異常時間區間。具體地,該異常時間區間計算模塊410可用於執行圖2所示的步驟S101,具體的操作方法可參照步驟S101的詳細描述。所述風暴區間獲取模塊420,用於獲取所述異常時間區間的神經網絡模型預測結果,以根據該神經網絡模型預測結果及異常時間區間內的網絡攻擊事件數量,得到該異常時間區間內的風暴時間區間。具體地,該風暴區間獲取模塊420可用於執行圖2所示的步驟S103,具體的操作方法可參照步驟S103的詳細描述。標準差計算模塊430,用於獲取所述風暴時間區間內的所有網絡攻擊事件構成第一事件集,並計算所述第一事件集內每一個網絡攻擊事件所對應的絕對事件數量分布矩陣的標準差,以根據該標準差的計算結果從所述第一事件集中提取存在非周期性行為相似特性的網絡攻擊事件構成第二事件集。具體地,該標準差計算模塊430可用於執行圖2所示的步驟S105,具體的操作方法可參照步驟S105的詳細描述。偏度係數計算模塊440,用於對所述第二事件集中的每一個網絡攻擊事件按照預設的周期頻率建立事件數量的頻率分布圖,計算該頻率分布圖的偏度係數,並根據所述偏度係數從所述第二事件集中提取頻率分布異常的網絡攻擊事件構成第三事件集。具體地,該偏度係數計算模塊440可用於執行圖2所示的步驟S107,具體的操作方法可參照步驟S107的詳細描述。峰度係數計算模塊450,用於分別計算第三事件集中的每一個網絡攻擊事件所對應的實時事件數量趨勢圖及頻率分布圖的峰度係數,根據該峰度係數的計算結果從所述第三事件集中提取峰度係數大於預設閾值的網絡攻擊事件構成第四事件集。具體地,該峰度係數計算模塊450可用於執行圖2所示的步驟S109,具體的操作方法可參照步驟S109的詳細描述。風暴源獲取模塊460,用於判斷該第四事件集中每一個網絡攻擊事件的周期性行為相關性,並根據判斷結果從所述第四事件集中提取不具有周期性行為相關性的網絡攻擊事件構成最終的風暴源事件集。具體地,該風暴源獲取模塊460可用於執行圖2所示的步驟S111,具體的操作方法可參照步驟S111的詳細描述。本發明實施例提供的網絡協同攻擊風暴源檢測方法及裝置,結合神經網絡模型預估和基於K階矩的離散度分析、偏度分析及峰度分析排除行為相關性風暴源事件,與傳統的基於動態基線的風暴源檢測方法相比,具有更為精確合理的風暴源事件捕獲特性,基於相同的特徵資料庫,具有分析維度多樣化、對網絡攻擊事件的協同性分析深入、數據表達更直觀的優勢。值得注意的是,本發明還可以進行進一步的擴展,即結合資產攻擊模型和資產關係網分析區間風暴事件的協同和抑制關係,歸納出事件風暴發生威脅共同體,繼而將風暴源和風暴警區納入到檢測和分析範圍中。在本申請所提供的幾個實施例中,應該理解到,所揭露的裝置和方法,也可以通過其它的方式實現。以上所描述的裝置實施例僅僅是示意性的,例如,附圖中的流程圖和框圖顯示了根據本發明的多個實施例的裝置、方法和電腦程式產品的可能實現的體系架構、功能和操作。在這點上,流程圖或框圖中的每個方框可以代表一個模塊、程序段或代碼的一部分,所述模塊、程序段或代碼的一部分包含一個或多個用於實現規定的邏輯功能的可執行指令。也應當注意,在有些作為替換的實現方式中,方框中所標註的功能也可以以不同於附圖中所標註的順序發生。例如,兩個連續的方框實際上可以基本並行地執行,它們有時也可以按相反的順序執行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執行規定的功能或動作的專用的基於硬體的系統來實現,或者可以用專用硬體與計算機指令的組合來實現。另外,在本發明各個實施例中的各功能模塊可以集成在一起形成一個獨立的部分,也可以是各個模塊單獨存在,也可以兩個或兩個以上模塊集成形成一個獨立的部分。所述功能如果以軟體功能模塊的形式實現並作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中。基於這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分或者該技術方案的部分可以以軟體產品的形式體現出來,該計算機軟體產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,伺服器,或者網絡設備等)執行本發明各個實施例所述方法的全部或部分步驟。需要說明的是,在本文中,諸如第一和第二等之類的關係術語僅僅用來將一個實體或者操作與另一個實體或操作區分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關係或者順序。而且,術語「包括」、「包含」或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句「包括一個……」限定的要素,並不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同要素。以上所述僅為本發明的優選實施例而已,並不用於限制本發明,對於本領域的技術人員來說,本發明可以有各種更改和變化。凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。應注意到:相似的標號和字母在下面的附圖中表示類似項,因此,一旦某一項在一個附圖中被定義,則在隨後的附圖中不需要對其進行進一步定義和解釋。當前第1頁1 2 3