尤方萍
(湖北工業(yè)大學(xué) 電氣與電子工程學(xué)院,湖北 武漢 430068)
近年來,網(wǎng)絡(luò)安全問題成為高校不得不面對的困境,如黑客攻擊、隱私泄露、木馬泛濫等。如何保障校園網(wǎng)絡(luò)安全成為眾多相關(guān)領(lǐng)域?qū)W者的重要研究方向。在眾多黑客攻擊手段中,分布式拒絕服務(wù)攻擊(Distributed Denial of Service,DDoS)是常見的網(wǎng)絡(luò)安全問題。當(dāng)前很多學(xué)者采用對DDoS攻擊檢測展開研究,如長短記憶網(wǎng)絡(luò)與改進殘差神經(jīng)網(wǎng)絡(luò)優(yōu)化的異常流量檢測方法、基于深度學(xué)習(xí)方法、基于小波分析的方法、基于行為特征進行快速學(xué)習(xí)的動態(tài)流量TOP-N排序方法、主成分分析與層次聚類相結(jié)合的方法、時間序列預(yù)測方法[1-7]。
由于用戶數(shù)據(jù)報協(xié)議(User Datagram Protocol,UDP)洪泛攻擊在DDoS攻擊中占比較高,國內(nèi)外一些學(xué)者對檢測UDP洪泛攻擊展開研究,傳統(tǒng)采用指紋識別方法,但是隨著特征庫不斷擴充,搜索比對攻擊指紋特征的時間越長,效果越來越差。在機器學(xué)習(xí)算法中,支持向量機(Support Vector Machine,SVM)是較好的適配算法,可以在小樣本、底維度的場景下,能夠得到較高的決策率[8-10]。本論文采用SVM算法來識別檢測UDP洪泛流量,首先論述了UDP洪泛攻擊的流量特征;然后給出基于SVM的UDP洪泛攻擊流量檢測方法;之后結(jié)合實驗環(huán)境去檢測該方法的有效性。
UDP洪泛攻擊屬于流量型攻擊,通過構(gòu)造大量偽造UDP報文,向攻擊目標(biāo)不斷發(fā)起請求,最終導(dǎo)致被攻擊服務(wù)器耗盡帶寬和硬件資源,從而造成拒絕提供正常服務(wù)的后果。
異常UDP流量和正常UDP流量存在諸多差異,具體說明如表1所示。

表1 正常UDP流量和異常UDP流量比較

表2 UDP流量特征
SVM最核心思想在于最優(yōu)分類面和核函數(shù)。
2.1.1 最優(yōu)分類面
最優(yōu)分類線能夠?qū)蓚€類別最大化的分隔,在高維空間形成最優(yōu)分類面。設(shè)樣本集合:(xi,yi),i=1,… ,n,xi,xi∈Rd,yi∈{+ 1,-1},根據(jù)f(x)=ωx+b,得到分類面方程為

使|f(x)|≥1,則f(x)=1的樣本里分類面最近。要使分類面對所有樣本都能正確分類,則:

此時分類間隔為2/||ω||,間隔最大等價于||ω||2最小。同時滿足公式(1)和公式(2),且公式(3)所示函數(shù)的最小值就是最優(yōu)分類面,即:

2.1.2 核函數(shù)方法
2017年6月,12歲的嘉琪在上海參加比賽,沒想到一舉獲得中國賽區(qū)總冠軍,得到了踏出國門的機會,高興之余媽媽嚴肅地對嘉琪說:“我允許你驕傲一天,但是你明天就要忘掉這件事,因為你后天就要期末考試了。”媽媽擔(dān)心街舞會影響嘉琪的學(xué)習(xí),去年小升初考試就在HHI比賽的后一周,媽媽原本想勸她停止練舞、專心備考,可就是拗不過她參賽的堅定決心。而嘉琪也很要強,做到了學(xué)習(xí)、跳舞兩不誤。因為跳舞,嘉琪整個人的狀態(tài)都非常積極向上,開心、樂觀、活力四射,她將街舞的“勁爆”從舞臺帶到了生活中。
核函數(shù)方法適用于原始空間中求簡單最優(yōu)分類面的非線性分類問題。本文選用應(yīng)用較為廣泛的徑向基函數(shù)(Radial Basis Function,RBF),公式為

