田 婷,虞延坤,牛新征
(1.四川省公安科研中心,成都 610000;2.西南石油大學(xué) 計(jì)算機(jī)科學(xué)學(xué)院,成都 610500;3.電子科技大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,成都 611731)
隨著物聯(lián)網(wǎng)技術(shù)和云端理念愈發(fā)成熟,以往的云計(jì)算和霧計(jì)算不能滿足日益增長的計(jì)算業(yè)務(wù)下沉需求,為了減小中心節(jié)點(diǎn)的計(jì)算壓力并且更多地利用邊緣節(jié)點(diǎn)的算力和存儲(chǔ)資源,邊緣計(jì)算架構(gòu)應(yīng)孕而生。邊緣計(jì)算無限接近終端設(shè)備,能夠?qū)崟r(shí)地接收來自數(shù)據(jù)源頭的信息,是一種解決計(jì)算、存儲(chǔ)卸載問題的計(jì)算范式。它作為云計(jì)算的擴(kuò)展,彌補(bǔ)了中心化后產(chǎn)生的一系列缺點(diǎn),實(shí)現(xiàn)了高連續(xù)性和低時(shí)延性,更適合部署實(shí)時(shí)性高的智能化任務(wù)。隨著邊緣計(jì)算的應(yīng)用部署,隨之衍生出了與之相關(guān)的網(wǎng)絡(luò)安全領(lǐng)域課題,其中針對(duì)邊緣節(jié)點(diǎn)的攻擊防御問題備受關(guān)注。分布式拒絕服務(wù)攻擊(DDos)是一種隱蔽性高的大型分布式網(wǎng)絡(luò)攻擊,攻擊者可以組建分布式僵尸網(wǎng)絡(luò)向邊緣節(jié)點(diǎn)發(fā)起洪水般的拒絕服務(wù)攻擊。通常情況下,攻擊者會(huì)偽造源IP,這使得攻擊源頭極具隱蔽性,檢測(cè)攻擊來源地址也變得極其困難。邊緣計(jì)算環(huán)境下的物聯(lián)網(wǎng)設(shè)備結(jié)構(gòu)簡單脆弱,往往難以防御DDos攻擊,列舉近期的一些典型DDos攻擊案例,比如Mirai僵尸網(wǎng)絡(luò)對(duì)KrebsOnSecurity的攻擊[1]和Dyn攻擊[2],大都產(chǎn)生了巨大的經(jīng)濟(jì)損失和安全威脅。由于物聯(lián)網(wǎng)設(shè)施的連通性和開放性增加,整個(gè)物聯(lián)網(wǎng)的受攻擊面也因此擴(kuò)展,使得DDos攻擊的危害性也隨之上升。邊緣節(jié)點(diǎn)計(jì)算能力和存儲(chǔ)空間受限且缺乏有效的安全保護(hù),從而非常容易受到DDos攻擊。
傳統(tǒng)的防御和檢測(cè)技術(shù)難以運(yùn)用在邊緣節(jié)點(diǎn)上,雖然邊緣節(jié)點(diǎn)能夠隔絕大部分來自于網(wǎng)絡(luò)邊緣的數(shù)據(jù)且能在第一時(shí)間檢測(cè)到并攔截最近的DDos攻擊,但是部署現(xiàn)有的集中式DDos檢驗(yàn)方式或框架難以滿足邊緣節(jié)點(diǎn)的需求,這種解決方案通常沒有考慮到邊緣節(jié)點(diǎn)算力受限、存儲(chǔ)空間小、網(wǎng)絡(luò)波動(dòng)大等特點(diǎn)。所以有必要設(shè)計(jì)一種基于邊緣計(jì)算環(huán)境下的輕量級(jí)DDos攻擊檢測(cè)方案[3],以此來克服檢測(cè)準(zhǔn)確率低、誤報(bào)率高、時(shí)延長、算力和存儲(chǔ)能力不足等問題。
最近,網(wǎng)絡(luò)安全領(lǐng)域也開始采用在圖像、語言領(lǐng)域大放異彩的深度學(xué)習(xí)來解決一些棘手的安全問題,深度學(xué)習(xí)為解決DDos攻擊的威脅提供了新思路。He等人[4]基于機(jī)器學(xué)習(xí)技術(shù)提出了云端服務(wù)器的DDos檢測(cè)方法,He等人采用的方法分別有線性回歸、支持向量機(jī)、決策樹、樸素貝葉斯、隨機(jī)森林、無監(jiān)督K均值和高斯期望最大化等方法,每種方法都在一組自主生成的包含4種攻擊的數(shù)據(jù)上進(jìn)行測(cè)試并比較這些方法之間的得分,得分最高的是隨機(jī)森林法,這些機(jī)器學(xué)習(xí)算法能大致滿足DDos的檢測(cè)要求,但是檢測(cè)結(jié)果的指標(biāo)得分并不高,存在較大的提高空間。R.C.Staudemeyer等人[5]嘗試將網(wǎng)絡(luò)流量異常檢測(cè)領(lǐng)域和LSTM算法結(jié)合起來,實(shí)驗(yàn)結(jié)果表明LSTM具備良好的檢測(cè)異常流量能力,證明了循環(huán)神經(jīng)網(wǎng)絡(luò)在流量分析領(lǐng)域具有極大的可研價(jià)值,但本文使用的數(shù)據(jù)集發(fā)布時(shí)間較早,缺少一些現(xiàn)代的DDos攻擊類型,使得實(shí)驗(yàn)結(jié)果缺少說服力。Elyased等人[6]針對(duì)CIC-DDos-2019[7]數(shù)據(jù)集實(shí)現(xiàn)了一種基于深度學(xué)習(xí)的DDos檢測(cè)方法,該方法由循環(huán)神經(jīng)網(wǎng)絡(luò)和自動(dòng)編碼器組成,經(jīng)過一個(gè)數(shù)據(jù)預(yù)處理階段后,在訓(xùn)練階段得到一個(gè)二分類模型,以此判斷網(wǎng)絡(luò)流量是惡意攻擊還是良性的。Can等人[8]增強(qiáng)了CIC-DDos-2019的不平衡數(shù)據(jù)集,使用了自動(dòng)特征選擇來解決數(shù)據(jù)集存在的不均衡問題。Ferrag等人[9]針對(duì)CIC-DDos-2019數(shù)據(jù)集使用深度學(xué)習(xí)的經(jīng)典網(wǎng)絡(luò)進(jìn)行訓(xùn)練,但未針對(duì)性地做出結(jié)構(gòu)優(yōu)化。Chartuni A等人[10]針對(duì)CIC-DDos-2019數(shù)據(jù)集進(jìn)行了預(yù)處理和標(biāo)簽處理,并基于DNN網(wǎng)絡(luò)訓(xùn)練了一個(gè)DDos多分類器,為DDos的檢測(cè)提供了一個(gè)可參考的范式。
本文結(jié)合一維卷積和BiLSTM等深度學(xué)習(xí)理論,設(shè)計(jì)了一種適合邊緣計(jì)算環(huán)境下的輕量級(jí)DDos檢測(cè)模型,通過剪枝操作得到最佳的模型結(jié)構(gòu)。將網(wǎng)絡(luò)流量數(shù)據(jù)送入三層一維卷積構(gòu)成的卷積層以提取空間特征,隨后展平送入BiLSTM層以提取時(shí)間特征,最后通過全連接層和Softmax層輸出。本文提出的這種模型不僅可以有效提取和學(xué)習(xí)網(wǎng)絡(luò)流量數(shù)據(jù)的空間特征和時(shí)間特征,且通過剪枝操作調(diào)整參數(shù)量從而對(duì)模型進(jìn)行了輕量化處理。實(shí)驗(yàn)證明,本模型能夠更好地在邊緣計(jì)算環(huán)境中算力受限、存儲(chǔ)空間受限情況下完成防御和檢測(cè)DDos攻擊的任務(wù)。該網(wǎng)絡(luò)結(jié)構(gòu)模型如圖1所示。
圖1 網(wǎng)絡(luò)結(jié)構(gòu)模型
卷積層是深度學(xué)習(xí)中用于提取局部特征的有效方法,一維卷積常用于處理序列數(shù)據(jù)[13]。網(wǎng)絡(luò)流量數(shù)據(jù)的屬性通常是序列化的數(shù)值串。對(duì)比常用的二維卷積,使用一維卷積進(jìn)行特征提取后,實(shí)驗(yàn)準(zhǔn)確率提到了有效提升,故本文沒有采用常見的二維卷積法來提取特征。提取此類數(shù)據(jù)的局部特征圖。一維卷積層效果更佳,將提取后的特征圖作為下一層網(wǎng)絡(luò)的輸入,隨著卷積層深度的增加,神經(jīng)網(wǎng)絡(luò)將學(xué)習(xí)到不同維度的特征。一維卷積運(yùn)算公式如式(1)所示:
(1)
式(1)中,xj為第j個(gè)輸入特征圖,i為一維卷積的層數(shù),kij為所使用的卷積核,*代表卷積運(yùn)算且采用“same”填充方式,f()為激活函數(shù),本文采用ReLU來進(jìn)行非線性化處理,卷積層不填加偏置。
每個(gè)卷積激活層后接一個(gè)BN(batch normalization)層[16],通過BN層的處理,可以使該層的特征值符合標(biāo)準(zhǔn)正態(tài)分布,減小了訓(xùn)練過程中發(fā)生梯度相關(guān)問題(消失或爆炸)的可能性,加快了模型收斂的速度。BN層的運(yùn)算公式如式(2)所示:
(2)
通過卷積層提取到網(wǎng)絡(luò)流量數(shù)據(jù)的各維度特征圖后,變換形狀以適應(yīng)性輸入BiLSTM層。BiLSTM層[17](雙向長短時(shí)記憶層)是一種特殊的循環(huán)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),相比一般的RNN,它能夠兼顧在前向和后向兩個(gè)方向輸入的網(wǎng)絡(luò)流量數(shù)據(jù)信息,此種雙向信息收集的性質(zhì)極大地加強(qiáng)了全局性,使它能對(duì)數(shù)據(jù)的時(shí)間特征進(jìn)行有效的提取。BiLSTM模型的網(wǎng)絡(luò)體系結(jié)構(gòu)如圖2所示。
圖2 BiLSTM網(wǎng)絡(luò)體系結(jié)構(gòu)
BiLSTM單元設(shè)置有輸入門i、遺忘門f和輸出門o,當(dāng)前時(shí)刻數(shù)據(jù)xt進(jìn)入時(shí),結(jié)合內(nèi)部存儲(chǔ)單元ct-1和輸出ht-1進(jìn)行計(jì)算得出當(dāng)前輸出ht,然后及時(shí)更新內(nèi)部存儲(chǔ)單元ct[18]。遺忘門的運(yùn)算公式如式(3)所示:
ft=sigmoid(Wxfxt+Whfht-1+bf)
(3)
(4)
it=sigmoid(Wxixt+Whiht-1+bt)
(5)
(6)
i用于篩選當(dāng)前單元狀態(tài)的數(shù)量,可以表示為式(7):
ot=sigmoid(Wxoxt+Whoht-1+bo)
(7)
(8)
(9)
(10)
x代表輸入,W代表單元之間的連接權(quán)重,b是偏置向量,“·”代表點(diǎn)積運(yùn)算。
數(shù)據(jù)經(jīng)過BiLSTM后,進(jìn)入全連接層和Softmax層。該層是一種多分類器,表達(dá)式如式(11)所示:
(11)
該層能轉(zhuǎn)化實(shí)數(shù)范圍內(nèi)的分類結(jié)果數(shù)值,然后通過交叉熵?fù)p失函數(shù)來評(píng)測(cè)本文模型的檢測(cè)結(jié)果。
為了更真實(shí)地模擬邊緣計(jì)算場(chǎng)景下遭受DDos攻擊下的網(wǎng)絡(luò)流量數(shù)據(jù),本文調(diào)研了多個(gè)不同場(chǎng)景下的數(shù)據(jù)集,最后篩選出3個(gè)數(shù)據(jù)集來源:NSL-KDD數(shù)據(jù)集[12],由加拿大網(wǎng)絡(luò)安全研究所(CIC)公開提供的CIC-IDS-2017數(shù)據(jù)集[11]和CIC-DDos-2019數(shù)據(jù)集[7]。
3個(gè)數(shù)據(jù)集的內(nèi)容都是針對(duì)被攻擊情況下捕獲的完整的網(wǎng)絡(luò)流量信息,數(shù)據(jù)量充足,適合進(jìn)行深度學(xué)習(xí)模型訓(xùn)練。但是NSL-KDD數(shù)據(jù)集缺乏NTP、TFTP和NetBIOS等現(xiàn)代DDos攻擊方式,且訓(xùn)練集和測(cè)試集的攻擊種類不相等。CIC-IDS-2017數(shù)據(jù)集加入了以往數(shù)據(jù)集缺乏現(xiàn)代攻擊方式,其中包含DDos攻擊,但是并沒有針對(duì)DDos攻擊進(jìn)行細(xì)粒度劃分,該數(shù)據(jù)集主要包含漏洞Web攻擊,且存在類別不均衡的問題。基于對(duì)所研究數(shù)據(jù)集的評(píng)估和分析,本文決定使用CIC-DDos-2019數(shù)據(jù)集對(duì)所用模型進(jìn)行訓(xùn)練和驗(yàn)證。
CIC-DDos-2019數(shù)據(jù)集的內(nèi)容是由CIC機(jī)構(gòu)在兩天內(nèi)不同時(shí)間段采用不同的DDos攻擊方式進(jìn)行攻擊測(cè)試,數(shù)據(jù)集中的部分時(shí)段加入了網(wǎng)絡(luò)受限和網(wǎng)絡(luò)波動(dòng)等干擾因素,能夠更貼近邊緣計(jì)算環(huán)境下的網(wǎng)絡(luò)流量數(shù)據(jù),記錄整理得出的具體分類如圖3所示[7]。該數(shù)據(jù)集針對(duì)性地克服了過往數(shù)據(jù)集的缺點(diǎn),提出了一種新的 DDoS 攻擊分類法[7],主要分為兩個(gè)主類:基于反射的DDos攻擊和基于漏洞利用的DDos攻擊。
1)基于反射的DDos,指的是那些利用合法的第三方組件且執(zhí)行過程中隱藏攻擊者身份的攻擊。攻擊者偽裝IP地址,使用反射服務(wù)器發(fā)送響應(yīng)數(shù)據(jù)包,使被攻擊者發(fā)生過載。在該數(shù)據(jù)集中根據(jù)使用協(xié)議,進(jìn)一步細(xì)分為了基于TCP的攻擊包括MSSQL、SSDP,基于UDP的攻擊包括CharGen、NTP、TFTP,以及使用TCP或UDP的攻擊包括DNS、LDAP、NETBIOS和SNMP。
2)基于漏洞利用的DDos攻擊,與基于反射的DDos攻擊相似,不同點(diǎn)在于這些攻擊可以通過使用傳輸層協(xié)議的應(yīng)用層協(xié)議進(jìn)行。具體可細(xì)分為基于TCP的攻擊SYN Flood,基于UDP的攻擊包括UDP Flood和UDP Lag。
圖3 CIC-DDos-2019數(shù)據(jù)集中的DDos攻擊分類
原始的CIC-DDos-2019數(shù)據(jù)集中存在NaN值和Infinite值不利于模型的訓(xùn)練,因此在合并了所有CSV文件后需要清理臟數(shù)據(jù)。因?yàn)閿?shù)據(jù)量較大,所以本文將包含NaN和Infinite的數(shù)據(jù)作為臟數(shù)據(jù)整行刪除。
目前數(shù)據(jù)集中存在87種屬性,屬性中存在兩個(gè)名為“Fwd Header Length.1”的冗余屬性,一列名為“Unnamed”的匿名屬性以及“Source Port”、“Destination Port”、“Source IP”、“Destination IP”、“Flow ID”、“Timestamp”、“SimilarHTTP”等不能用于分類的套接字屬性都進(jìn)行舍棄以減少實(shí)驗(yàn)數(shù)據(jù)的特征維數(shù)。實(shí)際場(chǎng)景中IP地址等屬性真實(shí)性很低,而且,使用套接字信息訓(xùn)練模型,會(huì)使模型依賴于使用套接字信息來分類,導(dǎo)致過擬合問題。最后本文保留了78種屬性。
針對(duì)屬性值存在分布不均勻、分布區(qū)間過大等問題,預(yù)處理需要對(duì)數(shù)據(jù)進(jìn)行歸一化處理。針對(duì)每一列數(shù)據(jù)(即每一種特征)進(jìn)行L2范數(shù)歸一化,L2歸一化的公式如式(13)所示:
(12)
特征值歸一化后,對(duì)數(shù)據(jù)進(jìn)行分位數(shù)映射處理,該方法變換每條數(shù)據(jù)的屬性值,使屬性值映射到正態(tài)分布。服從正態(tài)分布的屬性值能有效縮短訓(xùn)練收斂時(shí)間。
接下來,分析數(shù)據(jù)集中攻擊類型的分布情況,結(jié)果如圖4所示。結(jié)果顯示,數(shù)據(jù)集存在類別不均衡的情況:TFTP類別在數(shù)據(jù)集中占比很高而Portmap、良性和UDPLag占比極少。這會(huì)導(dǎo)致模型訓(xùn)練出現(xiàn)長尾效應(yīng),使分類結(jié)果偏向數(shù)量多的那些類,訓(xùn)練得到的模型對(duì)少數(shù)類不敏感,分類能力差。因此,對(duì)TFTP稠密類進(jìn)行下采樣操作,以均衡其對(duì)整體模型的影響力;使用過采樣技術(shù)SMOTE[19-20]生成稀疏類的合成數(shù)據(jù),以增強(qiáng)稀疏類數(shù)據(jù)對(duì)整體模型的影響力。這一系列操作均有利于數(shù)據(jù)集實(shí)現(xiàn)類平衡。
圖4 攻擊標(biāo)簽分布圖
SMOTE算法是由Bowyer等人[19]提出一種通過生成合成數(shù)據(jù)來實(shí)現(xiàn)類平衡的方法。SMOTE在特征空間進(jìn)行采樣生成合成數(shù)據(jù),所以生成數(shù)據(jù)的真實(shí)性高于傳統(tǒng)采樣方法。SMOTE算法的內(nèi)容為:針對(duì)少數(shù)類中的每一個(gè)樣本s求到同類樣本的歐式距離,得到該少數(shù)類的K近鄰。合成數(shù)據(jù)so是由樣本s和最近鄰sn的距離差值,并將差值乘以一個(gè)0到1范圍內(nèi)的隨機(jī)數(shù)r,最后添加到s的向量中生成的。SMOTE算法公式[19-20]如式(12)所示:
SS=S+r×(S-Sn)
(13)
采樣操作后,包括所有攻擊類型以及良性在內(nèi)的13個(gè)類的數(shù)據(jù)數(shù)量達(dá)到平衡,平衡的數(shù)據(jù)集能夠有效地避免訓(xùn)練過程產(chǎn)生長尾效應(yīng),以此增加模型對(duì)于數(shù)據(jù)數(shù)量少的類別的分類準(zhǔn)確率。
本文在利用預(yù)處理后的數(shù)據(jù)集進(jìn)行包括攻擊和良性標(biāo)簽的13分類任務(wù)時(shí),存在個(gè)別類混淆嚴(yán)重的情況。
攻擊標(biāo)簽對(duì)應(yīng)的數(shù)據(jù)由于攻擊類型和攻擊特征的相似性高,導(dǎo)致網(wǎng)絡(luò)監(jiān)控軟件捕獲到的信息總是具有相似性[7]。比如目前比較嚴(yán)重的泛洪攻擊,其包括 DNS 泛洪攻擊、UDP 泛洪攻擊和 Syn 泛洪攻擊共3種。因此數(shù)據(jù)集中對(duì)應(yīng)的不同攻擊種類的同一種屬性的值也具有相似性,所以直接進(jìn)行13分類容易產(chǎn)生標(biāo)簽的混淆,影響到模型的準(zhǔn)確率。
統(tǒng)計(jì)12種攻擊類型(不包含良性類)在屬性空間中具有強(qiáng)相似性的類別的子集概要情況,結(jié)果如表1所示。
表1 強(qiáng)相似性標(biāo)簽的子集概要
表1中劃分了4個(gè)子集,其他攻擊標(biāo)簽保持獨(dú)立,表中ACV是指具有恒定值的屬性,AFR0表示零值高頻的屬性,ASAH指的是由于屬性值具有很強(qiáng)的同質(zhì)性而導(dǎo)致偏差的屬性。因此將對(duì)應(yīng)具有強(qiáng)相似性的子集進(jìn)行標(biāo)簽融合操作。
對(duì)應(yīng)的攻擊標(biāo)簽融合成“DNS/LDAP/SNMP”、“NetBIOS/Portmap”、“SSDP/UDP”、“UDPLag/Syn”。標(biāo)簽融合后,存在8種包括各類DDos攻擊和良性的類別。故實(shí)驗(yàn)過程可簡化為進(jìn)行一個(gè)DDos攻擊下的網(wǎng)絡(luò)流量八分類任務(wù),此種情況作為實(shí)驗(yàn)場(chǎng)景一。
本文也將所有的攻擊標(biāo)簽融合成“DDos”標(biāo)簽結(jié)合良性標(biāo)簽,進(jìn)行一個(gè)DDos攻擊下的網(wǎng)絡(luò)流量二分類任務(wù),此種情況作為實(shí)驗(yàn)場(chǎng)景二。
最后,數(shù)據(jù)集依次進(jìn)行:數(shù)字編碼和獨(dú)熱編碼,該操作為每一類標(biāo)簽分配一個(gè)新列,如果該條記錄屬于這一類則為1,否則為0。
從預(yù)處理后的數(shù)據(jù)中按每種攻擊以及良性等比例抽樣提取數(shù)據(jù),合成共200 000條訓(xùn)練數(shù)據(jù)的總數(shù)據(jù)集用作模型訓(xùn)練。
對(duì)總數(shù)據(jù)集進(jìn)行8:2的劃分得到訓(xùn)練集和測(cè)試集,訓(xùn)練集采取四折交叉驗(yàn)證的方式劃分驗(yàn)證集,用來驗(yàn)證模型精度和調(diào)整模型超參數(shù)。
本文采用的模型評(píng)估指標(biāo)為準(zhǔn)確率、精確率、召回率和F1-score,并繪制混淆矩陣來分析每個(gè)類別的分類結(jié)果,公式如式(14)~(17)所示:
(14)
(15)
(16)
(17)
本文基于TensorFlow框架實(shí)現(xiàn)本文的DDos檢測(cè)模型,將多分類交叉熵作為損失函數(shù),實(shí)例化的優(yōu)化器使用Adam[21]。
本文對(duì)比實(shí)驗(yàn)了各種結(jié)構(gòu),并對(duì)實(shí)驗(yàn)?zāi)P驮诒WC實(shí)驗(yàn)準(zhǔn)確率基礎(chǔ)上針對(duì)不必要結(jié)構(gòu)進(jìn)行了剪枝操作,一是為了減少工作時(shí)延,二是為了便于網(wǎng)絡(luò)移植到計(jì)算能力較弱的邊緣節(jié)點(diǎn)上,將模型優(yōu)化縮減為本文最終呈現(xiàn)的形式:其中一維卷積中輸出濾波器的數(shù)量分別為20、40、60,卷積核的尺寸為4*1,填充方式為“same”;一維卷積后使用Relu作為激活函數(shù),并接入BN層,構(gòu)成復(fù)合一維卷積層結(jié)構(gòu)。Bilstm層由一層輸出空間的維數(shù)為80的BiLSTM模塊接BN處理來擔(dān)任時(shí)間特征提取任務(wù)。
本文利用粒子群優(yōu)化算法進(jìn)行超參數(shù)尋優(yōu)實(shí)驗(yàn),尋找到適合本模型的最佳超參數(shù)序列,學(xué)習(xí)率尋優(yōu)曲線如圖5所示。
圖5 學(xué)習(xí)率尋優(yōu)曲線
當(dāng)學(xué)習(xí)率為2×10-4,批大小為128,練輪數(shù)設(shè)置為100輪時(shí)模型的訓(xùn)練速度有效提升且提升了模型準(zhǔn)確率,總結(jié)以上操作,列出參數(shù)列表如表2所示。
表2 模型的參數(shù)列表
本實(shí)驗(yàn)的模型訓(xùn)練流程圖整體描述如圖6所示,實(shí)驗(yàn)整體流程可簡化為:數(shù)據(jù)樣本提取輸入、數(shù)據(jù)預(yù)處理、模型搭建與初始化、模型訓(xùn)練、模型剪枝、模型指標(biāo)評(píng)估、模型部署等步驟。
圖6 模型訓(xùn)練流程圖
在實(shí)驗(yàn)場(chǎng)景一中,通過模型訓(xùn)練得到一個(gè)能有效檢測(cè)DDos攻擊的模型,可以對(duì)包括攻擊標(biāo)簽和良性標(biāo)簽的網(wǎng)絡(luò)流量數(shù)據(jù)進(jìn)行八分類,檢測(cè)出可能正在遭受的DDos攻擊。訓(xùn)練過程中,以訓(xùn)練輪數(shù)為橫軸,損失和準(zhǔn)確率的變化為縱軸,繪制折線圖如圖7所示,模型分類結(jié)果的指標(biāo)參數(shù)如表3所示。
圖7 損失變化曲線和準(zhǔn)確率變化曲線
表3 實(shí)驗(yàn)場(chǎng)景一的分類結(jié)果
對(duì)每一類攻擊標(biāo)簽的檢測(cè)情況進(jìn)行指標(biāo)參數(shù)統(tǒng)計(jì)分析,結(jié)果如圖11所示,模型對(duì)于MSSQL的檢測(cè)能力相對(duì)較弱,分析可能是因?yàn)橛糜诜直鍹SSQL攻擊類的特征屬性較少,根據(jù)文獻(xiàn)[7]顯示,影響MSSQL檢測(cè)的強(qiáng)相關(guān)屬性為端口號(hào),但端口號(hào)屬性不能用于模型分類任務(wù)的訓(xùn)練中而進(jìn)行了舍棄,故有所影響。
結(jié)果繪制混淆矩陣如圖8所示。
圖8 實(shí)驗(yàn)場(chǎng)景一混淆矩陣
混淆矩陣的分類結(jié)果顯示,模型在分類MSSQL和DNS/LDAP/SNMP時(shí)發(fā)生了混淆,在分類UDPLag/Syn和SSDP/UDP時(shí)發(fā)生了混淆,針對(duì)發(fā)生混淆的兩類可繼續(xù)著手進(jìn)行改進(jìn),進(jìn)一步提高模型檢測(cè)DDos攻擊的準(zhǔn)確率,其他類均表現(xiàn)良好,由于模型的參數(shù)量和計(jì)算量較小,對(duì)分類DDos攻擊有良好的性能,故本文的模型適合部署在邊緣計(jì)算環(huán)境下進(jìn)行DDos攻擊的檢測(cè)任務(wù)。
在實(shí)驗(yàn)場(chǎng)景二中,通過模型訓(xùn)練得到一個(gè)能有效檢測(cè)DDos攻擊的模型,可以對(duì)DDos攻擊標(biāo)簽和良性標(biāo)簽的網(wǎng)絡(luò)流量數(shù)據(jù)進(jìn)行二分類,檢測(cè)出可能正在遭受的DDos攻擊。實(shí)驗(yàn)場(chǎng)景二的檢測(cè)結(jié)果的指標(biāo)參數(shù)如表4所示。
表4 實(shí)驗(yàn)場(chǎng)景二分類結(jié)果
驗(yàn)證訓(xùn)練后模型的檢測(cè)能力,據(jù)結(jié)果繪制混淆矩陣如圖9所示。
圖9 實(shí)驗(yàn)場(chǎng)景二混淆矩陣
混淆矩陣的分類結(jié)果顯示,模型對(duì)于DDos類和良性類有極佳的分類能力,本文的模型能夠完美解決DDos和良性標(biāo)簽的網(wǎng)絡(luò)流量二分類問題,由于模型的參數(shù)量和計(jì)算量相對(duì)較小且具備極佳的檢測(cè)DDos攻擊能力,表明這一模型適合部署在邊緣計(jì)算環(huán)境下進(jìn)行DDos檢測(cè)任務(wù)。
對(duì)每一類攻擊標(biāo)簽的檢測(cè)情況進(jìn)行指標(biāo)參數(shù)統(tǒng)計(jì)分析,結(jié)果如圖10所示,證明模型在實(shí)驗(yàn)場(chǎng)景二中具備優(yōu)秀的檢測(cè)能力。
圖10 實(shí)驗(yàn)場(chǎng)景二分類情況統(tǒng)計(jì)圖
將訓(xùn)練好的模型部署到邊緣節(jié)點(diǎn)中,搜集節(jié)點(diǎn)中的網(wǎng)絡(luò)流量數(shù)據(jù),使用CICFlowMeter-V3插件來對(duì)流量數(shù)據(jù)進(jìn)行量化提取,放入預(yù)處理階段進(jìn)行數(shù)據(jù)清理后,流量數(shù)據(jù)刪除了臟數(shù)據(jù)且進(jìn)行了特征降維,隨后送入部署的訓(xùn)練模型進(jìn)行實(shí)時(shí)DDos預(yù)測(cè)。
圖11 實(shí)驗(yàn)場(chǎng)景一分類情況統(tǒng)計(jì)圖
表5、表6展示了本文提出的模型在上述兩種實(shí)驗(yàn)場(chǎng)景下的結(jié)果指標(biāo)和其他相關(guān)工作的結(jié)果對(duì)比。
表5 實(shí)驗(yàn)場(chǎng)景一下本文與相關(guān)工作的結(jié)果比較
表6 實(shí)驗(yàn)場(chǎng)景二下本文與相關(guān)工作的結(jié)果比較
可以看出本文提出的模型在結(jié)果指標(biāo)上明顯優(yōu)于相關(guān)工作提出的方法,本模型獲得的指標(biāo)提升應(yīng)該歸因于一個(gè)更適合的新模型框架,以及研究的預(yù)處理階段和之前提出的標(biāo)簽融合。但是,本文的模型受到訓(xùn)練階段使用的標(biāo)簽的限制,那么在實(shí)際部署后檢測(cè)到新攻擊帶來的惡意網(wǎng)絡(luò)流量時(shí),如果新攻擊的流量特征和之前學(xué)習(xí)到的攻擊有相似,模型將會(huì)把其歸類為DDos攻擊,但會(huì)錯(cuò)誤歸類到已存在的攻擊類型。為應(yīng)對(duì)這一情況,可以在后續(xù)模型訓(xùn)練階段增加新標(biāo)簽以定義新的攻擊類型,此法可有效減少輸出的模糊性。輕量化后的模型,其總參數(shù)量適當(dāng),能夠適應(yīng)邊緣計(jì)算環(huán)境下邊緣節(jié)點(diǎn)算力受限、存儲(chǔ)受限的實(shí)際場(chǎng)景。
隨著邊緣計(jì)算的蓬勃發(fā)展,邊緣計(jì)算環(huán)境下所面臨的網(wǎng)絡(luò)安全攻擊危害也日益嚴(yán)重,DDos攻擊作為邊緣計(jì)算環(huán)境遭受的一種最主要的網(wǎng)絡(luò)攻擊帶來了巨大的威脅。由于邊緣計(jì)算環(huán)境下的邊緣節(jié)點(diǎn)存在算力受限、儲(chǔ)存受限的情況,傳統(tǒng)的DDos防御和檢測(cè)手段很難適應(yīng),所以,本文基于深度學(xué)習(xí)提出了一種檢測(cè)模型,并對(duì)模型進(jìn)行了剪枝輕量化,用以在該場(chǎng)景下防御DDos攻擊。本文采用了CIC-DDos-2019[7]數(shù)據(jù)集來模擬遭受DDos攻擊時(shí)的,存在網(wǎng)絡(luò)波動(dòng)大、條件受限情況下的網(wǎng)絡(luò)流量數(shù)據(jù)。針對(duì)數(shù)據(jù)集存在臟數(shù)據(jù)、屬性值區(qū)間大、類別不平衡等情況,通過實(shí)驗(yàn)提出了針對(duì)性強(qiáng)的數(shù)據(jù)預(yù)處理解決方案。對(duì)于數(shù)據(jù)標(biāo)簽存在強(qiáng)相似性使標(biāo)簽混淆的問題,本文對(duì)數(shù)據(jù)的屬性進(jìn)行了相似性分析,提出了一種針對(duì)性強(qiáng)的標(biāo)簽融合方案,得到了兩種合理性強(qiáng)的實(shí)驗(yàn)場(chǎng)景。本文設(shè)計(jì)了一種基于Bilstm和一維卷積的模型結(jié)構(gòu),并通過剪枝操作實(shí)現(xiàn)了模型的輕量化,以此來達(dá)到在邊緣計(jì)算環(huán)境下檢測(cè)DDos攻擊的目標(biāo),實(shí)驗(yàn)場(chǎng)景一進(jìn)行DDos攻擊八分類任務(wù)準(zhǔn)確率達(dá)到了96.8%,實(shí)驗(yàn)場(chǎng)景二進(jìn)行DDos攻擊二分類任務(wù)準(zhǔn)確率達(dá)到了99.8%。
未來的工作中,對(duì)于個(gè)別類還存在混淆情況,可以對(duì)數(shù)據(jù)屬性進(jìn)行更深入的分析或是調(diào)整模型框架來解決。本文的模型分類結(jié)果可解釋性較差,后續(xù)可考慮增強(qiáng)可解釋性。下一步將在實(shí)際邊緣計(jì)算場(chǎng)景下訓(xùn)練和調(diào)整本文的模型,增加新攻擊類型標(biāo)簽,降低可能存在的預(yù)測(cè)模糊性。