葉亮 譚振江
摘要:提出一種使用深度學習方法對網(wǎng)絡環(huán)境進行態(tài)勢評估的方法。根據(jù)網(wǎng)絡掃描過程中獲取的風險信息進行分類和特征提取,訓練深度學習網(wǎng)絡,并根據(jù)學習結果預測攻擊對網(wǎng)絡造成的影響,同時對當前網(wǎng)絡態(tài)勢進行整體評估。針對網(wǎng)絡整體的安全問題進行定量描述,從而可以對不同協(xié)議層、不同來源、不同手段的攻擊進行風險評價,并調度資源進行攔截及防護。
關鍵詞:網(wǎng)絡安全態(tài)勢:深度學習:態(tài)勢評估
0引言
隨著網(wǎng)絡規(guī)模的不斷擴展,網(wǎng)絡安全問題的規(guī)模也隨之擴大,攻擊手段也不斷在更新,這使得網(wǎng)絡安全面臨著數(shù)據(jù)規(guī)模龐大、識別方式復雜以及面對問題不斷更新的挑戰(zhàn)。在現(xiàn)實情況中,使網(wǎng)絡中的所有接入設備都完全處于安全狀態(tài)也相當艱難。
與傳統(tǒng)的網(wǎng)絡安全要求不同,網(wǎng)絡安全態(tài)勢感知不關注個體的狀態(tài),也不僅局限于檢測一種特定類型的攻擊。而是從宏觀角度對當前網(wǎng)絡的安全狀態(tài)進行描述和評估,更關注于對整體網(wǎng)絡的全部要素進行獲取、整理、分析、理解,最終得到當前網(wǎng)絡安全的總體評價及發(fā)展趨勢。其主要研究集中在可視化、分層和融合三條主線上。
(1)可視化側重于人機交互的應用,管理人員易于從管理工具中直觀檢測到當前狀況,主要根據(jù)對系統(tǒng)的日志分析來回答是否有攻擊,來自何處的攻擊以及攻擊的影響等。但是該主線上較少關注網(wǎng)絡管理設備的自主分析,而是依賴于系統(tǒng)管理員的經驗或專家知識,
(2)在層次化的結構上,將不同類型的硬件、服務、軟件定義為不同層次上的節(jié)點,而在不同層次上,根據(jù)重要程度和對網(wǎng)絡產生的影響定義其權值,自底向上,逐層評估,得到總體的概況,在這類認知的前提下,研究得到一系列評估的模型,大多數(shù)模型的框架建立在數(shù)據(jù)收集——規(guī)范化——權值生成——評價的過程上,而模型的區(qū)別在于數(shù)據(jù)來源、清洗算法和權值學習算法等方面。
(3)網(wǎng)絡安全態(tài)勢使用數(shù)據(jù)融合,來自不同層次的數(shù)據(jù)結果的總和能夠對態(tài)勢進行描述。
數(shù)據(jù)分層和融合兩條主線對安全態(tài)勢的認知基礎來源于不同軟硬件或不同服務的數(shù)據(jù),分層更注重來源數(shù)據(jù)的評價,融合則更側重于數(shù)據(jù)的融合,而可視化將二者結果直觀地表達出來,
綜合各條主線,網(wǎng)絡安全態(tài)勢評估實際上表達的是對網(wǎng)絡整體動態(tài)的綜合評價,這種評價建立在較大規(guī)模的數(shù)據(jù)基礎上。在攻擊手段技術不斷更新,人為預期相對滯后的情況下,提出一種使用深度學習的態(tài)勢評估方法,在卷積神經網(wǎng)絡上建立起針對各層網(wǎng)絡數(shù)據(jù)的特征提取和判斷,最終獲取對網(wǎng)絡的評估結果,
1 模型框架
在卷積神經網(wǎng)絡上構建對態(tài)勢評估的模型,通過深度學習提取在大規(guī)模網(wǎng)絡數(shù)據(jù)中的特征,并加以分析和評估。經典的卷積神經網(wǎng)絡通常包括輸入層、卷積層、池化層、全連接層和輸出層等部分,接下來介紹將態(tài)勢評估建立在卷積神經網(wǎng)絡模型上的過程。
1.1輸入層
輸入層是數(shù)據(jù)進入卷積神經網(wǎng)絡的第一層,在該層進行數(shù)據(jù)的均值化、歸一化、降維和白化。將不同形式、不同規(guī)則的數(shù)據(jù)進行標準化,以便于準確抽取特征和構建評價。網(wǎng)絡掃描獲取的數(shù)據(jù)源自網(wǎng)絡不同層次,需要獲取的數(shù)據(jù)不同,但是數(shù)據(jù)格式相對整齊。因此在數(shù)據(jù)進行歸一化前,使用m×n維矩陣接收實際獲取數(shù)據(jù),并將來自網(wǎng)絡不同層的數(shù)據(jù)分布在矩陣的不同維。如:當前的數(shù)據(jù)包括IP地址、加密后的用戶名和密碼及服務請求等信息,則將數(shù)據(jù)記錄為4×n的矩陣,每一行獲取的是一類信息。
對于矩陣中的數(shù)據(jù)進行歸一化處理,二元的定性信息定義為[0.1]上的實數(shù),n元定性信息定義為[1.|n|]上的整數(shù),并可以通過函數(shù)映射到[0.1]上。定量信息根據(jù)數(shù)據(jù)分布和范圍,通過函數(shù)映射到[0.1]上。并且可以將m×n維矩陣,壓縮為m維向量。
1.2卷積層
卷積層是卷積神經網(wǎng)絡中的核心部分,通過卷積層,將歸一化的數(shù)據(jù)進行特征提取,自動學習數(shù)據(jù)的屬性。根據(jù)網(wǎng)絡層的結構,相關聯(lián)的數(shù)據(jù)總是在當前的上層或下層,因此使用大小為(3.3)的濾波器,并設置步長為1。
卷積層接受來自輸入層標準化的數(shù)據(jù),在數(shù)據(jù)中進行特征提取,對于標準化數(shù)據(jù)的矩陣形式,大小為(3.3)的濾波器提取的是相鄰3條數(shù)據(jù);對于每條數(shù)據(jù),每次提取3列的值,該值來源于相鄰層的信息。濾波器每次提取當前層的信息,同時考慮當前層上層和下層對評估的影響,也考慮前后相鄰數(shù)據(jù)對當前數(shù)據(jù)的影響。濾波器主要提取當前數(shù)據(jù)的當前層特征,較少考慮其它因素影響,濾波器將采用如下形式:
其中,a.b.c∈[0.1],但是a》b≈C。雖考慮其它因素影響,但以當前數(shù)據(jù)為主。
1.3池化層
池化層獲取來自卷積層的矩陣,用于縮減來自卷積層數(shù)據(jù)規(guī)模。來自卷積層的數(shù)據(jù),因濾波器的特征提取結果,得到特征明顯的數(shù)據(jù)。在m×m真的矩陣中表現(xiàn)為在第i行第j列(i≤m.j≤m)的元素aij,與矩陣中其它元素有較大的差異(如遠大于或遠小于)。那么將m×m的矩陣化簡為1×1的值,選擇aij為池化層的特征值來表達。根據(jù)(1)式,通常選擇得到的是過濾結果矩陣a11的值。
1.4全連接層和輸出層
該層獲取卷積層或池化層的矩陣數(shù)據(jù),并將其變?yōu)榱邢蛄窟M行加權,并向輸出層輸出。將m×n的矩陣數(shù)據(jù)轉為有m×n個元素的列向量。即
對于列向量進行加權輸出,得到輸出層的最終結果。但是通常情況下,m×n的值是一個較大的數(shù)字,對其進行加權輸出的計算量也較大??刹捎萌∑骄档姆椒ń鉀Q,即若輸出層結果為y0,則有:
最終,由輸出層得到的結果再次進行白化,得到當前輸入態(tài)勢評估的賦值。對一定時間段內的態(tài)勢進行評估,將得到賦值的分類。
2各層算法
使用網(wǎng)絡掃描數(shù)據(jù)進行訓練和評估,算法執(zhí)行過程如圖1所示。算法形式化表示如下:
輸入:掃描數(shù)據(jù)集x.人工判斷結果集合y.卷積過濾器組F=f1…fn
輸出:分類輸出向量t.評估值a
初始化:劃分掃描數(shù)據(jù)集X為訓練集和測試集,X={X1…X10},對應結果集合Y={Y1…Y10},設定卷積層數(shù)m。
1.M=SetNum(X)//將數(shù)據(jù)集數(shù)據(jù)化
2.M0=AVG(M)//均值化
3.M1=NOR(M0)//歸一化
4。M2=PCA(M1)//使用主成分分析降維
5.M3=WHI(M2)//白化
6.While(|OT(X)-Y|>ε)//當輸出層結果與實際結果不同
7.{While(|OT_fi(X)-fi(Y)|>ε)//當每層結果與實際每層結果不同
8.{SetFl(F)//設置卷積過濾器
9.M4=Get(M3,F(xiàn))//卷積輸出
10.OT_fi(X)=MaxP(M4)}//最大池化
11.NextL(OT_fi(X))}//向下一層傳遞
12.T=OT(X)//獲取輸出向量
在算法中,掃描數(shù)據(jù)集X可能獲取到非數(shù)字化的結果,如IP地址、請求時間等,需將此類數(shù)據(jù)化為數(shù)字化結果。如來自內網(wǎng)地址記錄為0.外網(wǎng)地址為1.不能獲取地址為-1;或更精確地,與當前網(wǎng)絡地址的接近程度來標記IP地址的數(shù)字化結果等。
卷積過濾器使用3×3.步長為1的矩陣與對應數(shù)據(jù)相乘,獲取卷積后的結果。當預期值與實際值差值大于預期時,調整過濾器并進行進一步的計算。接下來使用該算法對網(wǎng)絡掃描結果進行評估,獲取實際評估值。
3 實驗結果及分析
采用來自校園網(wǎng)絡某月的掃描結果,對網(wǎng)絡態(tài)勢進行評估。掃描結果包括日期、時間、訪問者IP地址、訪問安全級別、訪問類型等內容。對非定量信息進行分類標記,最終得出評價結果,如圖2所示。
其中,縱軸表示評價值,橫軸為依時間順序選擇的時間點,評價值在0.5附近為平均值。通常情況下,向上的高點為修復或拒絕某特定訪問后的時段,而向下的低點為掃描發(fā)現(xiàn)攻擊時段。
使用深度學習方法可以處理網(wǎng)絡多層或多步攻擊情況,因此,在訓練較好的深度學習方法中,能夠對整體態(tài)勢有更為精確的評估。在此基礎上,將進一步研究不依賴于掃描結果,直接從訪問數(shù)據(jù)中進行分析的方法,并且希望能夠根據(jù)預測對網(wǎng)絡資源進行調度,
4 結束語
訓練深度學習網(wǎng)絡,依賴校園網(wǎng)掃描到的風險數(shù)據(jù),對網(wǎng)絡風險和攻擊進行特征提取和分類,對網(wǎng)絡當前安全態(tài)勢進行評估,從而進一步實現(xiàn)風險預測和網(wǎng)絡資源調度。