摘 要: 針對現(xiàn)有的網(wǎng)絡(luò)安全態(tài)勢預(yù)測方法沒有從影響網(wǎng)絡(luò)安全態(tài)勢的安全因子入手,,不能準(zhǔn)確地預(yù)測未來網(wǎng)絡(luò)安全態(tài)勢,,提出了一種基于灰色理論和BP神經(jīng)網(wǎng)絡(luò)的預(yù)測方法。首先依據(jù)灰色模型系數(shù)的取值大小選擇最合適的背景值,,并構(gòu)造了一種新的模型背景值函數(shù),。其次,結(jié)合GM(1,,1),、GM(1,N)模型預(yù)測網(wǎng)絡(luò)安全態(tài)勢,,并用BP神經(jīng)網(wǎng)絡(luò)對態(tài)勢預(yù)測值進(jìn)行修正,。最后,通過真實(shí)的網(wǎng)絡(luò)環(huán)境驗(yàn)證了所提出的方法在網(wǎng)絡(luò)安全態(tài)勢預(yù)測中的有效性,。
關(guān)鍵詞: 灰色理論,;網(wǎng)絡(luò)安全態(tài)勢感知,、預(yù)測;BP神經(jīng)網(wǎng)絡(luò),;粒子群算法
0 引言
隨著網(wǎng)絡(luò)信息技術(shù)的日益發(fā)展,,互聯(lián)網(wǎng)正在成為社會的信息基礎(chǔ)設(shè)施。同時,,網(wǎng)絡(luò)攻擊和破壞行為日益普遍,,傳統(tǒng)的網(wǎng)絡(luò)安全防護(hù)設(shè)備(如防火墻、IDS等)功能單一,、不能全方位地對網(wǎng)絡(luò)的安全狀態(tài)做出整體的評價(jià)和估計(jì)[1],。網(wǎng)絡(luò)安全態(tài)勢感知就是在這種背景下產(chǎn)生的。其中網(wǎng)絡(luò)安全態(tài)勢預(yù)測作為網(wǎng)絡(luò)安全態(tài)勢感知的一個重要部分,它能夠?qū)W(wǎng)絡(luò)系統(tǒng)整體運(yùn)行的安全趨勢進(jìn)行把握,,實(shí)時地感知網(wǎng)絡(luò)所面臨的威脅,;為及時、準(zhǔn)確的決策提供可靠依據(jù),,使由網(wǎng)絡(luò)不安全帶來的風(fēng)險(xiǎn)和損失降低到最低限度,。
目前存在多方位、多層面的預(yù)測方法和模型,,主要有:灰色GM(1,,1)模型[2]、神經(jīng)網(wǎng)絡(luò)[3],、支持向量機(jī)(Support Vector Machine,,SVM)[4]等。
上述預(yù)測方法都在一定程度上對網(wǎng)絡(luò)安全態(tài)勢進(jìn)行了預(yù)測,,存在的問題總結(jié)如下:預(yù)測方法僅從網(wǎng)絡(luò)歷史的整體安全態(tài)勢本身數(shù)據(jù)進(jìn)行分析,,忽略影響網(wǎng)絡(luò)安全態(tài)勢的安全因子[5],而實(shí)際上安全態(tài)勢的變化是與安全因子的變化密切相關(guān)的,。
對此,,本文從影響網(wǎng)絡(luò)安全態(tài)勢的安全因子入手,結(jié)合灰色GM模型,、BP神經(jīng)網(wǎng)絡(luò)預(yù)測網(wǎng)絡(luò)安全態(tài)勢,,并通過真實(shí)的實(shí)驗(yàn)環(huán)境去驗(yàn)證本方法的準(zhǔn)確性。
1 網(wǎng)絡(luò)安全態(tài)勢安全因子
在互聯(lián)網(wǎng)實(shí)際應(yīng)用中,,本文從網(wǎng)絡(luò)基礎(chǔ)運(yùn)行性,、網(wǎng)絡(luò)脆弱性、網(wǎng)絡(luò)威脅性[6]劃分安全因子,。脆弱性側(cè)重描述網(wǎng)絡(luò)本身的安全漏洞,。因子包含:子網(wǎng)內(nèi)安全設(shè)備數(shù)目、關(guān)鍵設(shè)備開放端口的數(shù)量,、關(guān)鍵設(shè)備漏洞數(shù)目,。網(wǎng)絡(luò)基礎(chǔ)運(yùn)行性主要指網(wǎng)絡(luò)本身的運(yùn)行狀態(tài),,能直接反映安全事件造成的影響,。因子有:主機(jī)CPU、內(nèi)存等資源消耗量,、子網(wǎng)流量增長率,、子網(wǎng)數(shù)據(jù)流總量、子網(wǎng)帶寬占用率,、數(shù)據(jù)丟包率,。威脅性側(cè)重描述各種網(wǎng)絡(luò)攻擊對網(wǎng)絡(luò)內(nèi)部產(chǎn)生的危害程度,主要統(tǒng)計(jì)已知攻擊、疑似攻擊和惡意代碼的數(shù)量,、頻率及危害度,。因子包括:報(bào)警數(shù)目、惡意代碼數(shù)量,、病毒木馬等的攻擊頻率,、數(shù)目及危害度。
2 灰色預(yù)測模型
灰色理論[7]主要通過對部分已知信息的生成,、開發(fā),、提取有價(jià)值的信息、實(shí)現(xiàn)對系統(tǒng)運(yùn)行規(guī)律的正確認(rèn)識從而達(dá)到科學(xué)的預(yù)測,。
2.1 灰色GM(1,,1)、GM(1,,N)模型
灰色預(yù)測模型中最基本的是GM(1,,1)模型,其預(yù)測的灰色微分方程為:
?。╥=1,,2,…N,,k=1,,2,…n)
其中,,為數(shù)據(jù)序列,,
為
的累加生成序列,a為發(fā)展系數(shù),,b為灰色作用量,;
模型背景值。讓
,,按最小二乘法擬合得
,。其中:
GM(1,N)模型是一種適合于建立各因子變量的動態(tài)關(guān)聯(lián)分析模型,,含N個因子序列的預(yù)測灰色微分方程為:
參數(shù)向量
可由B,、Y按最小二乘法計(jì)算,微分方程的離散解為:
對式(6)累減還原得擬合預(yù)測值,。
2.2 灰色背景值的改進(jìn)
上述模型的背景值[8]函數(shù)采取均值生成方法構(gòu)造,。而實(shí)際是在[k-1,k]上對式
兩邊求積分,。二者之間的差值是灰色模型精度不高的主要原因,;參考文獻(xiàn)[9]在序例具有高指數(shù)規(guī)律的情況下,,得到新的背景值構(gòu)造公式為:
基于此,本文設(shè)定:
當(dāng)0<-a≤0.3,,序列變化平穩(wěn)時,,采取均值生成方法構(gòu)造背景值函數(shù)。
當(dāng)0.3<-a≤0.8,,序列變化呈中間狀態(tài)時,,采用本文構(gòu)造的背景值:
參數(shù)l1、l2,、l3由粒子群算法進(jìn)行優(yōu)化,。
當(dāng)0.8<-a≤1時,原始序列呈高指數(shù)增長,,選取新背景值構(gòu)造函數(shù),。
3 結(jié)合灰色理論和BP神經(jīng)網(wǎng)絡(luò)的預(yù)測原理
灰色理論具有建模簡單、運(yùn)算方便等特點(diǎn),。神經(jīng)網(wǎng)絡(luò)具有自學(xué)習(xí),、自組織和自適應(yīng)能力,對非線性數(shù)據(jù)的處理能力較弱,,神經(jīng)網(wǎng)絡(luò)的特點(diǎn)恰好能對灰色模型進(jìn)行補(bǔ)充,。因此,以灰色模型的貧信息代替神經(jīng)網(wǎng)絡(luò)所需的大樣本,,以BP神經(jīng)網(wǎng)絡(luò)的非線性處理能力彌補(bǔ)灰色模型非線性擬合差的缺點(diǎn),,建立性能更優(yōu)的灰色神經(jīng)網(wǎng)絡(luò)模型。
預(yù)測算法步驟如下:
?。?)對歷史安全因子,、網(wǎng)絡(luò)安全態(tài)勢歷史序列無量綱歸一化處理。計(jì)算發(fā)展系數(shù)a,,依據(jù)a的大小選擇對應(yīng)的模型背景值函數(shù),。
(2)將安全因子數(shù)據(jù)輸入到GM(1,,1)模型中,,得到安全因子預(yù)測值。
?。?)結(jié)合歷史網(wǎng)絡(luò)安全態(tài)勢值,,將安全因子所有預(yù)測值輸入到GM(1,N)模型中,,得到網(wǎng)絡(luò)安全態(tài)勢預(yù)測值,、殘差
,。
?。?)確定訓(xùn)練樣本,、預(yù)測樣本數(shù)目,以安全因子序列所有預(yù)測值輸入BP神經(jīng)網(wǎng)絡(luò)的輸入端,、殘差作為輸出結(jié)果,、所有訓(xùn)練樣本通過BP神經(jīng)網(wǎng)絡(luò)的均方誤差為目標(biāo)對BP神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。最后用訓(xùn)練好的BP神經(jīng)網(wǎng)絡(luò)對殘差進(jìn)行預(yù)測,,得到殘差預(yù)測值,。
(5)對預(yù)測結(jié)果進(jìn)行殘差修正,,輸出最終網(wǎng)絡(luò)安全態(tài)勢預(yù)測值:
(9)
4 粒子群算法優(yōu)化模型背景值參數(shù)
4.1 粒子群算法
PSO粒子群算法屬于帶有全局策略和啟發(fā)性質(zhì)的群體智能進(jìn)化計(jì)算方法,。每個優(yōu)化問題的可行解都是搜索空間中的一個粒子。算法首先隨機(jī)生成一個粒子種群,,然后追隨當(dāng)前最優(yōu)粒子在種群中進(jìn)行迭代搜索,,直到達(dá)到要求,停止搜索,。種群粒子的速度,、位置進(jìn)化公式如下:
vid(t+1)=vid(t)+c1×rand()×(pbest-xid(t))+c2×rand()×(Gbest-xid(t))(10)
xid(t+1)=xid(t)+vid(t)(11)
其中,vid是粒子的速度,,維數(shù)為i×d維,,c1、c2為學(xué)習(xí)因子,,分別調(diào)節(jié)飛赴自身和鄰居的步長,,rand()是介于(0,1)之間的隨機(jī)數(shù),,xid(t)是粒子當(dāng)前位置,,pbest(t)代表粒子當(dāng)前最好位置,Gbest(t)代表種群當(dāng)前最好位置,,即全局最優(yōu)位置,。
4.2 PSO算法優(yōu)化背景值參數(shù)的步驟
算法設(shè)計(jì)思想:將背景值的所有參數(shù)映射成種群個體的位置。設(shè)定采用的適應(yīng)度函數(shù)(本文為灰色GM(1,,N)模型殘差平方和的倒數(shù),。搜尋使適應(yīng)度滿足要求的粒子位置,新生成的個體位置還原為背景值的參數(shù),,得到背景值最優(yōu)參數(shù)組合,。
算法步驟如下:
(1)隨機(jī)初始化背景值參數(shù)l1,、l2,、l3。
?。?)背景值參數(shù)映射為PSO種群粒子位置向量,。
?。?)隨機(jī)產(chǎn)生初始化種群(包括隨機(jī)種群數(shù)目M、速度,、位置),。
(4)依據(jù)粒子群算法更新粒子的速度和位置,,得到新的粒子位置和速度,。
(5)計(jì)算粒子位置映射的背景值參數(shù),、殘差和適應(yīng)度,。
(6)判斷適應(yīng)度是否滿足設(shè)定值,,如果滿足,,輸出當(dāng)前位置所對應(yīng)的背景值參數(shù),終止迭代,;否則,,繼續(xù)下一步。
?。?)比較粒子的當(dāng)前位置和歷史最優(yōu)位置,,若當(dāng)前位置較好,用當(dāng)前位置替換歷史最優(yōu)位置,;然后將粒子的個體最好位置與全局最優(yōu)位置做比較,,若粒子的個體值更好則記錄此位置為新的全局最優(yōu)位置。
?。?)迭代次數(shù)t=t+1,,如果t>Tmax,終止迭代,,否則,,轉(zhuǎn)到第(4)步。
通過PSO粒子群算法,,搜尋到最優(yōu)的背景值參數(shù)組合,,使灰色GM(1,N)模型的殘差最小,,從而得到精度最好的模型,。
5 實(shí)驗(yàn)分析
實(shí)驗(yàn)前本文采用參考文獻(xiàn)[10]的態(tài)勢評估方法結(jié)合安全因子對網(wǎng)絡(luò)安全態(tài)勢先進(jìn)行評估,以便獲取實(shí)驗(yàn)所需的網(wǎng)絡(luò)安全態(tài)勢數(shù)據(jù),。
5.1 實(shí)驗(yàn)準(zhǔn)備
本文搭建了由主機(jī),、路由器、交換機(jī),、服務(wù)器等組成的網(wǎng)絡(luò)進(jìn)行實(shí)驗(yàn),。
網(wǎng)絡(luò)中包含的受攻擊目標(biāo)分別為Web服務(wù)器,、備份數(shù)據(jù)庫、主數(shù)據(jù)庫,、DNS服務(wù)器、TCP服務(wù)器,。實(shí)驗(yàn)過程中的數(shù)據(jù)來源于路由器中的Snort入侵檢測信息,、Netflow數(shù)據(jù)流信息、主機(jī)的Nessus漏洞掃描信息,、Firewall日志信息,。實(shí)驗(yàn)時將SQL注入漏洞攻擊數(shù)據(jù)庫、SYN Flood攻擊TCP服務(wù)器,、Web服務(wù)器,、UDP Flood攻擊DNS服務(wù)器等,然后從網(wǎng)絡(luò)節(jié)點(diǎn)獲得所需的異常數(shù)據(jù),,在MATLAB7.0平臺進(jìn)行仿真實(shí)驗(yàn),。
實(shí)驗(yàn)參數(shù):設(shè)定預(yù)測周期為12 h,即通過前11個時間段的態(tài)勢值預(yù)測之后的1個時間段的態(tài)勢值,,選取訓(xùn)練樣本數(shù)為101,,預(yù)測樣本數(shù)為23。本次的粒子群算法中,,粒子種群初始規(guī)模M設(shè)定為100,,位置xid∈[0,1],、速度vid∈[-100,,100],最大迭代次數(shù)Tmax=1 000,、學(xué)習(xí)因子c1,、c2均為2,適應(yīng)度設(shè)定為:1 000,。對比不經(jīng)任何優(yōu)化處理的灰色GM(1,,1)模型、BP神經(jīng)網(wǎng)絡(luò)對網(wǎng)絡(luò)安全態(tài)勢進(jìn)行預(yù)測,。
5.2 實(shí)驗(yàn)結(jié)果
預(yù)測結(jié)果曲線圖如圖1所示,。
可以進(jìn)一步通過對模型得到的預(yù)測值計(jì)算殘差、相對殘差,、檢驗(yàn)?zāi)P偷臏?zhǔn)確性,。表1為精度檢驗(yàn)結(jié)果。
5.3 結(jié)果分析
從網(wǎng)絡(luò)安全態(tài)勢預(yù)測結(jié)果可以看出,,3種方法檢驗(yàn)結(jié)果誤差各有不同:灰色GM(1,,1)只能粗略地反映網(wǎng)絡(luò)安全態(tài)勢的總體趨勢,;BP神經(jīng)網(wǎng)絡(luò)預(yù)測結(jié)果誤差相對GM(1,1)模型小,,但是其訓(xùn)練樣本過大,,訓(xùn)練時間較長;對比GM(1,,1)模型,、BP神經(jīng)網(wǎng)絡(luò),本方法預(yù)測精度更高,。
6 結(jié)論
本文的方法在實(shí)際應(yīng)用中有兩方面的難點(diǎn):一是預(yù)測結(jié)果網(wǎng)絡(luò)安全因子的限制,,如果選取的安全因子不完全,會很大地影響網(wǎng)絡(luò)安全態(tài)勢的預(yù)測結(jié)果,,二是預(yù)測能力受安全因子預(yù)測能力的影響,,因而如何提高安全因子預(yù)測的準(zhǔn)確性將是下一步的工作重點(diǎn)。
參考文獻(xiàn)
[1] 王庚,,張景輝,,吳娜.網(wǎng)絡(luò)安全態(tài)勢預(yù)測方法的應(yīng)用研究[J].計(jì)算機(jī)仿真,2012,,29(2):98-101.
[2] 鄧聚龍.灰理論基礎(chǔ)[M].武漢:華中科技大學(xué)出版社,,2002.
[3] 謝麗霞,王亞超,,于巾博.基于神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)安全態(tài)勢感知[J].清華大學(xué)學(xué)報(bào),,2013,53(12):1751-1760.
[4] 汪材印.灰色關(guān)聯(lián)分析和支持向量機(jī)相融合的網(wǎng)絡(luò)安全態(tài)勢評估[J].計(jì)算機(jī)應(yīng)用研究,,2013,,30(6):1859-1862.
[5] 葉健健,文志誠,,吳欣欣,,等.基于多層次數(shù)據(jù)融合的網(wǎng)絡(luò)安全態(tài)勢分析方法研究[J].微型機(jī)與應(yīng)用,2015,,34(8):5-7,,11.
[6] 孫德衡.基于指標(biāo)融合的網(wǎng)絡(luò)安全態(tài)勢評估模型研究[D].西安:西北大學(xué),2012.
[7] 劉思峰,,謝乃明.灰色系統(tǒng)理論及其應(yīng)用[M].北京:科學(xué)出版社,,2008.
[8] 劉思峰,鄧聚龍.GM(1,,1)模型的適應(yīng)范圍[J].系統(tǒng)工程理論與實(shí)踐,,2000(5):121-124.
[9] 何慶飛,陳桂明,陳小虎,,等.基于改進(jìn)灰色神經(jīng)網(wǎng)絡(luò)的液壓泵壽命預(yù)測[J].中國機(jī)械工程,,2013,24(4):500-506.
[10] 王志平.基于指標(biāo)體系的網(wǎng)絡(luò)安全態(tài)勢評估研究[D].長沙:國防科學(xué)技術(shù)大學(xué),,2010.