魏楓林,王 凱
(吉林大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,吉林 長(zhǎng)春 130012)
現(xiàn)代通信、網(wǎng)絡(luò)以及計(jì)算機(jī)等相關(guān)技術(shù)的飛速發(fā)展,信息技術(shù)的應(yīng)用領(lǐng)域也不斷擴(kuò)大。網(wǎng)絡(luò)實(shí)驗(yàn)室是一種范圍較大且復(fù)雜度較高的實(shí)時(shí)系統(tǒng),主要涉及計(jì)算機(jī)科學(xué)以及控制理論等多個(gè)不同的學(xué)科。雖然國(guó)內(nèi)的網(wǎng)絡(luò)實(shí)驗(yàn)室起步比較晚,但是在相關(guān)領(lǐng)域?qū)<业闹匾曄?網(wǎng)絡(luò)實(shí)驗(yàn)室的研究取得了較好的成績(jī),尤其是網(wǎng)絡(luò)安全方面[1,2]。現(xiàn)階段,國(guó)內(nèi)相關(guān)專家針對(duì)網(wǎng)絡(luò)攻擊數(shù)據(jù)識(shí)別方面的內(nèi)容也進(jìn)行了大量研究,例如張超群等人[3]將人工標(biāo)注網(wǎng)絡(luò)日志數(shù)據(jù)作為研究對(duì)象,對(duì)LSTM網(wǎng)絡(luò)分類模型進(jìn)行訓(xùn)練,將經(jīng)過轉(zhuǎn)化處理的數(shù)據(jù)輸入到LSTM網(wǎng)絡(luò)中進(jìn)行分類,最終實(shí)現(xiàn)網(wǎng)絡(luò)攻擊識(shí)別。王小英等人[4]引入關(guān)聯(lián)規(guī)則算法組建隱蔽目標(biāo)識(shí)別模型,同時(shí)組建目標(biāo)識(shí)別總體框架,通過APT目標(biāo)的相關(guān)屬性對(duì)各個(gè)網(wǎng)絡(luò)威脅之間的關(guān)聯(lián)規(guī)則進(jìn)行計(jì)算,提取目標(biāo)檔案數(shù)據(jù),最終根據(jù)可信度實(shí)現(xiàn)網(wǎng)絡(luò)威脅隱蔽目標(biāo)識(shí)別。
基于上述兩種已有方法的實(shí)現(xiàn)過程,提出一種網(wǎng)絡(luò)實(shí)驗(yàn)室虛假數(shù)據(jù)注入攻擊深度識(shí)別方法。經(jīng)實(shí)驗(yàn)測(cè)試可知,所提方法可以全面降低計(jì)算開銷、存儲(chǔ)開銷以及能量消耗,有效提升識(shí)別率。
由于實(shí)驗(yàn)室網(wǎng)絡(luò)中包含大量數(shù)據(jù),對(duì)網(wǎng)絡(luò)實(shí)驗(yàn)室虛擬數(shù)據(jù)注入攻擊識(shí)別會(huì)耗費(fèi)大量的時(shí)間,同時(shí)計(jì)算過程也十分復(fù)雜,因此需要優(yōu)先對(duì)虛假數(shù)據(jù)注入攻擊進(jìn)行預(yù)處理,有效降低識(shí)別時(shí)間。
通過小波閾值去噪方法[5,6]處理虛假數(shù)據(jù)注入攻擊行為,詳細(xì)的操作步驟如下所示:
1)優(yōu)先確定網(wǎng)絡(luò)實(shí)驗(yàn)室虛假數(shù)據(jù)的分解層數(shù),具體的計(jì)算式為
c=lgl-5
(1)
式中,c代表網(wǎng)絡(luò)實(shí)驗(yàn)虛假數(shù)據(jù)的分解層數(shù);l代表虛假數(shù)據(jù)的總數(shù)。
利用式(2)給出虛假數(shù)據(jù)的信噪比計(jì)算式
(2)
式中,X代表信噪比;a2(i)代表含有噪聲的信號(hào);b2(i)代表原始信號(hào)。
虛假數(shù)據(jù)的均方根誤差可以表示為式(3)的形式
(3)
式中,J代表虛假數(shù)據(jù)的均方根誤差;n代表原始虛假數(shù)據(jù)。
2)根據(jù)選定的閾值,可以對(duì)各個(gè)尺度的虛假數(shù)據(jù)對(duì)應(yīng)的分解系數(shù)進(jìn)行處理。
3)在識(shí)別網(wǎng)絡(luò)實(shí)驗(yàn)室虛假數(shù)據(jù)注入攻擊過程中,需要確保識(shí)別結(jié)果的準(zhǔn)確性,同時(shí)還需要對(duì)欺騙性的數(shù)據(jù)進(jìn)行分析。在上述基礎(chǔ)上,對(duì)虛假數(shù)據(jù)進(jìn)行重構(gòu),實(shí)現(xiàn)網(wǎng)絡(luò)實(shí)驗(yàn)室虛假數(shù)據(jù)注入攻擊預(yù)處理[7,8]。
由于新型虛假數(shù)據(jù)注入攻擊具有很強(qiáng)的欺騙性,攻擊識(shí)別的首要任務(wù)是確保識(shí)別精度。對(duì)于網(wǎng)絡(luò)實(shí)驗(yàn)室數(shù)據(jù)而言,需要對(duì)虛假數(shù)據(jù)的輸入攻擊機(jī)理進(jìn)行分析,將數(shù)據(jù)樣本劃分為正常實(shí)驗(yàn)室數(shù)據(jù)和受到攻擊的網(wǎng)絡(luò)實(shí)驗(yàn)室數(shù)據(jù),進(jìn)而組建含有標(biāo)簽的正負(fù)數(shù)據(jù)樣本,采用機(jī)器學(xué)習(xí)的分類方法對(duì)識(shí)別模型進(jìn)行訓(xùn)練。同時(shí)根據(jù)挖掘數(shù)據(jù)之間的關(guān)系,可以全面識(shí)別結(jié)果的準(zhǔn)確性以及穩(wěn)定性。其中,機(jī)器學(xué)習(xí)的攻擊識(shí)別機(jī)理如下所示:
1)如果給定含有攻擊前后的正負(fù)的網(wǎng)絡(luò)實(shí)驗(yàn)室虛假數(shù)據(jù),則有
S={si},i={1,2,…,n}
(4)
(5)
網(wǎng)絡(luò)實(shí)驗(yàn)室虛假數(shù)據(jù)注入攻擊的識(shí)別問題可以表示為以下形式
(6)
利用圖1給出基于機(jī)器學(xué)習(xí)的虛假數(shù)據(jù)注入攻擊深度識(shí)別流程圖:
圖1 虛假數(shù)據(jù)注入攻擊深度識(shí)別流程圖
為了確保識(shí)別結(jié)果的精度[9,10],在識(shí)別特征數(shù)據(jù)集的基礎(chǔ)上,采用機(jī)器學(xué)習(xí)對(duì)二分類問題進(jìn)行處理,同時(shí)通過監(jiān)督學(xué)習(xí)的方式,將決策樹算法和梯度提升框架進(jìn)行迭代組合。決策樹是一種有效的機(jī)器學(xué)習(xí)模型,需要將相同的虛假數(shù)據(jù)劃分至相同的節(jié)點(diǎn),采用遞歸學(xué)習(xí)的方式對(duì)網(wǎng)絡(luò)實(shí)驗(yàn)數(shù)據(jù)虛假數(shù)據(jù)進(jìn)行分割,同時(shí)在每次劃分的過程中獲取最優(yōu)分割點(diǎn),不斷降低下一層分割的誤差。同時(shí)可以被應(yīng)用于處理大部分的分類回歸任務(wù)中。
設(shè)定現(xiàn)階段含有n個(gè)網(wǎng)絡(luò)實(shí)驗(yàn)室數(shù)據(jù)樣本,則構(gòu)建的虛假數(shù)據(jù)注入攻擊數(shù)據(jù)集G可以表示為式(7)的形式
G={(x1,x2),(x2,x2),…,(xn,xn)}
(7)
式中,(xn,xn)代表攻擊數(shù)據(jù)集的子集。
通過式(8)計(jì)算損失函數(shù)
(8)
式中,S0(x)代表損失函數(shù);H(xn,xn)代表錯(cuò)誤樣本出現(xiàn)的概率。
當(dāng)?shù)玫綋p失函數(shù)以及初始化基學(xué)習(xí)器后,需要不斷進(jìn)行迭代,模型的每一次提升是在上一代模型的損失函數(shù)的基礎(chǔ)上降低殘差取值,組建精度更高的分類器,直至滿足迭代需求,詳細(xì)的操作步驟如下所示:
1)設(shè)定迭代次數(shù)為x,則對(duì)應(yīng)極小值方向的殘差為
(9)
式中,cim代表殘差;(xi,yi)代表數(shù)據(jù)子集的坐標(biāo)位置。
2)將式(9)獲取的殘差設(shè)定為輸入,獲取決策樹葉節(jié)點(diǎn)區(qū)域Qm
(10)
3)求解損失函數(shù)在梯度下降方向的最優(yōu)步長(zhǎng),同時(shí)將損失函數(shù)進(jìn)行極小值化處理。
4)組建分類精度更高的弱分類器模型[11,12],同時(shí)設(shè)定學(xué)習(xí)率的取值范圍,有效避免模型出現(xiàn)過分?jǐn)M合的情況。
5)迭代結(jié)束,通過多個(gè)高準(zhǔn)確性的弱分類器組合獲取最終梯度提升決策樹模型Fbest(i),具體的表達(dá)形式為
(11)
式中,φ(i,j)代表弱分類器總數(shù)。
當(dāng)完成對(duì)模型的訓(xùn)練之后,可以計(jì)算網(wǎng)絡(luò)實(shí)驗(yàn)室受到攻擊和未受到攻擊的概率,如式(12)所示
(12)
式中,g+(i,j)和g-(i,j)分別代表網(wǎng)絡(luò)實(shí)驗(yàn)室受到攻擊和未受到攻擊的概率。
通過以上分析,通過決策樹算法和梯度提升框架構(gòu)建虛假數(shù)據(jù)注入攻擊深度識(shí)別模型S(i,j),如式(13)所示
(13)
果蠅優(yōu)化算法[13,14]是一種獲取全局最優(yōu)的方法,果蠅可以更好地通過嗅覺器官感受空氣中的不同氣味,通過氣味獲取事物所在的位置,同時(shí)朝著該方向飛行。
通過果蠅對(duì)食物進(jìn)行搜索,以下給出果蠅算法的詳細(xì)操作步驟:
1)設(shè)定種群規(guī)模,同時(shí)還需要設(shè)定最大迭代次數(shù),對(duì)各個(gè)果蠅個(gè)體位置進(jìn)行初始化處理。
2)各個(gè)果蠅個(gè)體進(jìn)行食物搜索,將果蠅和食物之間的距離稱為搜索距離,詳細(xì)的計(jì)算式為
(14)
式中,di和ei代表果蠅個(gè)體的坐標(biāo)位置;D-axis和E-axis分別代表不同果蠅個(gè)體的搜索長(zhǎng)度;RandomValue代表搜索距離。
3)由于無法直接獲取事物的準(zhǔn)確坐標(biāo)位置,需要計(jì)算目標(biāo)和原始兩者之間的距離,同時(shí)計(jì)算最新位置的味道濃度判定值pi,具體計(jì)算式為
(15)
式中,Ddist代表距離倒數(shù)。
4)通過步驟3)獲取的味道濃度判定值求解不同果蠅個(gè)體的味道濃度值。
5)獲取群體中味道濃度最佳的個(gè)體。
6)記錄并保存最佳味道濃度值,同時(shí)確定果蠅最終飛去的方向。
7)進(jìn)行迭代尋優(yōu),同時(shí)重復(fù)以上操作步驟,直至滿足設(shè)定需求;反之,則跳轉(zhuǎn)至步驟6)。
由于基本果蠅算法的收斂速度比較慢,且收斂精度比較低,為此,需要對(duì)其進(jìn)行改進(jìn),提出一種自適應(yīng)混沌果蠅優(yōu)化算法,詳細(xì)的操作步驟如圖2所示。
圖2 自適應(yīng)混沌果蠅優(yōu)化算法操作流程圖
1)對(duì)算法中的各個(gè)參數(shù)進(jìn)行設(shè)定,同時(shí)群體中不同果蠅個(gè)體位置進(jìn)行初始化處理,則果蠅的初始位置如式(16)所示
c(i,j)=rand(up)
(16)
式中,c(i,j)代表果蠅的初始坐標(biāo)位置;rand(up)代表果蠅的坐標(biāo)位置范圍。
2)給定群體中各個(gè)果蠅的飛行方位以及具體間距,則果蠅個(gè)體的最新位置可以表示為式(17)的形式
Xin=c(i,j)*rand(up)*w
(17)
式中,w代表果蠅個(gè)體的權(quán)重值。
3)計(jì)算不同群體中不同果蠅個(gè)體的味道濃度。
4)選取群體中最佳味道濃度個(gè)體的果蠅個(gè)體,同時(shí)保存并記錄果蠅的濃度取值以及對(duì)應(yīng)的坐標(biāo)位置,如式(18)所示
pbest=min(pi)
(18)
式中,pbest代表最佳果蠅味道濃度。
5)持續(xù)保持最佳濃度值以及果蠅的坐標(biāo)位置,果蠅群體通過視覺搜索向目標(biāo)位置飛行。
6)將多個(gè)種群的最優(yōu)解進(jìn)行對(duì)比,進(jìn)而獲取此次迭代的最優(yōu)解,同時(shí)和前一次的最優(yōu)解進(jìn)行對(duì)比,最終得到全局最優(yōu)解,實(shí)現(xiàn)虛假數(shù)據(jù)注入攻擊深度識(shí)別模型參數(shù)優(yōu)化處理。
當(dāng)完成識(shí)別模型的參數(shù)優(yōu)化后,進(jìn)行虛假數(shù)據(jù)注入攻擊深度識(shí)別,詳細(xì)的操作步驟為:
1)將經(jīng)過預(yù)處理的虛假數(shù)據(jù)注入攻擊輸入到模型中,提取虛假數(shù)據(jù)注入攻擊的主要特征,同時(shí)進(jìn)行映射處理。
2)將經(jīng)過模型處理的結(jié)果輸入到池化層中,同時(shí)將數(shù)據(jù)劃分為多個(gè)不同重復(fù)的區(qū)域,將各個(gè)區(qū)域的虛假數(shù)據(jù)進(jìn)行聚合[15]。
3)重復(fù)上述操作步驟,同時(shí)將步驟2)中獲取的聚合結(jié)果輸入到網(wǎng)絡(luò)結(jié)構(gòu)中,通過虛擬數(shù)據(jù)的更新門以及重置門得到全新的虛假數(shù)據(jù)注入攻擊訓(xùn)練數(shù)據(jù)集。
4)根據(jù)輸出的識(shí)別結(jié)果,完成虛假數(shù)據(jù)注入攻擊深度識(shí)別。
為驗(yàn)證所提網(wǎng)絡(luò)實(shí)驗(yàn)室虛假數(shù)據(jù)注入攻擊深度識(shí)別方法的有效性,設(shè)計(jì)仿真實(shí)現(xiàn)方法的性能測(cè)試。
1)存儲(chǔ)開銷測(cè)試
在網(wǎng)絡(luò)實(shí)驗(yàn)室運(yùn)行階段,會(huì)進(jìn)行數(shù)據(jù)存儲(chǔ),以下實(shí)驗(yàn)測(cè)試主要分析不同方法的節(jié)點(diǎn)存儲(chǔ)開銷,詳細(xì)的實(shí)驗(yàn)測(cè)試結(jié)果如表1所示。
表1 不同方法的存儲(chǔ)開銷對(duì)比結(jié)果
由表1中的實(shí)驗(yàn)數(shù)據(jù)可知,相比另外兩種方法,所提方法的存儲(chǔ)開銷明顯更低一些。這主要是因?yàn)樗岱椒▽?duì)網(wǎng)絡(luò)實(shí)驗(yàn)室虛假數(shù)據(jù)注入攻擊進(jìn)行預(yù)處理,可以有效濾除數(shù)據(jù)中的噪聲,同時(shí)簡(jiǎn)化操作流程,促使所提方法的存儲(chǔ)開銷得到有效降低。
2)計(jì)算開銷測(cè)試
由于不同方法的操作步驟完全不同,導(dǎo)致方法的計(jì)算開銷也存在十分明顯的差異,以下實(shí)驗(yàn)測(cè)試進(jìn)一步對(duì)比三種不同方法的計(jì)算開銷,詳細(xì)的實(shí)驗(yàn)測(cè)試結(jié)果如圖3所示:
圖3 不同方法的計(jì)算開銷測(cè)試結(jié)果對(duì)比
分析圖3中的實(shí)驗(yàn)數(shù)據(jù)可知,各個(gè)方法的計(jì)算開銷會(huì)隨著測(cè)試樣本的增加而增加。其中,所提方法的計(jì)算開銷在三種方法中為最低;文獻(xiàn)[3]方法的計(jì)算開銷次之;而文獻(xiàn)[4]方法的計(jì)算開銷最高。由此可見,所提方法可以以更快的速度完成網(wǎng)絡(luò)實(shí)驗(yàn)室虛假數(shù)據(jù)注入攻擊深度識(shí)別。
3)能量消耗測(cè)試
分析在不同虛假數(shù)據(jù)包數(shù)量持續(xù)增加情況下,三種方法的能量消耗情況,詳細(xì)的實(shí)驗(yàn)測(cè)試結(jié)果如圖4所示:
圖4 不同方法的能量消耗情況測(cè)試結(jié)果對(duì)比
分析圖4中的實(shí)驗(yàn)數(shù)據(jù)可知,當(dāng)虛假數(shù)據(jù)包數(shù)量增加,各個(gè)方法的能量消耗也開始持續(xù)增加。但是相比另外兩種方法,所提方法的能量消耗明顯更低一些。
4)虛假數(shù)據(jù)注入攻擊深度識(shí)別率測(cè)試
為了進(jìn)一步驗(yàn)證所提方法的優(yōu)越性,以下實(shí)驗(yàn)測(cè)試對(duì)比三種不同方法的虛假數(shù)據(jù)注入攻擊深度識(shí)別率,如圖5所示:
圖5 不同方法的虛假數(shù)據(jù)注入攻擊深度識(shí)別率測(cè)試結(jié)果對(duì)比
分析圖5中的實(shí)驗(yàn)數(shù)據(jù)可知,所提方法可以以更大的率實(shí)現(xiàn)虛假數(shù)據(jù)注入攻擊深度識(shí)別,全面驗(yàn)證了所提方法的優(yōu)越性。
針對(duì)傳統(tǒng)實(shí)驗(yàn)室網(wǎng)絡(luò)攻擊識(shí)別方法存在的一系列問題,設(shè)計(jì)并提出一種網(wǎng)絡(luò)實(shí)驗(yàn)室虛假數(shù)據(jù)注入攻擊深度識(shí)別方法。經(jīng)實(shí)驗(yàn)測(cè)試證明,所提方法可以有效降低計(jì)算開銷、存儲(chǔ)開銷和能量消耗,提升識(shí)別率,獲取更加滿意的識(shí)別結(jié)果。
在現(xiàn)有方法的基礎(chǔ)上,后續(xù)將進(jìn)一步對(duì)其進(jìn)行完善,全面完善所提方法的各方面性能。