李 鑫
(鄭州升達經(jīng)貿(mào)管理學(xué)院 信息工程學(xué)院, 河南 新鄭 451191)
隨著現(xiàn)代信息技術(shù)的快速進步和發(fā)展,Internet網(wǎng)絡(luò)已經(jīng)成為人們必不可少的生活和工作工具。物聯(lián)網(wǎng)和云計算的不斷普及,使得互聯(lián)網(wǎng)的觸及范圍越來越大。但是上述互聯(lián)網(wǎng)系統(tǒng)中的信息安全問題一直得不到有效解決?,F(xiàn)有的網(wǎng)絡(luò)安全保護技術(shù)主要為各種防火墻軟件,但是這些傳統(tǒng)的入侵檢測技術(shù)只適用于家庭和小型辦公場所,無法很好地解決超大規(guī)模網(wǎng)絡(luò)應(yīng)用的安全防護問題[1-3]。大規(guī)模網(wǎng)絡(luò)應(yīng)用的安全問題對國家來說意義重大,如果出現(xiàn)問題將會造成不可預(yù)知的嚴重后果。由于能很好地應(yīng)對大規(guī)模網(wǎng)絡(luò)的安全防護問題,實時網(wǎng)絡(luò)安全風(fēng)險預(yù)測引起了廣大研究人員的關(guān)注。
現(xiàn)階段網(wǎng)絡(luò)安全風(fēng)險預(yù)測的方法可以分為兩大類[4]:靜態(tài)預(yù)測和動態(tài)預(yù)測(實時評估)。目前,實時網(wǎng)絡(luò)風(fēng)險預(yù)測的研究還處在發(fā)展階段。作為一種新的技術(shù)手段,由于具有復(fù)雜性高、難度大和非線性等特征,實時網(wǎng)絡(luò)安全風(fēng)險預(yù)測的各種優(yōu)化方法逐步成為了學(xué)者們的研究熱點。文獻[5]通過RBF神經(jīng)網(wǎng)絡(luò)對非線性狀態(tài)進行分析,結(jié)合不同狀態(tài)之間的關(guān)系實現(xiàn)了安全風(fēng)險預(yù)測。文獻[6]提出了一種基于D-S證據(jù)理論的網(wǎng)絡(luò)安全風(fēng)險預(yù)測方案。文獻[7]提出了一種基于免疫的時間序列預(yù)測方法。該方法可以有效應(yīng)用于網(wǎng)絡(luò)安全問題。文獻[8]提出了一種改進小波神經(jīng)網(wǎng)絡(luò)預(yù)測方法,能對發(fā)電廠的污染物排放量進行量化評估。小波神經(jīng)網(wǎng)絡(luò)模型在各種預(yù)測應(yīng)用中表現(xiàn)出良好的性能。
在上述研究的基礎(chǔ)上,為了提高網(wǎng)絡(luò)安全風(fēng)險實時預(yù)測的準確性,提出了一種基于預(yù)測模型的網(wǎng)絡(luò)安全風(fēng)險實時預(yù)測方法。該方法首先根據(jù)網(wǎng)絡(luò)攻擊序列和安全形勢評估構(gòu)建預(yù)測模型,然后將小波神經(jīng)網(wǎng)絡(luò)預(yù)測算法應(yīng)用于攻擊強度觀測序列的數(shù)據(jù)分析,并選取Morlet小波函數(shù)作為激勵函數(shù)。仿真實驗結(jié)果顯示:相比其他預(yù)測方法,提出方法具有更高的網(wǎng)絡(luò)安全風(fēng)險預(yù)測準確性,能滿足互聯(lián)網(wǎng)環(huán)境下的各種信息安全的需求。
網(wǎng)絡(luò)安全風(fēng)險實時預(yù)測系統(tǒng)需要對網(wǎng)絡(luò)各節(jié)點的信息進行實時采集,以便感知規(guī)模網(wǎng)絡(luò)的安全狀態(tài)信息,從而評估和預(yù)測網(wǎng)絡(luò)安全風(fēng)險。該系統(tǒng)的框架結(jié)構(gòu)如圖 1所示。通過網(wǎng)絡(luò)節(jié)點信息和IDS報警日志可以完成數(shù)據(jù)采集[9]。本文提出的網(wǎng)絡(luò)安全實時風(fēng)險預(yù)測系統(tǒng)能夠?qū)W(wǎng)絡(luò)安全態(tài)勢進行風(fēng)險評估。
圖1 實時網(wǎng)絡(luò)安全風(fēng)險預(yù)測系統(tǒng)
假設(shè)可以通過N個狀態(tài)來表示不同的風(fēng)險安全等級,表示為S={s1,s2,…,sN}。利用X={x1,x2,…}表示狀態(tài)訪問序列,其中xt∈S表示在t時刻的訪問狀態(tài)。本文假設(shè)網(wǎng)絡(luò)資源的安全狀態(tài)模型為S={G,P,A,C},其中:狀態(tài)G表示處于安全狀態(tài)且沒有任何入侵行為發(fā)生;狀態(tài)P表示入侵者探測到了網(wǎng)絡(luò)系統(tǒng)中的主機,但是還沒開始進行入侵行為;狀態(tài)A表示網(wǎng)絡(luò)系統(tǒng)中的主機開始被入侵了,但還沒有供給成功;狀態(tài)C表示入侵者成功破壞了網(wǎng)絡(luò)系統(tǒng)中主機的安全防護,資產(chǎn)被入侵者成功破壞[10]。
設(shè)每一個傳感器k∈K均具有一個連續(xù)時間觀測序列W=(Z,Y),其中Z={Zt,t≥0}表示隨機過程,狀態(tài)集合為S={s1,s2,…,sN}。Y={Yt,t≥0}表示觀測過程。
為了簡單起見,本文用B來表示Bk。設(shè)隨機過程為Z={Zt,t≥0},當i≠j時,可以定義狀態(tài)轉(zhuǎn)移函數(shù)為:
pij(t)=P{Zh+t=sj|Zh=si}=
qij(t)+o(t)
(1)
(2)
小波神經(jīng)網(wǎng)絡(luò)(wavelet neural network,WNN)是小波分析與神經(jīng)網(wǎng)絡(luò)的結(jié)合體,其優(yōu)勢在于繼承了小波變換時域頻域局部化特征,同時又具有神經(jīng)網(wǎng)絡(luò)良好的自學(xué)習(xí)能力。因此,本文采用小波神經(jīng)網(wǎng)絡(luò)算法對復(fù)雜問題求解的網(wǎng)絡(luò)安全風(fēng)險進行預(yù)測。
小波神經(jīng)網(wǎng)絡(luò)主要分為2種類型:松散型和緊湊型。緊湊型使用小波基函數(shù)作為神經(jīng)網(wǎng)絡(luò)隱含層節(jié)點的激活函數(shù),既繼承了小波分析的優(yōu)勢,又能夠指導(dǎo)網(wǎng)絡(luò)的初始化及參數(shù)選擇,同時還能夠根據(jù)需要自由選擇合適的小波函數(shù)。因此,本文選擇使用緊湊型的小波神經(jīng)網(wǎng)絡(luò)。
本文采用的小波神經(jīng)網(wǎng)絡(luò)模型基本結(jié)構(gòu)如圖2所示[12]。
圖2 小波神經(jīng)網(wǎng)絡(luò)模型結(jié)構(gòu)
從圖2中可以看出,小波神經(jīng)網(wǎng)絡(luò)由m個輸入層節(jié)點、n個輸出層節(jié)點和s個隱含層節(jié)點構(gòu)成。其中φ表示一個單獨的函數(shù)φ(x)生成的小波基函數(shù)。φ可以通過變換與平移操作得到,計算方法如式(3)所示。
(3)
其中:φ(x)表示一個位于時間空間和頻率空間的母小波;向量aj={aj1,aj2,…,ajm}表示尺度參數(shù)和bj={bj1,bj2,…,bjm}表示轉(zhuǎn)換參數(shù);x={x1,x2,…,xm}表示小波神經(jīng)網(wǎng)絡(luò)的輸入。
神經(jīng)元j的網(wǎng)絡(luò)內(nèi)部活動可以通過式(4)來表示。
(4)
其中Wij表示輸入i和隱藏節(jié)點j之間的權(quán)重。通過運用母小波φ(v)來計算第j個神經(jīng)元的輸出。
本文選取Morlet小波函數(shù)作為激勵函數(shù)。Morlet母小波可通過式(5)計算得到,其函數(shù)波形如圖3所示。
圖3 Morlet母小波函數(shù)波形
(5)
第j個神經(jīng)元的輸出取決于:
(6)
顯然,隱藏層第j個單元取值由頻率參數(shù)aj和時間參數(shù)bj來決定。初始化小波的變換與平移參數(shù):
ai=0.2(xmax-xmin)
(7)
bj=0.5(xmax+xmin)
(8)
其中xmax、xmin分別表示最大和最小輸入值。
在小波神經(jīng)網(wǎng)絡(luò)的標準形式中,輸出表示為:
(9)
其中Wj表示第j個神經(jīng)元和輸出節(jié)點之間的權(quán)重。
本文采用反向傳播(BP)方法對小波神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練,以便找出導(dǎo)致誤差E的每個權(quán)重的百分比。一般通過式(10)計算得出誤差E的具體取值。此外,采用最陡下降法來最小化時間t產(chǎn)生的瞬時誤差。
(10)
其中:f表示模型輸出;d表示目標輸出。
網(wǎng)絡(luò)訓(xùn)練的目的是尋求完整矢量網(wǎng)絡(luò)參數(shù)權(quán)重w=(ai,bi,Wij,Wj),從而最小化誤差函數(shù)。本文采用迭代方法處理一個大小為N的訓(xùn)練樣本。首先在每次迭代t時計算權(quán)重向量的誤差導(dǎo)數(shù),然后通過式(11)對權(quán)重向量進行更新。
(11)
其中:η表示學(xué)習(xí)速率;μ表示常數(shù)動量項。μ能夠提高訓(xùn)練的速度,并且避免更新權(quán)重時產(chǎn)生偏移。
在權(quán)重向量中,基于誤差函數(shù)的偏導(dǎo)數(shù),對不同的參數(shù)進行更新。
(12)
(13)
然后得出,
ΔWij(t+1)=-η·e(t)·Wk·φk(xi(t))·
(14)
通過式(15)來更新隱藏節(jié)點和輸出節(jié)點之間的權(quán)重Wj。
(15)
(16)
ΔWj(t+1)=-η·e(t)·φj(vj(t))+
μ·ΔWj(t)
(17)
膨脹系數(shù)aj的更新方式如式(18)所示。
(18)
轉(zhuǎn)換系數(shù)bj的更新方式如式(19)所示。
(19)
具體算法步驟如圖4所示。
圖4 算法步驟
當?shù)螖?shù)達到最大數(shù)或者誤差e達到預(yù)先設(shè)定的閾值時,停止學(xué)習(xí)。在仿真實驗中,將迭代的最大次數(shù)和誤差閾值分別設(shè)定為100和10-5。
為了對提出基于預(yù)測模型的網(wǎng)絡(luò)安全風(fēng)險實時預(yù)測方法的有效性和可行性進行驗證,本文搭建了一個典型的互聯(lián)網(wǎng)環(huán)境實例并進行了仿真實驗。該實驗網(wǎng)絡(luò)拓撲中具有 3個信息服務(wù)節(jié)點,分別為 FTP服務(wù)器、WEB 服務(wù)器和HTTP 服務(wù)器。在該實驗網(wǎng)絡(luò)中,設(shè)置每個信息服務(wù)節(jié)點的權(quán)重分別為0.5、0.3和0.2。按照攻擊威脅度評估攻擊強度的級別,并通過查看 IDS 報警日志來獲取入侵攻擊的次數(shù)(單位時間為分鐘)。本文模擬入侵者在不同時間對服務(wù)器節(jié)點進行溢出攻擊或者惡意掃描。
本文通過風(fēng)險值來對節(jié)點的網(wǎng)絡(luò)安全風(fēng)險進行量化評估,以便比較不同模型的性能。在t時刻資產(chǎn)的風(fēng)險值可以表示為:
(20)
如果用h表示一個主機,Rh,t就表示主機h在t時刻的風(fēng)險值,那么所有節(jié)點的風(fēng)險值為
(21)
其中M表示整個網(wǎng)絡(luò)中主機的總數(shù)。
2種不同入侵方式的供給強度變化曲線如圖 5所示,從圖5中我們可以看出模擬實驗中惡意攻擊次數(shù)隨時間變化的不同結(jié)果,其中橫坐標為入侵時間,單位為分鐘,縱坐標為單位時間內(nèi)的攻擊次數(shù)。在20~80 min期間主要是惡意掃描攻擊,威脅程度較低,因此風(fēng)險評估值增長較慢也數(shù)值較小。在20~90 min期間,開始出現(xiàn)溢出攻擊,其威脅程度較高,因此風(fēng)險評估值達到第一個高峰。在52和77 min時,溢出攻擊的次數(shù)分別達到2個峰值。
實際風(fēng)險值與小波神經(jīng)網(wǎng)絡(luò)預(yù)測的比較結(jié)果如圖6所示??梢钥闯?,本文提出預(yù)測方法的精確度符合預(yù)期。采用GM(1,1)模型[13-14]、ARMA模型[15]和本文算法進行了網(wǎng)絡(luò)安全風(fēng)險預(yù)測,風(fēng)險值預(yù)測的結(jié)果如表1所示。從表1中可以看出,ARMA模型和本文算法的風(fēng)險預(yù)測結(jié)果均符合攻擊威脅等級變化。但是,相比ARMA模型本文算法的風(fēng)險值預(yù)測結(jié)果更加接近實際評估值。
圖5 攻擊強度變化曲線
圖6 實際風(fēng)險值與小波神經(jīng)網(wǎng)絡(luò)預(yù)測的比較
Actual risk valueGM(1,1)ARMAThis paper0.530.430.490.510.680.550.640.670.720.610.680.710.860.740.840.87
為了提高網(wǎng)絡(luò)安全風(fēng)險實時預(yù)測的準確性,提出了一種基于預(yù)測模型的網(wǎng)絡(luò)安全風(fēng)險實時預(yù)測方法。該方法首先根據(jù)網(wǎng)絡(luò)攻擊序列和安全形勢評估構(gòu)建預(yù)測模型。然后將小波神經(jīng)網(wǎng)絡(luò)預(yù)測算法應(yīng)用于攻擊強度觀測序列的數(shù)據(jù)分析,并選取Morlet小波函數(shù)作為激勵函數(shù)。仿真實驗結(jié)果顯示相比其他評估方法,提出方法具有更高的網(wǎng)絡(luò)安全風(fēng)險預(yù)測準確性。