其構(gòu)造的SVM判別函數(shù)如下:

式中:s個支持矢量xi可確定RBF的中心位置,s是中心的數(shù)目。
如圖1所示,基于SVM的UDP洪泛流量檢測模型包括4個模塊,即流量采集及特征提取模塊、SVM訓(xùn)練模塊、SVM分類模塊、UDP異常流量處理模塊。具體說明如下。

圖1 基于SVM的UDP洪泛流量檢測模型
(1)流量特征提取模塊。通過網(wǎng)絡(luò)抓包工具采集UDP網(wǎng)絡(luò)流量數(shù)據(jù),每隔單位時間(默認3 min)就對采集到的UDP報文根據(jù)表2所示特征進行逐項統(tǒng)計。統(tǒng)計結(jié)果將提交給SVM分類模塊進行識別。
(2)SVM訓(xùn)練模塊。將已知的帶有UDP攻擊標(biāo)簽的訓(xùn)練樣本集導(dǎo)入SVM訓(xùn)練模塊,通過SVM訓(xùn)練和樣本校驗,得到分類器和識別率;根據(jù)識別率對分類器調(diào)優(yōu),并再次訓(xùn)練和校驗;如此反復(fù),直至獲取較高的識別率和對應(yīng)參數(shù)。
(3)SVM分類模塊。經(jīng)由SVM訓(xùn)練模塊獲取的SVM分類器將作為該模塊的核心組件,接收特征提取模塊傳遞的數(shù)據(jù),進行分類,并將分類結(jié)果發(fā)送至異常流量處理模塊。
(4)異常流量處理模塊。根據(jù)SVM分類模塊的分類結(jié)果,進行告警。同時,使用UDP異常流量限流控制組件,對判定為遭受到UDP攻擊的目標(biāo)進行限流保護,對判定為發(fā)起UDP攻擊的源IP地址進行阻斷。
如圖2所示,本文使用普通PC計算機、服務(wù)器和萬兆交換機組建了實驗環(huán)境。交換機采用華為S9312核心交換機,各終端均采用千兆互聯(lián),充分保障數(shù)據(jù)鏈路冗余。各終端采用如下設(shè)置:(1)正常用戶1:普通PC計算機,人工操作,包括瀏覽網(wǎng)頁、調(diào)用nslookup、ping等產(chǎn)生基本網(wǎng)絡(luò)流量;(2)正常用戶群:使用OWASP DOS HTTP POST軟件模擬正常用戶的網(wǎng)站訪問和域名解析動作,產(chǎn)生HTTP流量和UDP域名解析流量;(3)攻擊者1:使用盧瓦UDP攻擊器,針對DNS服務(wù)器進行攻擊;(4)攻擊者2:使用烏龍寺UDP攻擊器,針對DNS服務(wù)器和Web服務(wù)器進行UDP攻擊;(5)攻擊者3:使用XOIC對全網(wǎng)進行無差別攻擊,攻擊流量為HTTP和UDP;(6)攻擊者4:使用dns2tcp針對DNS進行隧道攻擊。

