(國網(wǎng)思極網(wǎng)安科技(北京)有限公司,北京 102211)
在信息智能化不斷發(fā)展的時代,許多國家接連發(fā)生了大型網(wǎng)絡(luò)攻擊事件,各大型企業(yè)產(chǎn)業(yè)經(jīng)濟遭到史無前例的重創(chuàng)。大量案例表明,智能網(wǎng)絡(luò)時代給企業(yè)的安全帶來了全新的挑戰(zhàn)[1]。經(jīng)過實例分析,黑客對物聯(lián)網(wǎng)等重要設(shè)施的攻擊,通常都是從終端發(fā)起,攻擊類型復雜、終端防護受自身條件和運行環(huán)境的限制,以及復雜多源的數(shù)據(jù)類型為后續(xù)數(shù)據(jù)處理給網(wǎng)絡(luò)安全防范工作帶來了極大的困難[2]。因此,如何提高網(wǎng)絡(luò)安全風險防范效率,減少數(shù)據(jù)處理的時間開銷,提高處理速度,是后續(xù)研究工作中需要解決的主要問題[3]。
針對上述存在的問題,許多學者發(fā)表了自己研究的技術(shù)方案。文獻[4]公開了一種網(wǎng)絡(luò)流量數(shù)據(jù)抽樣技術(shù),雖然在一定程度上提高了數(shù)據(jù)處理效率,但是只能處理高頻率的流量數(shù)據(jù),而忽略了低頻率的流量數(shù)據(jù),存在處理不平衡問題。文獻[5]提出基于交叉驗證優(yōu)化貝葉斯分類法,對網(wǎng)絡(luò)安全檢測數(shù)據(jù)進行有效地分類處理,但是隨著交叉數(shù)目的不斷增加,數(shù)據(jù)預(yù)處理過程耗時會逐漸增加,導致效率大打折扣。
針對上述技術(shù)存在的不足,本研究設(shè)計出新型的智能化網(wǎng)絡(luò)安全防攻擊檢測平臺,全面分析網(wǎng)絡(luò)風險因素,以提高對網(wǎng)絡(luò)風險因素的感知、預(yù)測和防范能力。關(guān)于網(wǎng)絡(luò)安全防攻擊檢測平臺總體框架圖如圖1所示。
圖1 網(wǎng)絡(luò)安全防攻擊檢測平臺總體框架圖
從圖1可以看出,網(wǎng)絡(luò)安全檢測平臺主要是通過物聯(lián)網(wǎng)和企業(yè)的業(yè)務(wù)系統(tǒng)中獲取數(shù)據(jù),利用網(wǎng)絡(luò)采集探針在關(guān)鍵網(wǎng)絡(luò)節(jié)點進行實時檢測,并將采集得到的不同結(jié)構(gòu)的數(shù)據(jù)進行合理的存儲,為數(shù)據(jù)抽取模型的特征提取提供足夠的樣本信息。在分析層中進行合理的數(shù)據(jù)分析,并將分析結(jié)果傳達至上層管理,根據(jù)決策者、管理人員和運維人員不同的需求和關(guān)注重點,通過可視化分析技術(shù),挖掘出惡意軟件或流量數(shù)據(jù)隱藏的數(shù)據(jù)信息,并進行多種態(tài)勢的多維度展示,并且支持預(yù)警通告和應(yīng)急處置[6-7]。
為了解決復雜多源的網(wǎng)絡(luò)安全檢測數(shù)據(jù)處理工作復雜的問題,本研究構(gòu)建數(shù)據(jù)抽取模型和數(shù)據(jù)分析模型兩種技術(shù)來解決該問題,下面將分別闡述。
由于網(wǎng)絡(luò)安全檢測數(shù)據(jù)類型多樣,且不斷地會有例如惡意軟件、漏洞以及補丁等新的數(shù)據(jù)出現(xiàn),因此基于分詞的方法識別率較低。針對上述問題,本研究基于卷積神經(jīng)網(wǎng)絡(luò)(CNN)模型結(jié)合特征模板構(gòu)建出一種新型的網(wǎng)絡(luò)安全數(shù)據(jù)抽取模型,如圖2所示。
圖2 網(wǎng)絡(luò)安全檢測數(shù)據(jù)抽取模型
整個構(gòu)建過程首先要根據(jù)網(wǎng)絡(luò)安全防攻擊檢測數(shù)據(jù)庫手工生成少量特征模板,并提取局部特征向量,然后根據(jù)把網(wǎng)絡(luò)安全檢測數(shù)據(jù)特征向量進行語句轉(zhuǎn)換得到初始局部向量序列;其次,通過CNN算法對每個網(wǎng)絡(luò)安全檢測數(shù)據(jù)樣本進行卷積和聚合,并提取其特征信息;最后,將語義特征和局部特征相結(jié)合經(jīng)過條件隨機場(CRF)算法進行序列標記,并抽取最優(yōu)的特征向量序列。下面將分別闡述該過程中各部分的具體內(nèi)容。
2.1.1 特征模板
特征模板是根據(jù)選取大量的數(shù)據(jù)特征并建立特定的模板,在數(shù)據(jù)抽取模型中便于之后識別數(shù)據(jù)的特征提取。特征模板的建立取決于“模板窗口”,窗口過大則會出現(xiàn)過擬合現(xiàn)象,窗口過小則提取特征向量十分有限,造成網(wǎng)絡(luò)安全檢測數(shù)據(jù)模型的識別效率較低,因此設(shè)計特征模板的模板窗口大小要十分合理。關(guān)于特征模板的構(gòu)建過程如下:
首先設(shè)網(wǎng)絡(luò)安全檢測數(shù)據(jù)特征一系列為w[-1,0],w[0,0],w[1,0],…,w[i,j]。其中,w表示網(wǎng)絡(luò)安全檢測數(shù)據(jù)信息字符,括號內(nèi)的第一個數(shù)字i表示相對w的位置,第二個數(shù)字j表示特征列數(shù)。通過對特征函數(shù)f定義為:
(1)
其中:y表示當前標記的網(wǎng)絡(luò)安全檢測數(shù)據(jù)信息字段;k表示特征函數(shù)數(shù)目,k通常取自然數(shù);x表示當前字段位置。在通常情況下,特征函數(shù)f得出的數(shù)值是二值函數(shù),式(1)的含義是取在x位置每個特征函數(shù)的總和[8-9]。設(shè)賦予特征函數(shù)的權(quán)重向量Z為:
Z=(z1,z2,…,zk)T
(2)
之后,將所有當前標記的網(wǎng)絡(luò)安全檢測數(shù)據(jù)特征信息轉(zhuǎn)換為特征向量,得到:
F(y,w)=(f1(y,w),f2(y,w),…,fk(y,w))T
(3)
其中:F表示所有特征向量的總序列。
2.1.2 CNN算法
為了有效的提取網(wǎng)絡(luò)安全檢測數(shù)據(jù)字符級特征,本研究采用CNN算法模型處理那些細粒度高的字符特征。CNN算法能夠自適應(yīng)地從具體到抽象地特征信息,并且可以擁有不同結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò)框架,靈活性很高[10-11]。關(guān)于基于CNN的特征提取流程圖如圖3所示。
圖3 基于CNN的字符特征提取流程圖
如圖3所示,在輸入網(wǎng)絡(luò)安全檢測數(shù)據(jù)字符向量后,要先設(shè)置相關(guān)參數(shù)、損失函數(shù)和優(yōu)化器。相關(guān)參數(shù)依然是由迭代次數(shù)、批處理以及學習速率組成,為了減少內(nèi)存消耗,通過添加神經(jīng)網(wǎng)絡(luò)壓縮加速技術(shù)對內(nèi)存進行優(yōu)化。通過將模型測試和優(yōu)化交替判斷處理,可以使訓練時間更快[12-13]。在構(gòu)建好神經(jīng)網(wǎng)絡(luò)模型之后,將分類交叉熵函數(shù)作為損失函數(shù)進行模型測試。
在整個特征提取過程中構(gòu)建卷積神經(jīng)網(wǎng)絡(luò)模型是最重要的步驟,其主要由卷積層、池化層、全連接層和輸出層四部分組成:
卷積層對于網(wǎng)絡(luò)安全檢測數(shù)據(jù)來說相當于一種濾波器,與濾波器所不同的是卷積是通過卷積核的不同對輸入進行訓練處理,提高了效率,極大地減少了參數(shù)量;池化是利用卷積核來減少數(shù)據(jù)的參數(shù)個數(shù)并依然能進行特征提取的過程。池化操作雖然丟失了一些信息,但保持了網(wǎng)絡(luò)安全檢測數(shù)據(jù)的平移和擴展的不變性;全連接層就是將每一層的神經(jīng)元都要與下一層所有神經(jīng)元相連,也是為了將池化后的網(wǎng)絡(luò)安全檢測數(shù)據(jù)特征信息進行學習權(quán)重系數(shù)并分類[14-16]。本研究通過固定輸入網(wǎng)絡(luò)安全檢測數(shù)據(jù)大小以及全連接層系數(shù)矩陣,為輸出層提供更加突出的特征信息。
2.1.3 CRF算法
由于存在不能獨立的抽取網(wǎng)絡(luò)安全檢測數(shù)據(jù)特征向量的問題,因此本探究通過鏈式CRF算法計算整體上特征向量標簽序列的概率并得出損失值。首先,輸入網(wǎng)絡(luò)安全檢測數(shù)據(jù)標簽特征序列Y為:
X=(x1,x2,…xn)
(4)
Y=(y1,y2,…yn)
(5)
其中:X表示網(wǎng)絡(luò)安全檢測數(shù)據(jù)特征序列,Y是X的標簽序列,括號中每個字母代表著一個特征向量。之后計算每個輸入特征向量在t時刻的標簽權(quán)重M:
(6)
其中:M1和M2分別表示經(jīng)過特征模板和CNN算法得出的權(quán)重值;Z和F分別表示權(quán)重向量和特征向量的總序列;Wc和Oc分別表示CNN算法中的權(quán)重矩陣和輸出層輸出結(jié)果[17]。
計算在輸入序列X的情況下產(chǎn)生標簽序列Y的概率P的表達式為:
(7)
本研究采用對數(shù)最大似然來表示損失函數(shù),最終得到:
(8)
根據(jù)公式(8)損失函數(shù)值輸出最優(yōu)標簽的網(wǎng)絡(luò)安全檢測數(shù)據(jù),得到結(jié)果H為:
H=argmaxM(x,y)
(9)
在網(wǎng)絡(luò)安全防攻擊檢測中,通過在數(shù)據(jù)抽取模型中得到網(wǎng)絡(luò)安全的特征向量,本研究采用邏輯回歸對攻擊檢測中的網(wǎng)絡(luò)安全數(shù)據(jù)進行分析,應(yīng)用二元分類解決數(shù)據(jù)難處理問題[18-19]。本研究中網(wǎng)絡(luò)安全數(shù)據(jù)分析通過邏輯回歸模型來實現(xiàn),下面說明具體構(gòu)建過程:
設(shè)網(wǎng)絡(luò)安全檢測數(shù)據(jù)特征序列為A=[a1,a2,…,an]T,與其相對應(yīng)的類集合B=[b1,b2,…,bn],設(shè)C是兩個預(yù)定類集合,通過Logit函數(shù)將特征向量a映射到兩個預(yù)定類集合中的某一個得到二分類的邏輯回歸模型[20]:
(10)
λ=k0+k1a1+k2a2+…knan
(11)
其中:k為網(wǎng)絡(luò)安全檢測數(shù)據(jù)特征序列的權(quán)重系數(shù),P表示特征向量a的攻擊概率。
由于在企業(yè)網(wǎng)絡(luò)安全防攻擊檢測中對不同惡意軟件分析的要求,因此邏輯回歸模型得到具有概率意義的結(jié)果將更好。邏輯回歸模型在處理每個網(wǎng)絡(luò)安全檢測數(shù)據(jù)樣本二元分類結(jié)果,對應(yīng)出的一個處于0~1之間的概率值P,可以表明分類結(jié)果的置信度,即概率P可以作為發(fā)生網(wǎng)絡(luò)安全風險可能大小的衡量標準[21]。但在實際應(yīng)用中,網(wǎng)絡(luò)安全檢測數(shù)據(jù)樣本二元分類的結(jié)果會存在一定的偏差,即樣本多數(shù)類和少數(shù)類的問題。
針對這種問題,本研究采用置信傳播技術(shù)對邏輯回歸模型進行改進,增添了網(wǎng)絡(luò)安全防攻擊獨立特征條件概率,每當新的數(shù)據(jù)樣本被抽取時便可快速提取特征用于邏輯回歸模型進行分析,進一步獲取攻擊的置信度。而在算法模型改進的層面上,通常的方法是使算法在不平衡分類問題上表現(xiàn)更好。其主要方法是通過算法對決策面進行修正,使其偏向少數(shù)類,從而提高少數(shù)類的識別率,比如貝葉斯網(wǎng)絡(luò)模型改進的概率密度算法。
置信傳播通常是計算置信度與真實值比較來判斷網(wǎng)絡(luò)安全檢測數(shù)據(jù)是否判定是否處于網(wǎng)絡(luò)安全告警狀態(tài)。關(guān)于邏輯回歸模型中置信傳播過程如圖4所示。
圖4 置信傳播流程圖
在網(wǎng)絡(luò)安全防攻擊檢測過程中,條件概率由狀態(tài)可以分為攻擊屬性和良性屬性。關(guān)于置信度BEL(v)的計算中需要貝葉斯網(wǎng)絡(luò)中每個節(jié)點的條件概率表,其中覆蓋了每個可能狀態(tài)的邊界概率P2。通常情況下條件概率表中攻擊屬性和良性屬性的條件概率相同,這也是理想情況下網(wǎng)絡(luò)安全檢測數(shù)據(jù)樣本二元平衡分類的結(jié)果。在攻擊屬性下的置信度BEL(v)的計算過程為:
(12)
式(12)表示每個網(wǎng)絡(luò)安全檢測數(shù)據(jù)樣本攻擊條件概率之積即為攻擊節(jié)點的置信度,良性屬性下同理。
綜上所述,整個網(wǎng)絡(luò)安全分析方法先從數(shù)據(jù)抽取模型中得到所有數(shù)據(jù)樣本,優(yōu)點在于傳遞給置信傳播模型前即可確定未知樣本的惡意攻擊概率。經(jīng)過邏輯回歸模型分析出該樣本特征為攻擊屬性或良性屬性,大幅度提高了效率。置信傳播過程中使用惡意攻擊的所有條件概率的特征屬性計算置信度BEL(v),這種方法能夠使輸出的結(jié)果不受獨立條件概率的影響,提高對樣本分析的精準度[22-23]。
為了驗證本研究網(wǎng)絡(luò)安全防攻擊檢測平臺的可靠性和實用性,下面將進行實驗。
關(guān)于實驗環(huán)境可分為硬件環(huán)境和軟件環(huán)境,其中硬件環(huán)境為機臺為CentOS6.8(x64)操作系統(tǒng),Intel(R) Xeon(R) CPU E5-2640 v2、2.00 GHz主頻、千兆網(wǎng)卡、8核16 G內(nèi)存、512 GB硬盤。軟件的操作系統(tǒng)為Windows10,JDK5.0。
關(guān)于實驗設(shè)置本研究采用一主機6個服務(wù)器節(jié)點來構(gòu)建網(wǎng)絡(luò)安全防攻擊檢測系統(tǒng),在服務(wù)器節(jié)點網(wǎng)絡(luò)流量數(shù)據(jù)傳輸末端設(shè)置用戶服務(wù)器,評估用戶空間惡意軟件和內(nèi)核級Rootkit攻擊能力。關(guān)于網(wǎng)絡(luò)安全防攻擊檢測過程中的惡意軟件部分類型如表1所示。
表1 網(wǎng)絡(luò)安全防攻擊檢測過程中的惡意軟件
在上述的模擬仿真實驗中,下面對本研究的系統(tǒng)進行驗證,將帶有本研究置信傳播(BP)模型和未帶有BP模型的邏輯回歸分析方法在網(wǎng)絡(luò)安全檢測中進行數(shù)據(jù)分析,采用的數(shù)據(jù)從表1中的網(wǎng)絡(luò)安全檢測惡意軟件數(shù)據(jù)隨機選取一種,評估攻擊概率與真實值在0~2 GB數(shù)據(jù)量下的對比,通過MATLAB軟件進行仿真,得出曲線圖如圖5所示。
圖5 對比曲線圖
從圖5可以看出,在不同網(wǎng)絡(luò)安全檢測數(shù)據(jù)量環(huán)境下,采用BP模型得到的攻擊概率P與真實值相差較小且趨于穩(wěn)定,不采用BP模型得到的攻擊概率P與真實值相差較大且波動幅度明顯。從該實驗結(jié)果表明本研究采用置信傳播技術(shù)改進邏輯回歸模型能有效提高網(wǎng)絡(luò)安全防攻擊檢測數(shù)據(jù)分析的精準度。
為了驗證本研究所設(shè)計的數(shù)據(jù)抽取模型的優(yōu)勢,本研究以文獻[5]中基于交叉驗證優(yōu)化貝葉斯分類法作為對比,采用不同方法計算0~2TB網(wǎng)絡(luò)安全檢測數(shù)據(jù)量范圍內(nèi)損失值,通過MATLAB軟件系統(tǒng)進行仿真對比,對比結(jié)果圖如圖6所示。
圖6 損失值對比結(jié)果圖
從圖6可以看出,本研究所采用的數(shù)據(jù)抽取模型方法比交叉驗證優(yōu)化貝葉斯分類法的損失值更低,網(wǎng)絡(luò)安全檢測數(shù)據(jù)抽取性更加高效,這充分表明本研究的數(shù)據(jù)抽取模型更加適用。
本研究設(shè)計出新型的智能化網(wǎng)絡(luò)安全防攻擊檢測平臺,構(gòu)建數(shù)據(jù)抽取模型提高網(wǎng)絡(luò)安全檢測數(shù)據(jù)特征抽取的精準度。通過分析存在的潛在威脅和惡意軟件,評估網(wǎng)絡(luò)受到攻擊的概率,最后通過實驗驗證了本研究的網(wǎng)絡(luò)安全防攻擊檢測平臺的適用性和可靠性。實驗結(jié)果表明,本研究的數(shù)據(jù)抽取模型能夠產(chǎn)生最優(yōu)估計值,而采用基于置信傳播改進邏輯回歸模型處理數(shù)據(jù)更接近真實值。隨著技術(shù)的不斷發(fā)展,對于智能化網(wǎng)絡(luò)安全檢測平臺采集精準度和全面性要求會更高,本研究仍舊存在諸多不足,有待進一步的研究。