













摘要針對DDoS網(wǎng)絡(luò)流量攻擊檢測效率低及誤報(bào)率高的問題,本文提出一種基于離散小波變換(Discrete Wavelet Transform,DWT)和自適應(yīng)知識(shí)蒸餾(Adaptive Knowledge Distillation,AKD)自動(dòng)編碼器神經(jīng)網(wǎng)絡(luò)的DDoS攻擊檢測方法.該方法利用離散小波變換提取頻率特征,由自動(dòng)編碼器神經(jīng)網(wǎng)絡(luò)進(jìn)行特征編碼并實(shí)現(xiàn)分類,通過自適應(yīng)知識(shí)蒸餾壓縮模型,以實(shí)現(xiàn)高效檢測DDoS攻擊流量.研究結(jié)果表明,該方法對代理服務(wù)器攻擊、數(shù)據(jù)庫漏洞和TCP洪水攻擊、UDP洪水攻擊具有較高的檢測效率,并且具有較低的誤報(bào)率.
關(guān)鍵詞DDoS攻擊;離散小波變換;自適應(yīng);知識(shí)蒸餾;自動(dòng)編碼器
中圖分類號(hào)TP393 文獻(xiàn)標(biāo)志碼A
0 引言
在當(dāng)前網(wǎng)絡(luò)環(huán)境下,DDoS(Distributed Denial of Service)攻擊仍然是極具威脅的網(wǎng)絡(luò)攻擊[1].DDoS攻擊者可以利用網(wǎng)絡(luò)中可用的多臺(tái)受損設(shè)備,向受害者服務(wù)器發(fā)送大量隨機(jī)源IP地址的虛假報(bào)文,以中斷用戶服務(wù)[2].
DDoS攻擊檢測一般基于統(tǒng)計(jì)學(xué)習(xí)和機(jī)器學(xué)習(xí)方法.統(tǒng)計(jì)學(xué)習(xí)[3]方法通過定義閾值來區(qū)分DDoS攻擊流量和正常流量.雖然統(tǒng)計(jì)學(xué)習(xí)方法簡單實(shí)用,但考慮到網(wǎng)絡(luò)流量的動(dòng)態(tài)特性[4],定義閾值具有一定的挑戰(zhàn)性,并且統(tǒng)計(jì)學(xué)習(xí)方法通常比基于機(jī)器學(xué)習(xí)的方法有著更高的誤報(bào)率.基于機(jī)器學(xué)習(xí)[5]的技術(shù)是DDoS攻擊檢測最有效的方法之一,這些技術(shù)通常被分為有監(jiān)督學(xué)習(xí)和無監(jiān)督學(xué)習(xí).有監(jiān)督學(xué)習(xí)需要一些帶標(biāo)簽的數(shù)據(jù)來訓(xùn)練模型,而無監(jiān)督學(xué)習(xí)[6]在訓(xùn)練過程中不需要任何帶標(biāo)簽的數(shù)據(jù).自動(dòng)編碼器[7]神經(jīng)網(wǎng)絡(luò)就是利用了無監(jiān)督學(xué)習(xí)技術(shù),這類神經(jīng)網(wǎng)絡(luò)能夠在模型執(zhí)行結(jié)束時(shí)重新生成輸入數(shù)據(jù).
在DDoS攻擊檢測過程中為模型訓(xùn)練提取特征是與機(jī)器學(xué)習(xí)有關(guān)的一個(gè)重要問題.網(wǎng)絡(luò)流量具有各種周期性的組成部分[8],例如TCP協(xié)議的擁塞控制機(jī)制以及往返延遲時(shí)間.此外,很多研究證明DDoS攻擊流量具有周期性特征[9],這種周期性特征可以用來區(qū)分DDoS攻擊流量和正常流量.分析周期性最佳的方法是頻域分析[10],雖然當(dāng)前DDoS攻擊檢測有著不同的研究,但所采用的特征大多基于時(shí)域分析[11].然而,在利用時(shí)域分析對突增的正常流量與DDoS攻擊流量進(jìn)行分析時(shí),結(jié)果是相似的,正常的突增流量作為一種合法的網(wǎng)絡(luò)流量,是由成千上萬的合法用戶同時(shí)訪問一個(gè)Web服務(wù)器構(gòu)成的,因?yàn)镈DoS攻擊流量與正常流量之間相似度很高,可能會(huì)產(chǎn)生很高的誤報(bào)率.此外,DDoS攻擊流量生成工具可以使DDoS攻擊流量盡可能與正常流量相似,從而降低檢測精度.但是,這些因素并不影響流量的周期性,因?yàn)橥辉龅恼A髁侩S著客戶端數(shù)量動(dòng)態(tài)變化,產(chǎn)生的流量會(huì)不斷波動(dòng),而DDoS攻擊流量則相對穩(wěn)定.因此,分析流量的周期性,利用頻域分析得到的特征,可以考慮為解決誤報(bào)率過高的問題提供依據(jù).
從網(wǎng)絡(luò)流量表中收集統(tǒng)計(jì)特征來訓(xùn)練模型已經(jīng)是一種通用的方法,文獻(xiàn)[12]通過從交換機(jī)中應(yīng)用ANOVA(Analysis of Variance)方法提取統(tǒng)計(jì)特征,并使用不同分類器對選擇的特征進(jìn)行性能評(píng)估,最終確定了檢測DDoS攻擊的最佳特征集,得到很好的效果.傳統(tǒng)的利用統(tǒng)計(jì)學(xué)習(xí)的方法,大多還會(huì)用到熵.結(jié)合熵的使用,令大多數(shù)基于統(tǒng)計(jì)學(xué)習(xí)的方法檢測實(shí)現(xiàn)高準(zhǔn)確率.因此,利用熵的DDoS攻擊檢測方法也被擴(kuò)展到當(dāng)前的網(wǎng)絡(luò)環(huán)境當(dāng)中.文獻(xiàn)[13]提出一種基于DDoS攻擊和正常流量之間熵值變化的防御機(jī)制,并且通過該機(jī)制可以有效減少特征維度和計(jì)算開銷,實(shí)現(xiàn)了高效的防御.
雖然通過統(tǒng)計(jì)特征和信息熵的使用,已經(jīng)提出了很多成功的方法,但是,在某些情況下可能會(huì)出現(xiàn)誤報(bào)率過高的情況[14].因此,通過將信息熵和機(jī)器學(xué)習(xí)結(jié)合的方法,可以很好地緩解誤報(bào)率過高的問題.文獻(xiàn)[15]提出PSO-BP神經(jīng)網(wǎng)絡(luò)結(jié)合熵的DDoS攻擊檢測方法,通過在交換機(jī)上對流量計(jì)算熵值進(jìn)行預(yù)檢測,并提取異常交換機(jī)的統(tǒng)計(jì)特征,檢測DDoS攻擊是否發(fā)生.該方法不僅提高了檢測效率,而且減少了誤報(bào)率.
現(xiàn)有的DDoS攻擊檢測模型大多能實(shí)現(xiàn)高準(zhǔn)確率[16-19],但是在實(shí)際檢測過程中,檢測速度往往無法與攻擊速度持平甚至小于攻擊速度,導(dǎo)致無效檢測.因此,將模型壓縮的方法被研究并使用[20].現(xiàn)在研究者大多從特征降維方面減少模型的參數(shù)來增加檢測效率,例如文獻(xiàn)[21]提出一種正方形草圖的特征構(gòu)造方法,通過設(shè)計(jì)多維網(wǎng)絡(luò)流草圖結(jié)構(gòu)和網(wǎng)絡(luò)流測量方法,結(jié)合一種新的低速率DDoS攻擊檢測方法(LDDM)對DDoS攻擊進(jìn)行檢測.該方法不需要提取大量的統(tǒng)計(jì)特征,通過K-L散度來對比異常草圖和正常草圖之間的區(qū)別,并取得良好的檢測效率以及較低的誤報(bào)率,但是檢測精度不高.
針對當(dāng)前DDoS攻擊模型結(jié)合統(tǒng)計(jì)特征的方法導(dǎo)致誤報(bào)率高,以及模型檢測效率低的問題,本文提出一種基于離散小波變換(Discrete Wavelet Transform,DWT)和自適應(yīng)知識(shí)蒸餾(Adaptive Knowledge Distillation,AKD)自動(dòng)編碼器的DDoS攻擊檢測方法.按照時(shí)間序列對網(wǎng)絡(luò)流量應(yīng)用離散小波變換獲得頻域特征,有效區(qū)分攻擊流量和正常流量,達(dá)到降低誤報(bào)率的目的.結(jié)合自動(dòng)編碼器神經(jīng)網(wǎng)絡(luò)模型,在保證對DDoS攻擊檢測準(zhǔn)確性的同時(shí),有效實(shí)現(xiàn)非線性表達(dá)降維特征.通過自適應(yīng)知識(shí)蒸餾將模型壓縮,提高模型的擬合速度,并實(shí)現(xiàn)增加檢測效率的目的.
1 研究方法
1.1 頻域分析和離散小波變換
在頻域分析中,傅里葉變換(FT)[22]是分析信號(hào)最常用的變換技術(shù)之一,但當(dāng)信號(hào)具有非平穩(wěn)頻率時(shí),傅里葉變換不適合進(jìn)行頻域分析.為了解決這個(gè)問題,對信號(hào)進(jìn)行短期傅里葉變換(STFT),它將原始信號(hào)劃分為一些平穩(wěn)的子窗口,然后對每一子窗口進(jìn)行傅里葉變換.短期傅里葉變換的主要困難是窗口大小的選擇,它需要在時(shí)間和頻率之間進(jìn)行權(quán)衡.當(dāng)選擇較窄的窗寬時(shí),在時(shí)間段上獲得了更多的頻率,但失去了頻率與時(shí)間的對應(yīng)關(guān)系.離散小波變換(DWT)[23]被認(rèn)為是短期傅里葉變換的替代方法,因?yàn)檫@種方法提供了讓信號(hào)和時(shí)間、頻率相互對應(yīng)的方法.此外,由DWT在時(shí)間和頻率上以不同的分辨率分析序列時(shí),可以通過增加粒度來獲得攻擊流量和正常流量的近似分量和細(xì)節(jié)分量.因此本文采用DWT作為特征提取技術(shù).離散小波為機(jī)器學(xué)習(xí)提供了更合適的特征.
DWT分為濾波和采樣兩個(gè)步驟.濾波是通過對輸入信號(hào)應(yīng)用低通濾波器和高通濾波器來實(shí)現(xiàn)的.采樣是通過對兩個(gè)濾波器的輸出進(jìn)行降采樣來實(shí)現(xiàn)的.當(dāng)濾波器改變信號(hào)的長度時(shí),下采樣過程會(huì)控制信號(hào)的尺度.當(dāng)采用低通濾波器和高通濾波器對低頻和高頻信號(hào)進(jìn)行分析時(shí),該過程首先將信號(hào)X引入一個(gè)脈沖響應(yīng)為M={m1,m2,…,mq}的低通濾波器,在保持信號(hào)規(guī)模不變的情況下去除信號(hào)中最大頻率一半(即最大頻率的1/2)以上的所有頻率.同時(shí),信號(hào)X通過一個(gè)脈沖響應(yīng)為G={g1,g2,…,gq}的高通濾波器,輸出的一半被丟棄.上述過程可以表示為
其中:ylow為通過低通濾波器的濾波結(jié)果,yhigh為通過高通濾波器的濾波結(jié)果,ylow和yhigh的長度之和與信號(hào)X總長度相同;m和g分別是低通濾波器和高通濾波器的脈沖響應(yīng)信號(hào);x為信號(hào)X中的離散子信號(hào).
上述過程也被稱為子帶編碼,可以通過將低通濾波器的輸出引入到下一層濾波器中來重復(fù)進(jìn)行進(jìn)一步分解.子帶級(jí)別的最大數(shù)目取決于信號(hào)中的數(shù)據(jù)點(diǎn)數(shù)目和濾波器的長度.直到信號(hào)比給定小波的濾波器長度q短,說明DWT計(jì)算結(jié)束.最大長度定義為
其中,q為濾波器長度,N為信號(hào)X長度.
由于DWT得到的高通濾波(詳細(xì)分量cD)和低通濾波(近似分量cA)所表達(dá)的含義不同,而低通濾波得到的近似分量更能表達(dá)信號(hào)的整體,所以本文使用近似分量作為統(tǒng)計(jì)特征提取的離散信號(hào).
1.2 統(tǒng)計(jì)特征
對于離散信號(hào)X,為了區(qū)分攻擊樣本和正常樣本,可以分析兩者之間的概率分布差異.首先,通過DWT得到信號(hào)的近似分量cA,通過統(tǒng)計(jì)cA中信號(hào)的平均數(shù)、方差、百分位數(shù)、偏度、峰度和熵來決定最后的統(tǒng)計(jì)特征.因此,本文考慮了均值,方差,10%、20%、30%、45%和80%位數(shù),偏度,峰度和熵作為統(tǒng)計(jì)特征,并利用這些特征生成區(qū)別于正常樣本的判別模型.對于一個(gè)給定的離散信號(hào)X={x1,x2,…,xN},式(4)—(7)分別定義均值(μ)、方差(σ)、偏度(S)和峰度(K).百分位數(shù)表示位于某一特定百分比位數(shù)的值.例如,20%位數(shù)是指在當(dāng)前信號(hào)分布中位于20%位置的最小值.文獻(xiàn)[24]證明了該方法的有效性.熵是一種計(jì)算某一屬性對于當(dāng)前類別的不確定性的方法,定義如式(8)所示.分布離散的屬性熵值高,而集中分布的熵值低.
其中,p為不同屬性的概率分布.
1.3 自動(dòng)編碼器神經(jīng)網(wǎng)絡(luò)
自動(dòng)編碼器是一種無監(jiān)督的神經(jīng)網(wǎng)絡(luò),它重構(gòu)出一個(gè)和輸入向量維數(shù)相同的輸出向量,結(jié)構(gòu)如圖1所示.
自動(dòng)編碼器的基本操作如下:首先,將統(tǒng)計(jì)特征整合成輸入向量輸入到編碼器,其次,從中間層重構(gòu)出與輸入相同維數(shù)的輸出.自動(dòng)編碼器的主要目標(biāo)是通過應(yīng)用三個(gè)子模塊,即編碼器、中間層、解碼器,來構(gòu)造一個(gè)盡可能接近輸入向量的輸出向量.編碼器將數(shù)據(jù)編碼成低維的特征表達(dá),最中間層表示特征的最低維度,解碼器將低維特征重構(gòu)成高維表達(dá).
自動(dòng)編碼器的結(jié)構(gòu)可以分為兩部分:1)編碼器f=RD→RM;2)解碼器g=RM→RD,其中D為輸入數(shù)據(jù)與重構(gòu)數(shù)據(jù)的維度,M為中間層的維度.對于信號(hào)樣本x∈X,自動(dòng)編碼器的中間層可表示為
其中,λ為正則化系數(shù),通過最小化重構(gòu)誤差來訓(xùn)練模型并學(xué)習(xí)網(wǎng)絡(luò)參數(shù).
1.4 自適應(yīng)知識(shí)蒸餾 (AKD)
知識(shí)蒸餾技術(shù)是一種模型壓縮技術(shù),它使用了一種“教師-學(xué)生”的訓(xùn)練方法.采用AKD的原因在于:線下訓(xùn)練的網(wǎng)絡(luò)模型需要大量數(shù)據(jù)去擬合復(fù)雜的模型,會(huì)出現(xiàn)模型規(guī)模大、模型推理速度慢的問題,而實(shí)際線上部署的模型對模型推理速度和部署資源有著嚴(yán)格的要求限制.隨著DDoS攻擊的發(fā)生,攻擊流量會(huì)迅速增加,大模型會(huì)出現(xiàn)推理不及時(shí)的情況,導(dǎo)致網(wǎng)絡(luò)擁堵.
知識(shí)蒸餾基本方法:通過訓(xùn)練出最優(yōu)的自動(dòng)編碼器模型作為教師模型T-Net,再通過減少模型規(guī)模設(shè)計(jì)學(xué)生模型S-Net,利用T-Net模型訓(xùn)練S-Net模型,可以讓S-Net模型學(xué)習(xí)到T-Net模型的泛化能力.
知識(shí)蒸餾基本步驟:第一步是訓(xùn)練T-Net模型,第二步是在設(shè)置溫度t條件下,蒸餾T-Net的知識(shí)到S-Net.
蒸餾過程的Loss如式(12)所示:
表示學(xué)習(xí)率,且α和β會(huì)隨著損失值L的變化而變化,規(guī)則如下:
步驟1,變化α的值;
步驟2,當(dāng)L增加,反向變化α的值,并變化β的值;
步驟3,當(dāng)L增加,反向變化β的值,然后反向變化α的值;
步驟4,當(dāng)L減少,返回步驟1;
步驟5,當(dāng)所有情況都會(huì)導(dǎo)致L增加時(shí),停止.
2 基于DWT和AKD的DDoS攻擊檢測
本節(jié)介紹基于離散小波和自適應(yīng)知識(shí)蒸餾的DDoS攻擊檢測方案,具體步驟如圖2所示.
2.1 特征提取
特征提取模塊用于從網(wǎng)絡(luò)流量數(shù)據(jù)包中提取統(tǒng)計(jì)特征,如圖3所示.
特征提取步驟如下:
步驟1,將流量數(shù)據(jù)包統(tǒng)計(jì)數(shù)量按照相同時(shí)間間隔分成Z個(gè)子集;
步驟2,對每個(gè)子集進(jìn)行DWT,得到每一子集的近似分量和詳細(xì)分量;
步驟3,計(jì)算每個(gè)子集近似分量的均值,方差,10%、20%、30%、45%和80%位數(shù),偏度,峰值和熵的統(tǒng)計(jì)特征;
步驟4,將計(jì)算結(jié)果和DWT計(jì)算的近似分量拼接形成特征向量,最終得到特征向量fi∈R1×n.
算法過程如下:
1) 初始化特征列表F;
2) 初始化當(dāng)前特征向量f;
3) 初始化特征長度w;
4) 輸入數(shù)據(jù)Z;
5) FOR i in Z;
6) 對i進(jìn)行離散小波變換得到近似分量cA;
7) 計(jì)算cA的均值μ、方差σ、百分位數(shù)、偏度K、峰度S、熵值H;
8) IF cA的長度小于w;
9) 將長度補(bǔ)充0到w;
10) END IF;
11) f‖cA‖μ、百分位數(shù)、K、S、H,其中‖為拼接操作;
12) F‖f,其中‖為拼接操作;
13) END FOR.
2.2 模型訓(xùn)練
模型訓(xùn)練模塊用于描寫DDoS攻擊檢測模型訓(xùn)練框架,如圖4所示,該DDoS攻擊模型訓(xùn)練框架具體過程如下:
1) 獲取特征集F作為自動(dòng)編碼器的輸入;
2) 預(yù)訓(xùn)練,逐層訓(xùn)練自動(dòng)編碼器神經(jīng)網(wǎng)絡(luò)T;
3) 獲得當(dāng)前數(shù)據(jù)集訓(xùn)練出的最優(yōu)模型T;
4) 構(gòu)建模型S;
5) 通過T模型蒸餾訓(xùn)練S模型;
6) 模型調(diào)優(yōu).
2.3 檢測模型
檢測模型模塊用于使用學(xué)生模型S的編碼器部分進(jìn)行DDoS攻擊檢測,當(dāng)S的參數(shù)訓(xùn)練確定后,取出編碼器部分.通過訓(xùn)練集進(jìn)行微調(diào)后,為測試數(shù)據(jù)編碼.利用分類器對編碼結(jié)果進(jìn)行DDoS攻擊類別鑒定,驗(yàn)證模型S的檢測能力級(jí)泛化能力,如圖5所示.
檢測過程如下:
1) 獲得模型S的編碼器部分;
2) 利用訓(xùn)練集微調(diào)S模型;
3) 獲取測試數(shù)據(jù);
4) 通過S模型編碼器部分將測試數(shù)據(jù)編碼;
5) 通過分類器得到攻擊類別.
3 實(shí)驗(yàn)
3.1 實(shí)驗(yàn)環(huán)境
本文使用Keras框架進(jìn)行實(shí)驗(yàn)?zāi)M,并選擇Python作為編程語言.硬件:intel(R)Core(TM)i7-10700F處理器、8 GB內(nèi)存、500 GB固態(tài)硬盤、64位Windows11操作系統(tǒng).
3.2 實(shí)驗(yàn)數(shù)據(jù)
本文大部分實(shí)驗(yàn)是基于CIC-DDoS2019數(shù)據(jù)集(https://www.unb.ca/cic/datasets/ddos-2019.html)進(jìn)行的,該數(shù)據(jù)集由Lashkari在New Brunswick University(UNB)網(wǎng)絡(luò)上收集.CICDDoS2019數(shù)據(jù)集分2天采集,本實(shí)驗(yàn)使用的是第1天采集的攻擊,類型包括:數(shù)據(jù)庫漏洞攻擊MSSQL、UDP協(xié)議洪水攻擊、TCP協(xié)議三次握手確認(rèn)攻擊SYN.
為了驗(yàn)證本文提出方法的通用性,本文還采用Iot-23數(shù)據(jù)集(https://www.stratosphereips.org/datasets-overview)進(jìn)行了實(shí)驗(yàn).Iot-23數(shù)據(jù)集模擬利用感染的物聯(lián)網(wǎng)設(shè)備實(shí)施DDoS攻擊并獲取攻擊流量數(shù)據(jù).以上數(shù)據(jù)集均來自于真實(shí)的網(wǎng)絡(luò)環(huán)境.
3.3 評(píng)價(jià)指標(biāo)
在對比實(shí)驗(yàn)中,本文采用了準(zhǔn)確率(Accuracy,A)、精確度(P)、F1評(píng)價(jià)指標(biāo)(F1_Score,F(xiàn)1)、誤報(bào)率(False Positive Rate,F(xiàn)PR)、召回率(Recall,R)、均方誤差(Mean Square Error,MSE)等作為本文的評(píng)價(jià)優(yōu)劣的標(biāo)準(zhǔn).
式(24)中,N為樣本個(gè)數(shù),ytrue為真實(shí)值,ypred為預(yù)測值.式(19)—(23)參數(shù)定義如表1所示.
3.4 參數(shù)設(shè)置
通過反復(fù)調(diào)優(yōu),并吸取前人的經(jīng)驗(yàn)進(jìn)行大量實(shí)驗(yàn),對比各項(xiàng)參數(shù)的優(yōu)劣.通過反復(fù)實(shí)驗(yàn),最終確定的參數(shù)如表2所示.
3.5 結(jié)構(gòu)分析
3.5.1 T-Net層數(shù)分析
網(wǎng)絡(luò)層數(shù)以及每層所使用的激活單元的個(gè)數(shù)對于模型編碼來說具有重要作用.隨著網(wǎng)絡(luò)層數(shù)和激活單元的增加,編碼出的抽象特征能更深層次表達(dá)原始數(shù)據(jù).因此,為了得到比較優(yōu)秀的網(wǎng)絡(luò)模型結(jié)構(gòu),通過設(shè)置不同深度的編碼器結(jié)構(gòu)進(jìn)行對比試驗(yàn),測試不同結(jié)構(gòu)編碼器的性能,對比結(jié)果如圖6所示,橫縱坐標(biāo)分別為維度1和維度2,表示二維坐標(biāo)點(diǎn).通過使用不同模型結(jié)構(gòu)的編碼器部分對測試集進(jìn)行分類預(yù)測結(jié)果如表3所示.通過實(shí)驗(yàn)結(jié)果可以得到,當(dāng)網(wǎng)絡(luò)層數(shù)達(dá)到一定程度時(shí),模型各項(xiàng)指標(biāo)將不再增加.所以選擇5層結(jié)構(gòu)作為T-Net編碼結(jié)構(gòu).
3.5.2 T-Net知識(shí)蒸餾S-Net
通過已確定的T-Net結(jié)構(gòu),S-Net相對于T-Net來說擁有更少的層數(shù)和激活單元,找到最優(yōu)的S-Net結(jié)構(gòu)是一項(xiàng)挑戰(zhàn).現(xiàn)設(shè)置3種不同結(jié)構(gòu)的S-Net,通過對比試驗(yàn)分析T-Net對不同S-Net的蒸餾效果,訓(xùn)練過程如圖7所示.可以發(fā)現(xiàn)當(dāng)中間層越小蒸餾過程越不穩(wěn)定且準(zhǔn)確率最終會(huì)總體呈現(xiàn)降低趨勢,說明在模型擬合過程中尋找不到最優(yōu)解.通過對比不同T-Net蒸餾S-Net前后誤差,最終確定S-Net結(jié)構(gòu)為256-64-256三層結(jié)構(gòu),其中不同數(shù)值代表不同層激活單元個(gè)數(shù),如表4所示.
3.5.3 壓縮效果分析
將T-Net和S-Net以及知識(shí)蒸餾后的S-Net的分類效果進(jìn)行對比,三種網(wǎng)絡(luò)模型同時(shí)對測試數(shù)據(jù)集進(jìn)行數(shù)據(jù)編碼,對比不同結(jié)構(gòu)模型的編碼部分對測試集的分類能力、誤報(bào)率以及檢測時(shí)間,來驗(yàn)證該方法的有效性,結(jié)果對比如圖8所示.
3.6 DDoS攻擊檢測效果分析
通過分析在不同數(shù)據(jù)集中S-Net的效果來驗(yàn)證本文檢測方法的有效性,結(jié)果如圖9所示.
為了驗(yàn)證本文方法的有效性,通過對比不同模型在兩組數(shù)據(jù)集的準(zhǔn)確率、召回率、F1評(píng)價(jià)指標(biāo)、檢測時(shí)間、誤報(bào)率的不同表現(xiàn)來驗(yàn)證,對比結(jié)果如表5所示,通過實(shí)驗(yàn)結(jié)果可以得出,本文方法要優(yōu)于對比方法.
4 結(jié)論
1)利用離散小波變換作為頻率分析的主要工具,保證了頻率和時(shí)間的對應(yīng)關(guān)系,很好地區(qū)分DDoS攻擊流量與正常流量的頻率變化,并通過離散信號(hào)提取平均數(shù)、方差、百分位數(shù)、偏度、峰度和熵的統(tǒng)計(jì)量作為輔助特征,為降低檢測誤報(bào)率提供可能性.
2) 采用自動(dòng)編碼器作為非線性特征降維的神經(jīng)網(wǎng)絡(luò),對高維特征向量進(jìn)行低維的非線性映射,通過自動(dòng)編碼器將高維特征降維,以及不同層數(shù)自動(dòng)
編碼器對數(shù)據(jù)聚類實(shí)驗(yàn)結(jié)果對比,驗(yàn)證了該方法的有效性,并利用編碼器部分實(shí)現(xiàn)有效分類.
3) 結(jié)合知識(shí)蒸餾方法將模型進(jìn)行壓縮處理,并采用自適應(yīng)的方法使其快速擬合,通過實(shí)驗(yàn)證明,壓縮后的模型對單條數(shù)據(jù)的檢測時(shí)間相對于原模型平均減少了2.83 ms,并且誤報(bào)率和檢測精度與原模型平均誤差均保持在1%內(nèi),證明了該方法的有效性.
4) 結(jié)合兩種數(shù)據(jù)集驗(yàn)證表明,本文方法在檢測準(zhǔn)確率及檢測效率上具有較大提升,而誤報(bào)率大幅降低.
參考文獻(xiàn)
References
[1] 國家互聯(lián)網(wǎng)應(yīng)急中心.我國DDoS攻擊資源分析報(bào)告[R].北京:國家互聯(lián)網(wǎng)應(yīng)急中心,2022
National Internet Emergency Response Center.China DDoS attack resources analysis report[R].Beijing:National Internet Emergency Response Center,2022
[2] Awan M J,F(xiàn)arooq U,Babar H M A,et al.Real-time DDoS attack detection system using big data approach[J].Sustainability,2021,13(19):10743
[3] Ahuja N,Singal G.DDoS attack detection & prevention in SDN using OpenFlow statistics[C]//2019 IEEE 9th International Conference on Advanced Computing.Tiruchirappalli,India.IEEE,2019:147-152
[4] Wang M,Lu Y Q,Qin J C.A dynamic MLP-based DDoS attack detection method using feature selection and feedback[J].Computers & Security,2020,88:101645
[5] Doshi R,Apthorpe N,F(xiàn)eamster N.Machine learning DDoS detection for consumer Internet of Things devices[C]//2018 IEEE Security and Privacy Workshops.San Francisco,CA,USA.IEEE,2018:29-35
[6] Odumuyiwa V,Alabi R.DDoS detection on Internet of Things using unsupervised algorithms[J].Journal of Cyber Security and Mobility,2021:569-592
[7] Yang K,Zhang J J,Xu Y,et al.DDoS attacks detection with autoencoder[C]//2020 IEEE/IFIP Network Operations and Management Symposium.Budapest,Hungary.IEEE,2020:1-9
[8] Huang C,Yi P,Zou F T,et al.CCID:cross-correlation identity distinction method for detecting shrew DDoS[J].Wireless Communications and Mobile Computing,2019,2019:6705347
[9] Agrawal N,Tapaswi S.Defense mechanisms against DDoS attacks in a cloud computing environment:state-of-the-art and research challenges[J].IEEE Communications Surveys & Tutorials,2019,21(4):3769-3795
[10] Zhou L Y,Guo H Q,Deng G L.A fog computing based approach to DDoS mitigation in IIoT systems[J].Computers & Security,2019,85:51-62
[11] Agrawal N,Tapaswi S.Low rate cloud DDoS attack defense method based on power spectral density analysis[J].Information Processing Letters,2018,138:44-50
[12] Jose A S,Nair L R,Paul V.Towards detecting flooding DDoS attacks over software defined networks using machine learning techniques[J].Revista Gesto Inovao e Tecnologias,2021,11(4):3837-3865
[13] Mishra A,Gupta N,Gupta B B.Defense mechanisms against DDoS attack based on entropy in SDN-cloud using POX controller[J].Telecommunication Systems,2021,77(1):47-62
[14] Idhammad M,Afdel K,Belouch M.Semi-supervised machine learning approach for DDoS detection[J].Applied Intelligence,2018,48(10):3193-3208
[15] Liu Z P,He Y P,Wang W S,et al.DDoS attack detection scheme based on entropy and PSO-BP neural network in SDN[J].China Communications,2019,16(7):144-155
[16] 周奕濤,張斌,劉自豪.基于多模態(tài)深度神經(jīng)網(wǎng)絡(luò)的應(yīng)用層DDoS攻擊檢測模型[J].電子學(xué)報(bào),2022,50(2):508-512
ZHOU Yitao,ZHANG Bin,LIU Zihao.Application layer DDoS detection model based on multimodal deep learning neural network[J].Acta Electronica Sinica,2022,50(2):508-512
[17] Li Y,Lu Y F.LSTM-BA:DDoS detection approach combining LSTM and Bayes[C]//2019 Seventh International Conference on Advanced Cloud and Big Data (CBD).Suzhou,China.IEEE,2019:180-185
[18] 張安琳,張啟坤,黃道穎,等.基于CNN與BiGRU融合神經(jīng)網(wǎng)絡(luò)的入侵檢測模型[J].鄭州大學(xué)學(xué)報(bào)(工學(xué)版),2022,43(3):37-43
ZHANG Anlin,ZHANG Qikun,HUANG Daoying,et al.Intrusion detection model based on CNN and BiGRU fused neural network[J].Journal of Zhengzhou University (Engineering Science),2022,43(3):37-43
[19] 趙志強(qiáng),易秀雙,李婕,等.基于GR-AD-KNN算法的IPv6網(wǎng)絡(luò)DoS入侵檢測技術(shù)研究[J].計(jì)算機(jī)科學(xué),2021,48(增刊1):524-528
ZHAO Zhiqiang,YI Xiushuang,LI Jie,et al.Research on DoS intrusion detection technology of IPv6 network based on GR-AD-KNN algorithm[J].Computer Science,2021,48(sup1):524-528
[20] Wang Z D,Li Z Y,He D J,et al.A lightweight approach for network intrusion detection in industrial cyber-physical systems based on knowledge distillation and deep metric learning[J].Expert Systems with Applications,2022,206:117671
[21] Liu X Q,Ren J D,He H T,et al.Low-rate DDoS attacks detection method using data compression and behavior divergence measurement[J].Computers & Security,2021,100:102107
[22] Liu Z,Hu C Z,Shan C.Riemannian manifold on stream data:Fourier transform and entropy-based DDoS attacks detection method[J].Computers & Security,2021,109:102392
[23] Fouladi R F,Ermis O,Anarim E.A DDoS attack detection and countermeasure scheme based on DWT and auto-encoder neural network for SDN[J].Computer Networks,2022,214:109140
[24] Bornmann L.How to analyse percentile impact data meaningfully in bibliometrics:the statistical analysis of distributions,percentile rank classes and top-cited papers[J].arXiv e-print,2012,arXiv:1206.1741
DDoS attack detection via DWT and AKD auto-encoder
WANG Bo1 WAN Liang1 LIU Mingsheng1 SUN Handi1
1College of Computer Science and Technology/State Key Laboratory of Public Big Data,Guizhou University,Guiyang 550025
Abstract To address the low efficiency and high 1 alarm rate in detection of DDoS (Distributed Denial of Service) flood attacks,this paper proposes a DWT (Discrete Wavelet Transform) and AKD (Adaptive Knowledge Distillation) self-encoder neural network based approach to detect DDoS attacks.The approach uses the DWT to extract frequency features,the auto-encoder neural network to encode and classify the features,and the AKD to compress the model in order to achieve efficient detection of DDoS attacks.The results show that the approach has high detection efficiency for proxy server attacks,database vulnerabilities & TCP flood attacks,and UDP flood attacks,with low 1 alarm rate.
Key words DDoS attack;discrete wavelet transform (DWT);adaptive;knowledge distillation;auto-encoder
收稿日期2022-09-19
資助項(xiàng)目國家自然科學(xué)基金 (62062020);貴州省教育廳自然科學(xué)研究項(xiàng)目(黔教科(2007)015號(hào))
作者簡介王博,男,碩士生,研究方向?yàn)榫W(wǎng)絡(luò)空間安全.gs.bowang20@gzu.edu.cn
萬良(通信作者),男,教授,研究方向?yàn)橛?jì)算機(jī)理論、網(wǎng)絡(luò)空間安全.lwan@gzu.edu.cn