張 萍唐新梅
(1.廣西二輕高級(jí)技工學(xué)校,廣西 南寧 530003;2.廣西經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院,廣西 南寧 530021)
隨著時(shí)代的發(fā)展,Internet已成為日常生活中的不可缺少的一部分,計(jì)算機(jī)網(wǎng)絡(luò)安全也因此成為一個(gè)廣受關(guān)注的重大問題.
傳統(tǒng)網(wǎng)絡(luò)的架構(gòu)是分布式控制的,由于其靈活性太差,軟件定義網(wǎng)絡(luò)SDN應(yīng)運(yùn)而生.其新技術(shù)轉(zhuǎn)控分離使網(wǎng)絡(luò)開放且靈活,實(shí)現(xiàn)了網(wǎng)絡(luò)的可編程性,非常便捷.Openflow交換機(jī)的使用者可以用開源的,簡單的協(xié)議與管理它,所以O(shè)penflow交換機(jī)的出現(xiàn)推動(dòng)了SDN的發(fā)展.[1]SDN的出現(xiàn)為網(wǎng)絡(luò)帶來了便利性,但是在SDN環(huán)境下,針對(duì)網(wǎng)絡(luò)入侵的檢測(cè)機(jī)制并沒有完善,依舊存在很多問題.在此環(huán)境下現(xiàn)有的DDos檢測(cè)方式,有著針對(duì)性不強(qiáng),識(shí)別率較差的嚴(yán)重問題.本文提出基于深度信念網(wǎng)絡(luò)的DDoS攻擊檢測(cè)方法,具有比傳統(tǒng)機(jī)器學(xué)習(xí)方法檢測(cè)精度更高的優(yōu)勢(shì).
一般DDoS攻擊首先得借助于多臺(tái)計(jì)算機(jī),將其聯(lián)合成一個(gè)攻擊平臺(tái),利用客戶/服務(wù)器技術(shù)對(duì)目標(biāo)主機(jī)進(jìn)行攻擊;其次利用多臺(tái)計(jì)算機(jī)同時(shí)對(duì)目標(biāo)主機(jī)發(fā)送數(shù)據(jù)或者請(qǐng)求,導(dǎo)致大量失效信息的出現(xiàn);這時(shí),目標(biāo)主機(jī)如果不能有效分辨攻擊類型,則會(huì)耗盡資源處理這些信息,導(dǎo)致控制器無法運(yùn)轉(zhuǎn),而且嚴(yán)重波及鄰接交換機(jī),逐漸出現(xiàn)不同程度的網(wǎng)絡(luò)癱瘓.[2]
DDoS的攻擊方法主要分為攻擊網(wǎng)絡(luò)帶寬資源、攻擊系統(tǒng)資源和攻擊應(yīng)用資源.攻擊網(wǎng)絡(luò)帶寬資源包括直接攻擊、發(fā)射和放大攻擊、反射攻擊和攻擊鏈路.攻擊系統(tǒng)資源包括TCP、SYN、PSH+ACK等洪水攻擊.攻擊應(yīng)用資源時(shí)有DNS洪水攻擊,Web服務(wù)攻擊,HTTP洪水攻擊等.我們可以看出DDoS的攻擊方式多種多樣,難以防范,如何做好SDN網(wǎng)絡(luò)入侵檢測(cè)非常重要.
深度信念網(wǎng)絡(luò)的架構(gòu)在計(jì)算時(shí),高一層的輸入通常都是第一層的輸入結(jié)果,每一層都是非線性計(jì)算單元.深度信念網(wǎng)絡(luò)可以從大量輸入數(shù)據(jù)中進(jìn)行特征提取,明辨輸入數(shù)據(jù)的結(jié)構(gòu)信息,常用于特征提取及分類識(shí)別.
2.2.1 受限玻爾茲曼機(jī)
如圖1所示,受限玻爾茲曼機(jī)(RBM,Restricted Boltzmann machine)每一個(gè)顯元和所有隱單元之間都存在連接,每一個(gè)隱元也與所有顯元之間存在連接,但每一層的隱元與隱元、顯元與顯元是互不連接的,這是RBM最顯著的特征.其中,每一個(gè)節(jié)點(diǎn)被使用時(shí)處于激活狀態(tài),節(jié)點(diǎn)未被使用時(shí)處于未激活狀態(tài),也只有激活與未激活這兩種狀態(tài).
圖1 RBM模型Fig.1 RBM model
RBM本質(zhì)是非監(jiān)督學(xué)習(xí).每一個(gè)隱元的取值決定于顯元的值,它與其他任何一個(gè)內(nèi)部的隱元互不相關(guān).
我們使用RBM的目的是用RBM提取數(shù)據(jù)的特征,那么相應(yīng)訓(xùn)練的目的就是使RBM表示的數(shù)據(jù)分布與原數(shù)據(jù)相同.
2.2.2 深度信念網(wǎng)絡(luò)
深度信念網(wǎng)絡(luò)模型如圖2所示.本文中將其作為判別模型.途中深度信念網(wǎng)絡(luò)有4個(gè)層,可視為3個(gè)RBM.如圖所示,可將任意相領(lǐng)兩層視為一個(gè)RBM,其實(shí)每兩層都是用RBM的計(jì)算方式進(jìn)行計(jì)算的.
可以用如下概率分布描述v和h之間的關(guān)系:
由式(1)我們可以看出DBN的參數(shù)訓(xùn)練過程利用誤差重建的方法是非監(jiān)督的.深度信念網(wǎng)絡(luò)的信念二字就體現(xiàn)在:整個(gè)網(wǎng)絡(luò)計(jì)算出概率最大的結(jié)果,并將概率最大的結(jié)果視為正確答案.這種方式適合訓(xùn)練大量樣本,精確找出所要的結(jié)果.數(shù)據(jù)運(yùn)算到頂層后會(huì)反向傳播,然后進(jìn)行全局微調(diào),改變權(quán)重的取值,使模型越來越適用于當(dāng)前應(yīng)用的情況.
圖2 DBN模型Fig.2 DBN model
識(shí)別依據(jù)的特征是手動(dòng)設(shè)計(jì)的還是機(jī)器自己歸納提取這一點(diǎn)很重要,它是傳統(tǒng)的機(jī)器學(xué)習(xí)方法一般是手動(dòng)設(shè)計(jì)特征比如SVM,深度學(xué)習(xí)是通過學(xué)習(xí)進(jìn)行特征提取,特征好壞對(duì)分類準(zhǔn)確率影響非常大.在深度信念網(wǎng)絡(luò)中,模型自動(dòng)從底層向頂層的進(jìn)行特征提取,經(jīng)過繁雜的運(yùn)算保證特征的質(zhì)量.放進(jìn)深度信念網(wǎng)絡(luò)的原始數(shù)據(jù)我們從交換機(jī)的流表中提取.主要注意幾個(gè)參數(shù):[3]
1)單流增長速率(growth rate of single flow).
2)不同端口增長速率(growth rate of different port).
3)流表平均數(shù)據(jù)分組量(average packets per flow).
4)流表平均比特?cái)?shù)(average bytes per flow).
5)流量平均持續(xù)時(shí)間(average durations per flow).
網(wǎng)絡(luò)入侵檢測(cè)系統(tǒng)現(xiàn)有的檢測(cè)思路一般是兩種:[4]第一種,將新的數(shù)據(jù)與正常的行為模式數(shù)據(jù)進(jìn)行對(duì)比,看是否存在顯著偏差,如果有,則判定為入侵;第二種,將新數(shù)據(jù)與已知的攻擊方式進(jìn)行對(duì)比,看是否是入侵,這也是最常用的方式.第一種方法可以用于新型攻擊的檢測(cè),我們可以通過深度信念網(wǎng)絡(luò)提取新數(shù)據(jù)的特征與正常行為模式的特征,然后進(jìn)行對(duì)比,看差異是否大,從而進(jìn)行入侵檢測(cè).
訓(xùn)練流程如圖3所示:
圖3 DBN訓(xùn)練流程Fig.3 training process of DBN
本文使用的DBN模型有三層受限玻爾茲曼機(jī)和一層BP層,易訓(xùn)練且檢測(cè)精度更高.深度信念網(wǎng)絡(luò)模型部署在SDN控制平面中,深度信念網(wǎng)絡(luò)的最下面兩層作為RBM,將輸入的數(shù)據(jù)特征訓(xùn)練,之后將第二層和第三層視為RBM訓(xùn)練,以此類推,逐步讓模型學(xué)習(xí)到數(shù)據(jù)的分布特征,三層訓(xùn)練完之后進(jìn)入BP,然后進(jìn)行全局的微調(diào),反復(fù)多次得到訓(xùn)練結(jié)果,[5]并可在頂層的輸出端加入分類器進(jìn)行分類.
基于深度信念網(wǎng)絡(luò)模型的DDoS攻擊檢測(cè)方法,優(yōu)勢(shì)在于深度信念網(wǎng)絡(luò)對(duì)數(shù)據(jù)的特征提取,與傳統(tǒng)的機(jī)器學(xué)習(xí)中的支持向量機(jī)模型相比,深度信念網(wǎng)路提取的特征大大優(yōu)于手動(dòng)設(shè)計(jì)的特征,在入侵檢測(cè)時(shí)結(jié)果當(dāng)然更加準(zhǔn)確.這種檢測(cè)方法屬于輕量級(jí)的檢測(cè)方法,SDN控制器中就可以直接部署.本文使用Sigmoid函數(shù)進(jìn)行歸一化處理.為避免超擬合的出現(xiàn)并提高模型的訓(xùn)練速度,可以對(duì)前進(jìn)傳遞沒有貢獻(xiàn)神經(jīng)元丟棄,不再參與反向傳播.[6]
用深度信念網(wǎng)絡(luò)對(duì)P300腦電信號(hào)進(jìn)行過特征提取,提取出來的特征幾乎與標(biāo)準(zhǔn)P300腦電信號(hào)一致.本文的入侵檢測(cè)方法使是將新數(shù)據(jù)特征與正常用戶行為模式特征進(jìn)行對(duì)比,這個(gè)方法是DDos入侵檢測(cè)的常用方法,用深度信念網(wǎng)絡(luò)進(jìn)行特征提取便是想利用其作為判別模型的優(yōu)異性.正常情況下,我們手動(dòng)設(shè)計(jì)的特征,并不足以應(yīng)付千變?nèi)f化的攻擊數(shù)據(jù),精確度不能一直保持較高水準(zhǔn).基于深度信念網(wǎng)絡(luò)的DDoS攻擊檢測(cè)解決了這個(gè)問題,SDN環(huán)境中輕量級(jí)的部署也是極其友好的.