圖2 網(wǎng)絡(luò)攻擊模擬實驗環(huán)境圖
本文采用LibSVM軟件進行來對UDP洪泛流量進行檢測。其中svmtrain用于訓(xùn)練模型,svmpredict用已有模型進行分類預(yù)測。svmtrain中參數(shù)包括SVM類型設(shè)置、核函數(shù)類型設(shè)置、核函數(shù)中參數(shù)設(shè)置、損失函數(shù)設(shè)置等。因此需要優(yōu)化參數(shù)達到最優(yōu)識別效果。本文使用準(zhǔn)確率(Accurency)、召回率(Recall)、精確率(Precision)來評價攻擊檢測性能。TP表示UDP洪泛攻擊流量被正確檢測的次數(shù),TN表示正常UDP流量被正確檢測的次數(shù),F(xiàn)P表示UDP洪泛攻擊流量被錯誤檢測為正常UDP流量的次數(shù),F(xiàn)N表示正常UDP流量被錯誤檢測為UDP洪泛攻擊流量的次數(shù),則準(zhǔn)確率、召回率、精確率以及F1計算公式為

實驗數(shù)據(jù)如表3所示,訓(xùn)練集和測試集的數(shù)據(jù)都從如圖2所示網(wǎng)絡(luò)環(huán)境獲得。訓(xùn)練集數(shù)據(jù)為30 h網(wǎng)絡(luò)流量數(shù)據(jù),測試集為112 h網(wǎng)絡(luò)流量數(shù)據(jù)。由于UDP流量特征提取是默認每3 min提取1次,因此訓(xùn)練集的UDP流量特征記錄數(shù)有600條,測試集中有2 240條。

表3 網(wǎng)絡(luò)樣本數(shù)據(jù)信息
表3中,異常UDP流量特征記錄中與源IP和端口相關(guān)的UDP報文均算異常UDP報文,即一次UDP洪泛攻擊。
圖3是在圖2網(wǎng)絡(luò)環(huán)境中112 h網(wǎng)絡(luò)流量數(shù)據(jù)的UDP洪泛攻擊檢測統(tǒng)計圖,并給出基于SVM的UDP洪泛流量檢測與模擬UDP洪泛攻擊對比統(tǒng)計結(jié)果,其中藍色柱狀數(shù)據(jù)顯示每2 h進行模擬UDP洪泛攻擊的UDP報文數(shù);而紅色柱狀數(shù)據(jù)顯示每2 h基于SVM的UDP洪泛流量檢測的UDP洪泛攻擊報文數(shù)。這些信息均通過圖2中各種模擬攻擊者統(tǒng)計獲取。

圖3 基于SVM的UDP洪泛流量檢測與模擬UDP洪泛攻擊對比統(tǒng)計圖
根據(jù)圖3可知,基于SVM的UDP洪泛流量檢測呈現(xiàn)以下特點。
(1)對于短周期時間內(nèi)(如3個單位時間組成的短周期)UDP波動較大的情況下,容易產(chǎn)生漏報,尤其在UDP攻擊呈斷崖式降低時,漏報率較大;
(2)對于連續(xù)單位時間,UDP攻擊呈持續(xù)增長的情況,會產(chǎn)生少量誤報,誤報情況不足以影響用戶正常使用網(wǎng)絡(luò);
(3)對于趨于平穩(wěn)的UDP攻擊,SVM可以達到較高識別率,偶爾產(chǎn)生誤報和漏報,但不足以影響用戶正常使用網(wǎng)絡(luò);
(4)對于趨于平穩(wěn)的UDP攻擊突然呈現(xiàn)斷崖式降低的情況,SVM出現(xiàn)較高誤報率,但會在2~3個單位時間后趨于正常。
基于SVM的UDP洪泛流量檢測結(jié)果如表4所示。

表4 基于SVM的UDP洪泛流量檢測結(jié)果
通過表4可看出,基于SVM的UDP洪泛流量檢測準(zhǔn)確率較高,精確率也較好,召回率檢測結(jié)果一般,F(xiàn)1值較好。要盡量減少正常UDP流量被錯誤檢測為UDP洪泛攻擊流量的次數(shù)。
本文主要論述了UDP洪泛攻擊的流量特征,并給出基于SVM的UDP洪泛攻擊流量檢測方法,實驗結(jié)果表明該方法的有效性。未來,筆者將對DDoS其他攻擊方式如TCP洪泛攻擊流量檢測與控制展開進一步研究。