楊宏宇,張旭高
(中國(guó)民航大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,天津 300300)
網(wǎng)絡(luò)安全態(tài)勢(shì)預(yù)測(cè)方法通過(guò)對(duì)網(wǎng)絡(luò)中各種安全預(yù)警(報(bào)警)信息和關(guān)聯(lián)信息的處理生成時(shí)間樣本序列,通過(guò)對(duì)相關(guān)信息的進(jìn)一步處理和分析獲取一定時(shí)間段內(nèi)的網(wǎng)絡(luò)安全總體情況和可能變化,對(duì)及時(shí)發(fā)現(xiàn)網(wǎng)絡(luò)中存在的高危態(tài)勢(shì)具有積極作用。目前,灰色預(yù)測(cè)法、機(jī)器學(xué)習(xí)預(yù)測(cè)法和時(shí)間序列預(yù)測(cè)法為常見(jiàn)的網(wǎng)絡(luò)安全態(tài)勢(shì)預(yù)測(cè)方法[1]。
Cipriano 等[2]基于以往警報(bào)提出一種網(wǎng)絡(luò)攻擊行為預(yù)測(cè)模型。該模型將以往警報(bào)作為訓(xùn)練集,通過(guò)機(jī)器學(xué)習(xí)方法獲得警報(bào)知識(shí)庫(kù),再根據(jù)現(xiàn)有警報(bào)序列預(yù)測(cè)攻擊者下一步攻擊行為,為實(shí)時(shí)評(píng)估網(wǎng)絡(luò)安全態(tài)勢(shì)提供參考。Xiao 等[3]提出了基于MEA-BP(mind evolution algorithm-back propagation)的網(wǎng)絡(luò)安全態(tài)勢(shì)預(yù)測(cè)方法。該方法通過(guò)對(duì)網(wǎng)絡(luò)權(quán)重和閾值進(jìn)行改進(jìn)提高了安全態(tài)勢(shì)的預(yù)測(cè)準(zhǔn)確率和效率,但對(duì)以往數(shù)據(jù)的標(biāo)準(zhǔn)化不夠完善。Sun[4]提出了基于復(fù)雜網(wǎng)絡(luò)的Markov 預(yù)測(cè)模型。該模型將網(wǎng)絡(luò)安全狀況的轉(zhuǎn)換關(guān)系構(gòu)造成復(fù)雜網(wǎng)絡(luò),并利用加權(quán)馬爾可夫鏈預(yù)測(cè)安全態(tài)勢(shì),可在一定程度上反映網(wǎng)絡(luò)的安全狀態(tài),但面對(duì)多狀態(tài)的網(wǎng)絡(luò),所構(gòu)造出的狀態(tài)轉(zhuǎn)移概率矩陣規(guī)模過(guò)大。Leau 等[5]提出一種經(jīng)卡爾曼濾波方程修正的網(wǎng)絡(luò)安全態(tài)勢(shì)預(yù)測(cè)模型。該模型基于層次分析法生成網(wǎng)絡(luò)安全態(tài)勢(shì)值序列,并通過(guò)灰色Verhulst-Kalman 方法動(dòng)態(tài)預(yù)測(cè)網(wǎng)絡(luò)安全態(tài)勢(shì),但局限于安全態(tài)勢(shì)為單峰變化的情況。Schatz 等[6]提出一種減少不確定性的安全預(yù)測(cè)方法。該模型基于信息安全領(lǐng)域內(nèi)具有不同程度專業(yè)知識(shí)受訪者對(duì)網(wǎng)絡(luò)安全威脅的認(rèn)知語(yǔ)料,利用概率主題建模方法預(yù)測(cè)網(wǎng)絡(luò)安全威脅,但受訪人群的層次、經(jīng)驗(yàn)的離散性會(huì)影響預(yù)測(cè)精度。孫衛(wèi)喜等[7]提出一種網(wǎng)絡(luò)安全態(tài)勢(shì)預(yù)測(cè)方法,提高了網(wǎng)絡(luò)安全態(tài)勢(shì)預(yù)測(cè)的準(zhǔn)確率和有效性,但所需源數(shù)據(jù)維度較多。周新衛(wèi)等[8]通過(guò)灰熵關(guān)聯(lián)法提取影響網(wǎng)絡(luò)安全的主要因素,并在此基礎(chǔ)上建立卡爾曼濾波方程,提高了安全態(tài)勢(shì)預(yù)測(cè)的精度。韓曉露等[9]提出基于直覺(jué)模糊集的非線性自回歸神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型(IFS-NARX,nonlinear autoregressive neural network with exogenous inputs based on intuitionistic fuzzy set),對(duì)網(wǎng)絡(luò)安全態(tài)勢(shì)預(yù)測(cè)可靠性的提升途徑做了有益的探索。
針對(duì)上述網(wǎng)絡(luò)安全態(tài)勢(shì)預(yù)測(cè)方法中存在的數(shù)據(jù)質(zhì)量參差不齊以及對(duì)多峰變化的網(wǎng)絡(luò)安全態(tài)勢(shì)預(yù)測(cè)準(zhǔn)確度降低的不足,為解決目前網(wǎng)絡(luò)安全態(tài)勢(shì)預(yù)測(cè)方法的準(zhǔn)確性和有效性不足的問(wèn)題,本文提出一種基于自修正系數(shù)修勻法的網(wǎng)絡(luò)安全態(tài)勢(shì)預(yù)測(cè)模型。
本文提出的基于自修正系數(shù)修勻法的網(wǎng)絡(luò)安全態(tài)勢(shì)預(yù)測(cè)模型如圖1 所示。其中,初始預(yù)測(cè)部分由可變域空間內(nèi)的安全時(shí)間樣本序列建立多重系數(shù)修勻模型以得到初始預(yù)測(cè)值;預(yù)測(cè)修正部分通過(guò)初始預(yù)測(cè)值和真實(shí)結(jié)果的偏離建立時(shí)變加權(quán)馬爾可夫鏈,通過(guò)該模型對(duì)偏差值進(jìn)行預(yù)測(cè)并修正初始預(yù)測(cè)值,最終得到網(wǎng)絡(luò)安全態(tài)勢(shì)預(yù)測(cè)結(jié)果。
模型的具體處理和分析過(guò)程設(shè)計(jì)如下。
步驟1基于熵關(guān)聯(lián)度將網(wǎng)絡(luò)警報(bào)信息轉(zhuǎn)化為安全態(tài)勢(shì)值非線性時(shí)間序列。
圖1 網(wǎng)絡(luò)安全態(tài)勢(shì)預(yù)測(cè)模型
步驟2利用可變域空間劃分網(wǎng)絡(luò)安全態(tài)勢(shì)值序列片段,每更新一個(gè)安全態(tài)勢(shì)值,可變域空間即向后移動(dòng)一個(gè)單位。
步驟3基于可變域空間內(nèi)的安全態(tài)勢(shì)序列建立多重系數(shù)修勻預(yù)測(cè)模型,并通過(guò)自適應(yīng)調(diào)整靜態(tài)修勻系數(shù)α以初步提高預(yù)測(cè)精度。
步驟4計(jì)算可變域空間內(nèi)的安全態(tài)勢(shì)預(yù)測(cè)值與實(shí)際值的偏差,將偏差劃分為k個(gè)偏差區(qū)間或分區(qū)。采用時(shí)變加權(quán)馬爾可夫鏈模型對(duì)預(yù)測(cè)值進(jìn)行處理,對(duì)偏差值進(jìn)行預(yù)測(cè)并對(duì)原始預(yù)測(cè)值進(jìn)行二次修正。
步驟5檢驗(yàn)偏差,若未滿足閾值條件,則返回步驟4,并將偏差類別劃分為k+1 個(gè);若滿足閾值條件,則按步驟1~步驟4 得到下一周期的安全態(tài)勢(shì)值。
本文模型通過(guò)動(dòng)態(tài)調(diào)整靜態(tài)修勻系數(shù)α初步提高態(tài)勢(shì)值預(yù)測(cè)精度,再通過(guò)調(diào)整偏差類別數(shù)量提高時(shí)變加權(quán)馬爾可夫模型對(duì)偏差的預(yù)測(cè)精度,最終完成對(duì)安全態(tài)勢(shì)預(yù)測(cè)值的自適應(yīng)修正目標(biāo)。
首先,基于開(kāi)源入侵檢測(cè)系統(tǒng)獲取警報(bào)信息。然后,基于熵關(guān)聯(lián)度計(jì)算各量化周期內(nèi)的網(wǎng)絡(luò)安全態(tài)勢(shì)值。具體方法設(shè)計(jì)如下。
各周期網(wǎng)絡(luò)安全態(tài)勢(shì)量化值依據(jù)具有最高質(zhì)量值的警報(bào)確定[10]。在C個(gè)量化周期內(nèi),Zi(i=1,2,…,C)為周期i的量化值,Qi為周期i內(nèi)質(zhì)量值最高的警報(bào),則(i=1,2,…,C),其中,警報(bào)發(fā)生率(AO,alarm occurance)為
Qi的警報(bào)致變程度(AM,alarm mutagenicity)為,表示Qi引發(fā)網(wǎng)絡(luò)安全狀態(tài)變更的難易程度。越低,則變更難度越大。優(yōu)先級(jí)設(shè)為1、2、3,分別對(duì)應(yīng)警報(bào)Qi為周期i內(nèi)發(fā)生、周期i?M至周期i?1 內(nèi)發(fā)生和周期i?M至周期i?1 內(nèi)未發(fā)生,本文取M=2[11]。
Qi的警報(bào)負(fù)面程度(AN,alarm negativity)為ANQi,該值越小,則網(wǎng)絡(luò)安全狀態(tài)受Qi影響程度越小。優(yōu)先級(jí)設(shè)為3、2、1,分別對(duì)應(yīng)警報(bào)負(fù)面程度為高危、中危、低危。
網(wǎng)絡(luò)安全態(tài)勢(shì)依據(jù)評(píng)價(jià)關(guān)聯(lián)度矩陣R(如表1所示)量化。令,則Y1、Y2、Y3分別對(duì)應(yīng)周期i內(nèi)警報(bào)質(zhì)量最高的警報(bào)Qi的3 個(gè)量化指標(biāo),即警報(bào)發(fā)生率、警報(bào)致變程度及警報(bào)負(fù)面程度。表1 中rij為第i個(gè)指標(biāo)關(guān)聯(lián)第j個(gè)評(píng)價(jià)(i,j∈{3,2,1})的密切程度。
表1 評(píng)價(jià)關(guān)聯(lián)度矩陣R
為區(qū)分指標(biāo)Y1對(duì)網(wǎng)絡(luò)安全威脅嚴(yán)重程度,設(shè)定警報(bào)發(fā)生率區(qū)間oj如表2 所示,基于Y1值和警報(bào)發(fā)生率區(qū)間端點(diǎn)偏離距離計(jì)算當(dāng)前時(shí)刻Y1和區(qū)間oj(j=3,2,1)的相關(guān)度,該相關(guān)度即為Y1對(duì)表1 內(nèi)各評(píng)價(jià)的關(guān)聯(lián)度。
表2 警報(bào)發(fā)生率區(qū)間oj
設(shè)Y1=y,則特定指標(biāo)與每個(gè)評(píng)價(jià)之間的關(guān)聯(lián)度為
其中,Lj和Uj分別為oj的下端點(diǎn)和上端點(diǎn),j=3,2,1。
由于指標(biāo)Y2、Y3均根據(jù)優(yōu)先級(jí)判定指標(biāo)對(duì)網(wǎng)絡(luò)安全威脅程度,故指標(biāo)Y2、Y3對(duì)各評(píng)價(jià)的關(guān)聯(lián)度設(shè)定如表3 所示。
表3 Y2、Y3 對(duì)各評(píng)價(jià)的關(guān)聯(lián)度設(shè)定
表3 中,優(yōu)先級(jí)越高,則指標(biāo)威脅程度越大,故低優(yōu)先級(jí)對(duì)評(píng)價(jià)高危、中危、低危的關(guān)聯(lián)度遞增,反之則遞減。當(dāng)指標(biāo)Yi(i∈{2,3})優(yōu)先級(jí)為j時(shí),取表3 與j同一行內(nèi)的關(guān)聯(lián)度作為表1 內(nèi)Yi(i∈{2,3})對(duì)應(yīng)的關(guān)聯(lián)度。警報(bào)各指標(biāo)的絕對(duì)熵值為
當(dāng)ri1=ri2=…=rin時(shí),Emax=lnn,則警報(bào)各指標(biāo)的相對(duì)熵值為
某指標(biāo)相對(duì)熵值越大,則表示該指標(biāo)對(duì)警報(bào)的量化值的影響越小,則以1?ψi表示對(duì)應(yīng)指標(biāo)的權(quán)值,即
其中,ηi∈[0,1]為指標(biāo)Yi的熵權(quán)系數(shù),且η1+…+ηn=1。
各評(píng)價(jià)權(quán)值[12]為。
在第i個(gè)周期,計(jì)算得到其網(wǎng)絡(luò)安全態(tài)勢(shì)的量化結(jié)果[13]為
其中,態(tài)勢(shì)放大系數(shù)ρ=10 000。態(tài)勢(shì)量化值越高,則網(wǎng)絡(luò)安全狀況越差。
通過(guò)自適應(yīng)調(diào)整靜態(tài)修勻系數(shù)α,使基于多重系數(shù)修勻法獲取的初始預(yù)測(cè)結(jié)果精度較高。初始預(yù)測(cè)值計(jì)算步驟如下。
步驟1利用可變域空間劃分以往數(shù)據(jù)時(shí)間序列片段。設(shè)W為域空間寬度,Z1,Z2,…,Zp(p為正整數(shù))為當(dāng)前網(wǎng)絡(luò)安全態(tài)勢(shì)評(píng)估量化值序列,可變域空間工作過(guò)程如下。
1) 定義當(dāng)前域空間寬度內(nèi)的態(tài)勢(shì)值個(gè)數(shù)為l(1≤l≤p),則在該域空間內(nèi)的該值的時(shí)間序列為Z1′,Z2′,…,Zl′。若l+1≤W,域空間位置固定,則計(jì)算第l+1 周期態(tài)勢(shì)值,然后在域空間內(nèi)輸入下一個(gè)態(tài)勢(shì)值。
2)若l+1>W,輸入下一個(gè)態(tài)勢(shì)值到以往序列中,并將域空間向后移動(dòng)一個(gè)時(shí)間單位,以域空間內(nèi)新態(tài)勢(shì)值序列片段為對(duì)象,計(jì)算第p+1 個(gè)周期的態(tài)勢(shì)值。
可變域空間的移動(dòng)與取值變化如圖2 所示。該機(jī)制保證多重系數(shù)修勻法所基于的時(shí)間序列長(zhǎng)度不超過(guò)W,從而保證新的安全態(tài)勢(shì)值加入以往序列后多重系數(shù)修勻法仍能正常預(yù)測(cè),且可提高安全態(tài)勢(shì)值預(yù)測(cè)的準(zhǔn)確性與動(dòng)態(tài)性。
圖2 可變域空間的移動(dòng)與取值變化
步驟2計(jì)算靜態(tài)修勻系數(shù)。設(shè)當(dāng)前網(wǎng)絡(luò)安全態(tài)勢(shì)值序列為Z1,Z2,…,Zp,域空間內(nèi)態(tài)勢(shì)值個(gè)數(shù)為l。若p≤W,則Z1′=Z1,Zl′=Zp;若p>W,則Z1′=Zp?W+1,Zl′=Zp。多重系數(shù)修勻法為
其中,周期t+X的安全態(tài)勢(shì)量化預(yù)測(cè)結(jié)果為,預(yù)測(cè)周期提前量為X,dt、et、ft為周期t的預(yù)測(cè)系數(shù)。
其中,α∈[0,1]為靜態(tài)修勻系數(shù)。
其中,Yt為周期t的真實(shí)態(tài)勢(shì)值
在上述處理過(guò)程中,α的取值間接影響最終預(yù)測(cè)結(jié)果的準(zhǔn)確性和精度。通常,當(dāng)實(shí)際值序列呈水平趨勢(shì)時(shí),α∈[0.05,0.2];當(dāng)實(shí)際值序列存在波動(dòng),但長(zhǎng)期波動(dòng)較小時(shí),α∈[0.3,0.5];當(dāng)實(shí)際值序列波動(dòng)很大,呈明顯的上升或下降趨勢(shì)時(shí),α∈[0.6,0.8]。α值越大,表明遠(yuǎn)期數(shù)據(jù)對(duì)預(yù)測(cè)值的影響越大。因態(tài)勢(shì)實(shí)際值序列片段隨可變域空間位置發(fā)生變化,本文通過(guò)最小化實(shí)際值和預(yù)測(cè)值的偏差絕對(duì)值之和求得α自適應(yīng)解。α自適應(yīng)解求解步驟如下。
1) 設(shè)當(dāng)前可變域空間內(nèi)的l個(gè)網(wǎng)絡(luò)安全態(tài)勢(shì)實(shí)際值組成向量Z′=(Z1′,Z2′,…,Zk′),靜態(tài)修勻系數(shù)α初值為0。
3)設(shè)t=0,1,…,l?1,預(yù)測(cè)周期提前量X=1,由式(7)計(jì)算得到經(jīng)α修勻的預(yù)測(cè)值序列Z1。
4)設(shè)預(yù)測(cè)值序列與實(shí)際值序列的偏差絕對(duì)值之和為V,則有
5) 循環(huán)1)~4),若α=1,則轉(zhuǎn)到步驟3;否則繼續(xù)循環(huán)1)~4)。
設(shè)第j次循環(huán)后得到的偏差的絕對(duì)值為Vj,計(jì)算得到Vj最小值條件下的α值靜態(tài)修勻系數(shù)自適應(yīng)解為αa。
步驟3計(jì)算網(wǎng)絡(luò)安全態(tài)勢(shì)初始預(yù)測(cè)值。令t=l=p,α=αa,X=1,由式(7)~式(13)求得第p+1 個(gè)周期的安全態(tài)勢(shì)值。
通過(guò)網(wǎng)絡(luò)安全態(tài)勢(shì)預(yù)測(cè)子模塊,得到可變域空間內(nèi)各周期網(wǎng)絡(luò)安全態(tài)勢(shì)初始預(yù)測(cè)值。根據(jù)常識(shí)可知,該值與同域空間內(nèi)的已知安全態(tài)勢(shì)實(shí)際值存在偏差,且偏差大小與可變域空間內(nèi)安全態(tài)勢(shì)波動(dòng)大小有關(guān)。本文將預(yù)測(cè)值與實(shí)際值偏差劃分為若干偏差類別,并通過(guò)時(shí)變加權(quán)馬爾可夫鏈預(yù)測(cè)偏差值。
處于不同時(shí)刻的網(wǎng)絡(luò)所面臨的漏洞、威脅將發(fā)生變化,可能出現(xiàn)如下的情況。
1)在短時(shí)間內(nèi)網(wǎng)絡(luò)遭受集中攻擊,導(dǎo)致其安全態(tài)勢(shì)出現(xiàn)較大波動(dòng),安全態(tài)勢(shì)預(yù)測(cè)值與實(shí)際值偏差上、下限值距離較大。
2)網(wǎng)絡(luò)面臨常規(guī)漏洞,故其安全態(tài)勢(shì)在一定時(shí)間內(nèi)會(huì)較為平緩或出現(xiàn)較小波動(dòng),安全態(tài)勢(shì)預(yù)測(cè)值與實(shí)際值偏差上、下限值距離較小。
新態(tài)勢(shì)值加入以往序列引發(fā)可變域空間移動(dòng),改變可變域空間內(nèi)態(tài)勢(shì)值序列片段波動(dòng)離散程度和最大、最小偏差距離。
設(shè)i=1,2,3,…,l,則當(dāng)前域空間中的態(tài)勢(shì)實(shí)際值片段為,態(tài)勢(shì)預(yù)測(cè)值片段為,最小偏差值為,最大偏差值為,偏差距離為DL=DU?DL。劃分偏差類別步驟如下。
步驟1劃分偏差距離為k個(gè)區(qū)間,區(qū)間寬度為,區(qū)間元素為,。
步驟2設(shè)i=1,2,3,…,l,當(dāng)前域空間內(nèi)偏差時(shí)間序 列 為,若,,則偏差Di屬于偏差類別j,j∈1,2,…,k。當(dāng)Di=DU時(shí),則可將Di劃歸為類別k。
步驟3若修正后的預(yù)測(cè)值不滿足偏差檢驗(yàn)等級(jí)要求,則偏差類別數(shù)k=k+1,使偏差修正細(xì)粒度化。
針對(duì)域空間內(nèi)的偏差類別的樣本,采用時(shí)變加權(quán)馬爾可夫鏈模型對(duì)安全態(tài)勢(shì)的偏差進(jìn)行預(yù)測(cè),具體步驟設(shè)計(jì)如下。
步驟1安全態(tài)勢(shì)的偏差類別轉(zhuǎn)移概率矩陣獲取。假設(shè)當(dāng)前安全態(tài)勢(shì)的偏差類別為k個(gè),當(dāng)前時(shí)刻為x,相鄰時(shí)刻偏差類別為dx?1dx,m個(gè)時(shí)刻后的偏差類別為dx+m,則有
其中,pa為偏差類別轉(zhuǎn)移概率,a為時(shí)刻x?1 的偏差類別,b為時(shí)刻x的偏差類別,c為時(shí)刻x+m的偏差類別。
設(shè)k為偏差類別數(shù),當(dāng)k=3 時(shí),轉(zhuǎn)移概率矩陣為
其中,k=1,2,…,?。?值通過(guò)步驟3 調(diào)整,其初值由可變域空間寬度W確定,本文取。
步驟2確定偏差類別轉(zhuǎn)移概率矩陣權(quán)值。首先計(jì)算dx?1dx和dx+m間的相關(guān)系數(shù)χq為
其中,qx?1、qx和qx+m分別為域空間內(nèi)時(shí)刻x?1、時(shí)刻x和時(shí)刻x+m的偏差值,為域空間內(nèi)偏差序列片段均值,m=1,2,…,?。則m階偏差類別轉(zhuǎn)移概率矩陣權(quán)值μm為
步驟3根據(jù)μ?值調(diào)整?值。當(dāng)μ?<0.05[14]時(shí),去除對(duì)預(yù)測(cè)偏差作用較小的?階偏差類別轉(zhuǎn)移概率矩陣,令?=??1 并更新μ?值,當(dāng)μ?≥0.05 時(shí),取mmax=?。
步驟4計(jì)算偏差預(yù)測(cè)值。x+1 時(shí)刻偏差值屬于偏差類別c,c=1,2,…,k的概率pc(x+1)為
其中,m=1,2,…,?;a,b∈{1,2,…,k},根據(jù)m階偏差類別轉(zhuǎn)移概率矩陣Pm確定,表示由相鄰偏差類別組dx?m=a、dx?m+1=b轉(zhuǎn)移至偏差類別dx+1=c的概率。μm為m階偏差類別轉(zhuǎn)移概率矩陣權(quán)值,x+1時(shí)刻的安全態(tài)勢(shì)預(yù)測(cè)偏差的類別概率分布向量為Pc(x+1)={p1(x+1),p2(x+1),…,pk(x+1)}。
設(shè)由各偏差區(qū)間中值組成的偏差中值向量為
則x+1 時(shí)刻偏差預(yù)測(cè)值算子為
x+1 時(shí)刻預(yù)測(cè)值修正結(jié)果為
分析修正后的安全態(tài)勢(shì)預(yù)測(cè)值與實(shí)際值的接近程度,從而判斷偏差類別劃分?jǐn)?shù)量k是否足夠。已知某域空間內(nèi)的修正后的安全態(tài)勢(shì)預(yù)測(cè)值序列與實(shí)際值序列如表4 所示。
表4 預(yù)測(cè)值序列與實(shí)際值序列
本文偏差檢驗(yàn)方法介紹如下。
1) 后驗(yàn)差檢驗(yàn)
殘差Ri=Zi?Zf(i),i=2,3,…,l為實(shí)際值和經(jīng)修正的預(yù)測(cè)值之差。當(dāng)前安全態(tài)勢(shì)序列片段內(nèi)安全態(tài)勢(shì)值方差S12為
殘差序列方差S22為
2) 小概率檢驗(yàn)
小概率檢驗(yàn)結(jié)果τ為
偏差檢驗(yàn)等級(jí)如表5 所示。通過(guò)表5 判斷是否需增加偏差類別劃分?jǐn)?shù)量。若偏差等級(jí)為1 級(jí)或2級(jí),滿足偏差等級(jí)檢驗(yàn)要求,不需增加偏差類別數(shù)量,否則偏差類別數(shù)量為k+1。偏差等級(jí)小,表明預(yù)測(cè)的態(tài)勢(shì)值結(jié)果偏差小。
采用林肯實(shí)驗(yàn)室的標(biāo)準(zhǔn)數(shù)據(jù)集LL_DOS_1.0 驗(yàn)證本文模型的預(yù)測(cè)有效性。LL_DOS_1.0 攻擊過(guò)程如下。
表5 偏差檢驗(yàn)等級(jí)
1~70 min:攻擊者安裝相關(guān)攻擊軟件,并通過(guò)IP Sweep 掃描實(shí)驗(yàn)網(wǎng)絡(luò)拓?fù)湟詫ふ耶?dāng)前活躍主機(jī)。
70~125 min:利用Sadmind Ping 查找存在Sadmind 漏洞的主機(jī)。
126~240 min:攻擊者利用Sadmind Exploit 攻擊經(jīng)70~125 min 鎖定的3 臺(tái)主機(jī)Pascal、Mill 和Locke 直至入侵各主機(jī)系統(tǒng)。
241~319 min:攻擊者在受到入侵的3 臺(tái)主機(jī)上安裝DDoS 木馬程序。
320 min 以后:攻擊者對(duì)遠(yuǎn)程服務(wù)器發(fā)動(dòng)DDoS攻擊。
在Ubuntu16.04 操作系統(tǒng)下,采用Tcpreplay 技術(shù)重放LL_DOS_1.0 數(shù)據(jù)分組,并在Windows10 操作系統(tǒng)下通過(guò)Snort 入侵檢測(cè)系統(tǒng)針對(duì)重放流量生成告警日志。
基于第3 節(jié)網(wǎng)絡(luò)安全態(tài)勢(shì)評(píng)估量化方法生成態(tài)勢(shì)實(shí)際值序列。將1~360 min 按時(shí)間間隔T=4 min 劃分為90 個(gè)量化周期,各周期內(nèi)的態(tài)勢(shì)量化值區(qū)間為[2 800,4 000]。初始態(tài)勢(shì)值序列由1~40 min 的10 個(gè)量化值組成,通過(guò)比較剩余的80個(gè)態(tài)勢(shì)實(shí)際值與對(duì)應(yīng)預(yù)測(cè)值擬合程度驗(yàn)證本文模型有效性。
以41~360 min 某40 min 時(shí)間段內(nèi)的10 個(gè)安全態(tài)勢(shì)值為例,說(shuō)明本文模型預(yù)測(cè)過(guò)程。
某量化周期T=4 min 內(nèi)的優(yōu)選警報(bào)Q、警報(bào)負(fù)面程度ANQ級(jí)別、警報(bào)發(fā)生率AOQ級(jí)別和警報(bào)致變程度AMQ級(jí)別的屬性如表6 所示。
表6 警報(bào)屬性樣例
依據(jù)式(2)及表1~表3,得到評(píng)價(jià)關(guān)聯(lián)度,如表7所示。
表7 評(píng)價(jià)關(guān)聯(lián)度
由式(2)~式(6)計(jì)算可得,該周期的網(wǎng)絡(luò)安全態(tài)勢(shì)量化值為Z=3 504,其他量化周期的量化過(guò)程在此不再贅述。則得到該40 min 時(shí)段內(nèi)的10 個(gè)安全態(tài)勢(shì)序列如表8 所示。
表8 安全態(tài)勢(shì)序列
由第4 節(jié)網(wǎng)絡(luò)安全態(tài)勢(shì)預(yù)測(cè)方法獲取T2~T10的安全態(tài)勢(shì)預(yù)測(cè)值。設(shè)可變域空間寬度為W=10,得當(dāng)前態(tài)勢(shì)值序列下靜態(tài)修勻系數(shù)自適應(yīng)解αa=0.126,初始預(yù)測(cè)值與實(shí)際值對(duì)比如表9 所示,經(jīng)計(jì)算得。
表9 初始預(yù)測(cè)值與實(shí)際值對(duì)比
T2~T10周期偏差序列如表10 所示,偏差區(qū)間[DL,DU]=[?363.7,486.4]。根據(jù)第5 節(jié)的預(yù)測(cè)值修正方法,當(dāng)劃分偏差類別數(shù)量k=8、?=4 時(shí),初始預(yù)測(cè)值修正后,可滿足后驗(yàn)差檢驗(yàn)與小概率檢驗(yàn)條件。偏差類別區(qū)間如表11 所示。
表10 偏差序列
表11 偏差類別區(qū)間劃分
由式(14)~式(19)計(jì)算得T2~T10修正后的安全態(tài)勢(shì)預(yù)測(cè)值,其中偏差類別初始概率分布向量由在T1周期之前的10 個(gè)量化周期的安全態(tài)勢(shì)值確定。安全態(tài)勢(shì)預(yù)測(cè)修正值與實(shí)際值對(duì)比如表12所示。
表12 預(yù)測(cè)修正值與實(shí)際值對(duì)比
預(yù)測(cè)修正值Zf(i)序列的后驗(yàn)差比值θ=0.42,小概率檢驗(yàn)結(jié)果τ=0.89。由表5 可知,該模型偏差等級(jí)為2 級(jí),滿足偏差檢驗(yàn)條件,則T11的安全態(tài)勢(shì)預(yù)測(cè)值為,與原態(tài)勢(shì)序列中同周期的安全態(tài)勢(shì)值Z11=2 920 的相對(duì)偏差為1.8%,表明該預(yù)測(cè)精度較高。
對(duì)于其他周期安全態(tài)勢(shì)值的預(yù)測(cè)和偏差檢驗(yàn),重復(fù)6.2 節(jié)和6.3 節(jié)過(guò)程,共計(jì)生成80 個(gè)安全態(tài)勢(shì)預(yù)測(cè)值。
靜態(tài)修勻系數(shù)α自適應(yīng)解受可變域空間內(nèi)以往數(shù)據(jù)序列片段長(zhǎng)度影響,改變初始預(yù)測(cè)精度。本文選取最佳可變域空間寬度以提高初始預(yù)測(cè)值和實(shí)際值的擬合程度。由于多重系數(shù)修勻法單次預(yù)測(cè)精度在15 個(gè)以往數(shù)據(jù)以內(nèi)較高,故本文試用可變域空間寬度集合為{W|W=5,10,15},不同域空間寬度下預(yù)測(cè)值對(duì)比如圖3 所示。
圖3 不同域空間寬度下預(yù)測(cè)值對(duì)比
由圖3 可得,最佳可變域空間寬度為W=10,此時(shí)初始預(yù)測(cè)值精度更高。原因分析如下。
1) 當(dāng)W=5 時(shí),域空間寬度較小,以往樣本數(shù)據(jù)片較短,最近樣本數(shù)據(jù)的影響更加顯著。
2) 當(dāng)W=10 時(shí),可變域空間寬度居中,以往樣本數(shù)據(jù)段內(nèi)異常波動(dòng)數(shù)據(jù)和平緩波動(dòng)數(shù)據(jù)的數(shù)量差距減小,遠(yuǎn)期、近期數(shù)據(jù)均衡影響安全態(tài)勢(shì)預(yù)測(cè),從而提高了初始預(yù)測(cè)值精度。
3) 當(dāng)W=15 時(shí),域空間寬度大,以往樣本數(shù)據(jù)片較長(zhǎng),域空間內(nèi)少量異常波動(dòng)數(shù)據(jù)和其他平緩波動(dòng)數(shù)據(jù)相比,對(duì)靜態(tài)修勻系數(shù)自適應(yīng)解影響作用更小,降低了態(tài)勢(shì)突變處的初始預(yù)測(cè)值精度。
實(shí)驗(yàn)數(shù)據(jù)集為L(zhǎng)L_DOS_1.0 數(shù)據(jù)集,分別采用本文模型、IFS-NARX 模型[9]和傳統(tǒng)馬爾可夫模型生成安全態(tài)勢(shì)預(yù)測(cè)值序列,如圖4 所示,安全態(tài)勢(shì)預(yù)測(cè)值絕對(duì)偏差序列如圖5 所示。
圖4 安全態(tài)勢(shì)預(yù)測(cè)值序列
圖5 安全態(tài)勢(shì)預(yù)測(cè)值絕對(duì)偏差序列
從圖4 和圖5 可知,由本文模型獲取的態(tài)勢(shì)預(yù)測(cè)結(jié)果更加符合原始的網(wǎng)絡(luò)安全態(tài)勢(shì)情況,絕對(duì)偏差更小。原因分析如下。
1) 傳統(tǒng)馬爾可夫狀態(tài)轉(zhuǎn)移概率矩陣隨以往數(shù)據(jù)增加而收斂,故傳統(tǒng)馬爾可夫模型面向較短時(shí)間序列預(yù)測(cè)效果理想,當(dāng)時(shí)間序列較長(zhǎng)時(shí),絕對(duì)偏差增大且偏差峰值周期性出現(xiàn)。
2) 將警報(bào)發(fā)生率、警報(bào)致變程度和警報(bào)負(fù)面程度作為IFS-NARX 模型輸入特征,非線性自回歸神經(jīng)網(wǎng)絡(luò)參數(shù)由經(jīng)驗(yàn)公式確定,該模型面向短序列預(yù)測(cè)因樣本數(shù)量較少而預(yù)測(cè)精度不佳,當(dāng)序列長(zhǎng)度增加時(shí),樣本數(shù)量提高,模型預(yù)測(cè)精度提升。
3) 本文模型中,可變域空間位置隨新態(tài)勢(shì)值加入以往序列而發(fā)生移動(dòng),更新域空間內(nèi)態(tài)勢(shì)序列片段,調(diào)整靜態(tài)修勻系數(shù)自適應(yīng)解取值、偏差類別劃分?jǐn)?shù)量和偏差類別轉(zhuǎn)移概率矩陣,使預(yù)測(cè)精度在不同長(zhǎng)度時(shí)間序列下保持較高水平。
本文提出一種基于自修正系數(shù)修勻法的網(wǎng)絡(luò)安全態(tài)勢(shì)預(yù)測(cè)模型。通過(guò)熵關(guān)聯(lián)度量化若干周期的網(wǎng)絡(luò)安全態(tài)勢(shì)值,采用可變域空間機(jī)制對(duì)按時(shí)序排列的安全態(tài)勢(shì)值進(jìn)行片段化處理,運(yùn)用自適應(yīng)多重系數(shù)修勻法初步生成安全態(tài)勢(shì)預(yù)測(cè)結(jié)果,運(yùn)用時(shí)變加權(quán)馬爾可夫鏈對(duì)偏差進(jìn)行預(yù)測(cè)并修正安全態(tài)勢(shì)預(yù)測(cè)值。實(shí)驗(yàn)結(jié)果表明,本文模型預(yù)測(cè)自適應(yīng)性較強(qiáng),預(yù)測(cè)精度較高。下一步主要分析態(tài)勢(shì)序列線性性質(zhì)并將長(zhǎng)短期記憶網(wǎng)絡(luò)模型和動(dòng)態(tài)信譽(yù)機(jī)制[15]、安全規(guī)則集合[16]相結(jié)合,以提高本文模型對(duì)態(tài)勢(shì)突變處的適應(yīng)性。