本發(fā)明涉及一種計算機網(wǎng)絡(luò)安全技術(shù),尤其是針對低速率拒絕服務(wù)(Low-rate Denial of Service,LDoS)攻擊的檢測,可以高準確率的檢測出攻擊。
背景技術(shù):
低速率拒絕服務(wù)LDoS攻擊是一種新型的拒絕服務(wù)(Denial of Service,DoS)攻擊方式。自LDoS攻擊被發(fā)現(xiàn)的那一天起,它就一直是網(wǎng)絡(luò)安全領(lǐng)域的研究熱點。LDoS攻擊的本質(zhì)是利用網(wǎng)絡(luò)系統(tǒng)中自適應(yīng)機制所存在的漏洞,造成虛假擁塞,迫使TCP連接的服務(wù)質(zhì)量大大降低。據(jù)統(tǒng)計,網(wǎng)絡(luò)中80%以上的流量是TCP,因此,LDoS攻擊會產(chǎn)生巨大的威脅。LDoS攻擊不需一直維持很高的攻擊速率,只需在固定的周期發(fā)送高速率的短脈沖攻擊流。因此,LDoS攻擊的平均速率低,甚至低于正常的網(wǎng)絡(luò)流量。這種特點使得LDoS攻擊具有很強的隱蔽性,傳統(tǒng)的檢測方法難以奏效。
雖然LDoS攻擊有很多變種,但它們都是利用網(wǎng)絡(luò)協(xié)議和網(wǎng)絡(luò)服務(wù)的漏洞。Kuzmanovic等人提出了一種叫做地鼠攻擊的LDoS攻擊方式。攻擊者發(fā)送與RTO相同周期的高速矩形脈沖流,使TCP端系統(tǒng)頻繁的進入超時狀態(tài)。Guirguis等人研究了另一種類型的LDoS攻擊稱為RoQ攻擊。RoQ攻擊利用網(wǎng)絡(luò)自適應(yīng)機制的漏洞,降低網(wǎng)絡(luò)的服務(wù)質(zhì)量。此外,他們采用一種控制理論模型和相關(guān)指標來量化這些漏洞,并評估對TCPRED自適應(yīng)機制的潛在損害。Tang等研究了LDoS攻擊對反饋控制系統(tǒng)的威脅。他們建立了一個ON/OFF模型來描述系統(tǒng)的攻擊。證明LDoS攻擊可以造成ON/OFF系統(tǒng)處于不穩(wěn)定的狀態(tài)。此外,他們采用了Web服務(wù)器和IBMNotes服務(wù)器做攻擊性能的評估。Luo等進一步推導(dǎo)了LDoS攻擊的數(shù)學(xué)模型,用于評估攻擊的影響和提取攻擊特征。該模型是基于TCP的擁塞窗口,能揭示一些LDoS攻擊和網(wǎng)絡(luò)環(huán)境之間的相互作用關(guān)系。上述對于LDoS模型或性能的研究為LDoS攻擊檢測的研究提供堅實的基礎(chǔ)。
最近許多研究表明,多重分形理論有助于分析在網(wǎng)絡(luò)流量在小時間尺度上的特征。TCP協(xié)議的擁塞控制機制是導(dǎo)致網(wǎng)絡(luò)流量多重分形特征的主要因素。當LDoS攻擊發(fā)出,受害網(wǎng)絡(luò)頻繁的進行擁塞控制(如超時重傳時間,快速重傳,快速恢復(fù))。在這種情況下,網(wǎng)絡(luò)的多重分形特性會出現(xiàn)不尋常特征,這可作為識別的LDoS攻擊流量的基礎(chǔ)?;谏鲜龇治觯W(wǎng)絡(luò)流量分為兩類:正常網(wǎng)絡(luò)流量和LDoS攻擊流量。LDoS攻擊流量的識別可以被視為一個網(wǎng)絡(luò)流量分類問題。這樣分類的目標是通過學(xué)習(xí)訓(xùn)練集的數(shù)據(jù),建立一個分類模型來預(yù)測未知的流量類別。組合神經(jīng)網(wǎng)絡(luò)是一種更優(yōu)秀的分類器,能更好的分辨這兩類流量。
到目前為止,檢測LDoS攻擊的主要方法是利用信號處理技術(shù)分析網(wǎng)絡(luò)流量的時頻域特征。Chen等人提出了一種檢測周期LDoS攻擊的頻域分析方法。首先對網(wǎng)絡(luò)包數(shù)量進行采樣,然后計算包個數(shù)序列的歸一化累積功率譜密度(NCPSD),在固定頻點通過閾值比較法確定是否發(fā)生LDoS攻擊。該方法實現(xiàn)了多個路由器協(xié)同檢測,只需要一點時間來成功檢測LDoS攻擊。Luo等發(fā)現(xiàn)LDoS攻擊導(dǎo)致上行TCP流量和下行ACK流量異常波動?;诖?,他們利用離散小波變換(DWT)和CUSUM法檢測的變化點。實驗結(jié)果表明,該方法能夠有效的鑒別LDoS攻擊,具有較低的時間復(fù)雜度。
現(xiàn)有的基于信號處理識別方法通常有三大缺點:1)這些方法主要分析上行或下行流量,沒有提取LDoS攻擊的本質(zhì)特征。一個聰明的攻擊者可以通過隱藏已知的流量特征逃避檢測。2)這些方法的結(jié)果對檢測參數(shù)的選擇很敏感,因此,隨著網(wǎng)絡(luò)規(guī)模的擴大和網(wǎng)絡(luò)帶寬的增加,檢測的準確性和效率將會大大降低。3)在實際網(wǎng)絡(luò)中經(jīng)常出現(xiàn)的一些正常隨機突發(fā)流會影響這些算法的檢測性能,呈現(xiàn)出較低的檢測概率,更高的漏警率和更高的虛警率。
本專利設(shè)計了一種新的方法來識別LDoS攻擊流量。該方法依賴于LDoS攻擊流量的多重分形特征。將小波變換和神經(jīng)網(wǎng)絡(luò)相結(jié)合使用形成一種新的LDoS攻擊識別方法。首先,對不同的網(wǎng)絡(luò)流量(正常網(wǎng)絡(luò)流量和LDoS攻擊流量)進行多重分形分析,使用離散小波變換獲得網(wǎng)絡(luò)流量的小波能量譜系數(shù)。然后,設(shè)計兩層的組合神經(jīng)網(wǎng)絡(luò)模型來分類小波能量頻譜系數(shù),有類似行為的屬于同一類網(wǎng)絡(luò)流量,而不同行為的屬于不同類網(wǎng)絡(luò)流量。大量的實驗證明,所設(shè)計的方法優(yōu)于其他檢測方法,有更高的識別率,較低的虛警率,和較低的漏警率。
技術(shù)實現(xiàn)要素:
在受害端采集網(wǎng)絡(luò)流量(圖1),將所采集的數(shù)據(jù)進行db五階小波變換,一個網(wǎng)絡(luò)流量信號X(t)可以被尺度函數(shù)和小波函數(shù)表示:
其中,是尺度系數(shù),dj,k是小波系數(shù)。
多重分形可以反應(yīng)小時間尺度上的網(wǎng)絡(luò)流量特征,而小波能量譜可以用來評估多重分形特征。假設(shè)X(t)是多重分形過程,dj,k是小波系數(shù),小波能量譜系數(shù)μj為dj,k的平方均值:
nj是小波系數(shù)在尺度j下的個數(shù),μj是可用帶寬在2-1頻率在2-1ω0能量譜系數(shù)。得出μj后,對μj進行零均值化處理:
其中J是最大的時間尺度。這些就是標準化小波能量譜系數(shù)(Normalized Wavelet Energy Spectrum Coefficients,NWESCs)。NWESCs作為神經(jīng)網(wǎng)絡(luò)的輸入數(shù)據(jù)。
設(shè)計組合神經(jīng)網(wǎng)絡(luò)模型。神經(jīng)網(wǎng)絡(luò)是一種典型的機器學(xué)習(xí)算法,而組合神經(jīng)網(wǎng)絡(luò)比單神經(jīng)網(wǎng)絡(luò)模型的精度要高。組合神經(jīng)網(wǎng)絡(luò)是基于堆棧泛化理論的,即前一層的預(yù)測結(jié)果作為后一層的輸入,并在最后輸出預(yù)測值?;谏鲜隼碚?,建立一個兩層的組合神經(jīng)網(wǎng)絡(luò)模型。因為有兩類數(shù)據(jù)(正常流量和LDoS流量),因此第一層包含兩個子網(wǎng)絡(luò),而第二層網(wǎng)絡(luò)的輸入數(shù)據(jù)是來自第一層的輸出,兩層訓(xùn)練目標是相同的。
對于組合神經(jīng)網(wǎng)絡(luò)的每一層,采用MLPNN(Multilayer Perceptron Neural Network)模型。對于隱含層的每一個神經(jīng)元j,輸出yj是輸入信號xi與權(quán)值wji相乘求和的函數(shù):
yj=f(∑wjixi)
f是一個激活函數(shù),它可以把所有信號的總和轉(zhuǎn)換為一個神經(jīng)元,本專利選用S型函數(shù)作為隱含層和輸出層的激活函數(shù)。后向?qū)W習(xí)算法用于訓(xùn)練多層神經(jīng)網(wǎng)絡(luò),在后向?qū)W習(xí)算法中,均方誤差作為期望與實際輸出的誤差E,可以表示為:
ydj是期望輸出神經(jīng)元,yj是實際輸出神經(jīng)元。在第一層和第二層神經(jīng)網(wǎng)絡(luò)中,Levenberg-Marquardt優(yōu)化算法可以最快的是E減小。將所分類數(shù)據(jù)分別作為訓(xùn)練序列進入二層BP神經(jīng)網(wǎng)絡(luò),將訓(xùn)練好的網(wǎng)絡(luò)保存,做為分類器使用。
附圖說明
圖1為TCP流量分布圖,(a)表示正常情況,(b)表示有LDoS攻擊時的流量分布圖;
圖2為實驗環(huán)境拓撲圖;
圖3為小波能量譜比較圖,(a)表示上行流量,(b)表示下行流量,(c)表示雙向流量;
圖4為隱含層神經(jīng)元個數(shù)比較圖;
圖5為組合神經(jīng)網(wǎng)絡(luò)輸出圖,(a)為上行輸出,(b)為下行輸出,(c)為雙向輸出,(d)為上行+下行輸出,(e)為上行+下行+雙向輸出;
圖6為本專利實驗方法流程圖。
具體實施方法
1.首先驗證LDoS攻擊檢測效果,利用test-bed搭建實際實驗環(huán)境。圖2為實驗環(huán)境的拓撲圖。其中,有4個客戶端,一個攻擊端,一個FTP服務(wù)器,瓶頸鏈路帶寬為10Mbps,其余帶寬為100Mbps。FTP服務(wù)器基于TCP協(xié)議,因此服務(wù)端為受害端,用戶從FTP服務(wù)器下載資源。實驗中,LDoS產(chǎn)生工具發(fā)送基于UDP的脈沖,阻止交換機和路由器間的瓶頸鏈路。攻擊參數(shù)為:脈寬300ms,速率10Mbps,周期1100ms。采集到的流量數(shù)據(jù),如圖1所示。
2.采集到數(shù)據(jù)后,對每組數(shù)據(jù)進行特征提取。對所采集數(shù)據(jù)用五階db小波作為母函數(shù),經(jīng)研究,由于在不同時間尺度上的小波能量譜系數(shù)的統(tǒng)計特性,小波分解的層次越多,就能更好的反映網(wǎng)絡(luò)流量的特點,由于識別算法的效率限制,分解層次不能無限大。根據(jù)測試結(jié)果,小波能量譜五層分解后有最小的偏差。因此,網(wǎng)絡(luò)流量被分解為五層小波系數(shù),并計算相應(yīng)的能量譜。再對分解后的小波譜系數(shù)進行零均值標準化,對標準化后的小波譜系數(shù)進行分組,按以下規(guī)則分類:
1)只有上行流量的NWESCs;
2)只有下行流量的NWESCs;
3)只有雙向流量的NWESCs;
4)有上行+下行流量的NWESCs;
5)有上行+下行+雙向流量的NWESCs。
其中每組各有20個數(shù)據(jù)(正常和攻擊各10個),得到NWESCs分類圖,如圖3所示,可以反映出攻擊和正常流量的尺度特性的不同。
3.對兩層組合神經(jīng)網(wǎng)絡(luò)建模,其中兩層網(wǎng)絡(luò)的學(xué)習(xí)率、訓(xùn)練目標和迭代次數(shù)分別均為0.01,0.001和500。根據(jù)實驗結(jié)果,如圖4所示,第一層神經(jīng)元個數(shù)為20,第二層為25個。輸出標準為:正常序列輸出為(1,0),異常(攻擊)序列輸出為(0,1)。
4.將分類好的數(shù)據(jù)各取出一組作為訓(xùn)練序列,分別訓(xùn)練神經(jīng)網(wǎng)絡(luò),將達到目標后的神經(jīng)網(wǎng)絡(luò)保存,可以得到符合要求的分類器。訓(xùn)練成功的輸出序列如圖5所示。
對應(yīng)步驟2不同的輸入類型,采用更多的數(shù)據(jù)進入分類器,可以得到每類輸入的檢測性能如下表所示。
從上表,我們可以觀察到,對于采用單向流量NWESCs的LDoS攻擊流量識別,它有一定的局限性。方案1的識別率,虛警率,漏警性率分別為95.7%、4.3%和6.7%,且方案2的識別率,虛警率和漏警率分別為90.4%、9.6%和8%。這些不理想的識別結(jié)果的單向流量表明攻擊流量會出現(xiàn)類似的多重分形特征。例如,一些突發(fā)流量在網(wǎng)絡(luò)上可能會導(dǎo)致錯誤的判斷。相比之下,方案3,4,和5可以更準確地確定LDoS攻擊流量。方案3,由于多重分形特性的差異不同的雙向流量的增加,它提高了識別性能。方案4,使用上行和下行的所有NWESCs,從而使特征向量的數(shù)目增加,有準確的識別結(jié)果。方案5,它結(jié)合方案3和方案4的特征向量,從而獲得最佳的識別率,虛警率和漏警率分別為99.6%,0.4%,和1.3%。