999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于簡單統計特征的LDoS 攻擊檢測方法

2023-01-08 14:31:00段雪源付鈺王坤李彬
通信學報 2022年11期
關鍵詞:特征檢測方法

段雪源,付鈺,王坤,4,李彬

(1.海軍工程大學信息安全系,湖北 武漢 430033;2.信陽師范學院計算機與信息技術學院,河南 信陽 464000;3.信陽師范學院河南省教育大數據分析與應用重點實驗室,河南 信陽 464000;4.信陽職業技術學院數學與信息工程學院,河南 信陽 464000)

0 引言

由于互聯網協議和服務的開放性,各種網絡入侵攻擊行為從未間斷,在眾多威脅中,低速率拒絕服務(LDoS,low-rate denial of service)攻擊由于其巨大的破壞力和良好的隱蔽性,被網絡犯罪分子和黑產業鏈運營商廣泛使用。不同于傳統的泛洪式拒絕服務攻擊,LDoS 攻擊主要針對傳輸層、網絡層或應用層的協議漏洞,利用較少的攻擊流量使系統或網絡服務質量下降[1]。例如,針對傳輸控制協議(TCP,transmission control protocol)超時重傳機制的LDoS 攻擊主要通過向瓶頸鏈路中發送短促高速的攻擊脈沖,觸發大量數據包丟失,迫使網絡啟動超時重傳機制,造成大量無用數據流耗盡網絡帶寬。針對應用層的LDoS 攻擊則是利用HTTP 的連接保持機制,通過向服務器發送多個連接請求,耗盡服務器的可分配資源,使正常請求無法得到響應??梢钥闯觯琇DoS 攻擊的本質就是利用系統的自適應機制,通過短促的高速脈沖數據流攻擊關鍵鏈路或端系統,使其因過載而無法對外提供正常服務。

通常,單獨LDoS 攻擊流形式上都是合法的網絡流量,表現出與正常流量相同的基本特征,且發送的數據包數量少、平均速率低,一般僅為正常數據流的10%~20%[2],經常被淹沒在正常流量中,能夠穿越普通防火墻,傳統的針對DoS 攻擊的檢測方法并不適用于檢測LDoS 攻擊。一直以來,研究人員嘗試將小波變換分析、頻譜分析、統計分析、信息度量分析等技術引入檢測攻擊工作中,但提出的檢測方法大多依賴特征工程,檢測效果受制于研究人員的專業素質和工作經驗[3-4]。

深度學習利用神經網絡從原始數據中自主地學習數據高層次的特征信息并用于進一步的分類,是解決傳統檢測方法特征依賴的有效手段。其中,長短期記憶(LSTM,long short-term memory)網絡是基于“門”設計的改進型循環神經網絡,不僅能捕捉數據序列的時間關聯性,還可緩解普通循環神經網絡的長時依賴問題,在語音識別、自然語言處理、網絡流量異常檢測等領域應用廣泛。生成式對抗網絡(GAN,generative adversarial network)是基于零和博弈思想構建的生成式模型,對異構數據具有較強的適應性,由生成器和判別器2 個部分組成,其中,生成器通過學習輸入樣本的分布來生成同分布的相似樣本;判別器通過計算判別誤差來區分輸入樣本是真實樣本還是生成樣本。在序列數據異常檢測領域,可利用判別誤差來區分輸入樣本是正常樣本還是異常樣本。雖然深度學習有著強大的表征能力,但需要足夠的樣本進行訓練才能完成建模[5-6]。當前的檢測方法大多是流級別的,需要跟蹤分析流內的多個數據包,會消耗大量的計算資源。另外,實驗數據大多來源于公開數據集或仿真平臺,存在攻擊場景過時、通信量不完整、流量背景單一等缺陷。

針對上述問題,本文提出一種基于簡單統計特征的LDoS 攻擊檢測方法。利用流量采集工具,從真實網絡環境中獲取流量數據,以流量中數據包大小和到達時間間隔為特征構造檢測數據序列,利用神經網絡學習正常流量數據的特征分布,能夠對正常數據序列進行較好的重構;當待檢測數據序列為攻擊流時,重構數據與輸入數據將會出現較大重構誤差,當重構誤差超過閾值時則判定為攻擊,并輸出判定結果,實現從原始流量輸入到檢測結果輸出的端到端檢測模式。

1 相關工作

2001 年,ASTA Network 公司在Internet 2 的主干網上首次發現 LDoS 攻擊流量;2005 年,Kuzmanovic 等[7]展示了一種惡意利用TCP 超時重傳機制的低速率TCP 定向DoS 攻擊,人們才對LDoS攻擊有了更加清晰的認識。自此,研究人員開始研究檢測LDoS 攻擊的有效方法,根據攻擊流的脈沖周期性特征以及被攻擊網絡的波動性表現,這些檢測方法可歸納為基于流量特征、基于信號分析、基于機器學習和基于深度學習這4 類,如圖1 所示。

圖1 LDoS 攻擊的檢測方法

基于流量特征的檢測方法通常是利用被攻擊網絡中流量的異常波動性特征進行檢測,這些特征包括從網絡流中提取的隊列長度、連接持續時間、數據包編號、數據包間隔、數據包大小和ACK 序列號等信息[8]。流是指具有相同五元組(源IP、目標IP、源端口、目標端口以及傳統層協議)的所有報文[9]。吳志軍等[10]將網絡中的實際網絡帶寬占用率、小分組比例、分組丟失率這3 個特征組成聯合特征輸入反向傳播神經網絡分類器進行LDoS 攻擊檢測,在仿真平臺和試驗網絡中驗證了方法的有效性。Wu 等[11]提出基于LDoS 攻擊流量的多重分形特征[12]的檢測算法,利用H?lder 指數估計LDoS 攻擊下流量的奇異性和突發性,取得的實驗結果與理論預測相符。Zhang 等[13]根據網絡擁塞期間正常TCP流發送的數據包少,而攻擊流發送的數據包多的現象,提出基于正常數據包數量與數據包總量比的LDoS 攻擊檢測與過濾方法,通過分析路由器中的數據,驗證了方法的可行性。然而,這些基于流量特征的檢測方法普遍存在2 個不足,一是研究所用數據大多是在模擬環境中生成的,缺乏真實網絡背景;二是網絡流特征的設計需要人工完成,提取時需要非常大的計算開銷,且時間消耗較長,適合處理離線數據,很難實現在線的LDoS 攻擊檢測[14]。

相關實驗說明了利用信號分析方法檢測網絡中LDoS 攻擊流的可行性。杜臻等[15]使用小波分析提取流量數據的多樣性特征,利用支持向量機(SVM,support vector machine)完成混合流量中的異常分離。Agrawal 等[16]使用功率譜密度方法識別云環境中的低速LDoS 攻擊,通過傅里葉變換,將持續收集到的流量數據變換為頻譜序列,并計算功率譜密度值,將功率譜密度集中在低頻段的部分判定為攻擊。Brynielsson 等[17]根據HTTP 中的持續連接特性,實現了利用譜分析方法檢測針對應用層HTTP 服務的LDoS 攻擊。雖然這些頻域分析法對LDoS 攻擊的檢測是有效的,但信號轉換會引起巨大的額外開銷,并且可能會產生較高的誤警率和漏檢率。在時域方面,Wu 等[18]結合Hilbert 譜和Pearson 相關系數,利用小尺度檢測窗口實現對LDoS 攻擊包的檢測。Swami 等[19]提出一種基于高級熵的自適應檢測方法,實現了對未知攻擊的檢測。盡管這些方法簡單且檢測精度較高,但要求被檢測數據在時域上的波動不能過大,否則檢測性能嚴重下降,這顯然與真實網絡情況不符。

基于機器學習的檢測方法通常與其他算法結合使用,Zhang 等[20]將主成分分析(PCA,principal component analysis)與SVM 模型相結合,利用PCA過濾掉噪聲干擾并提取TCP 流的主要特征,作為SVM 模型的輸入來檢測LDoS 攻擊。Yan 等[21]提取TCP 流量的平均值、方差和熵等特征來訓練改進的邏輯回歸模型,以檢測LDoS 攻擊。Pérez-Díaz 等[22]提出了用于檢測軟件定義網絡(SDN,software defined network)環境中LDoS 攻擊的框架,該框架有助于實現各種機器學習模型,如決策樹、代表樹、隨機樹、隨機森林、多層感知器(MLP,multilayer perceptron)和SVM 等對LDoS 攻擊的檢測,但是該方法的誤報率較高。Tang 等[23]提出了將網絡流量特征集構建技術與改進的自適應增強(Adaboost,adaptive boosting)分類算法相結合的多特征自適應增強(MF-Adaboost,multi-feature Adaboost)算法,通過提取網絡流量數據中最有用的信息,減小數據規模;采取最優特征選擇策略,用28 個特征完成對分類器的訓練;改進的Adaboost 算法可緩解樣本權值不平衡問題。然而,以上基于機器學習的檢測方法在特征提取上需要消耗較多的計算資源,特征設計依賴人工經驗,并且對未知特征的攻擊缺乏有效的檢測能力。

基于深度學習的檢測方法通常以原始流量為輸入,經簡單預處理后,利用深度學習的強大表征能力,提取樣本數據的特征信息,進而完成流量的分類,實現端到端的檢測模式。按照所用的神經網絡結構類型,可分為單結構模型檢測方法和復合結構模型檢測方法。單結構模型檢測方法是一種以神經網絡結構為模型基本架構的檢測方法,例如,Ilango 等[24]提出基于前饋卷積神經網絡(FF-CNN,feedforward-convolutional neural network)的異常檢測方法,用于檢測物聯網SDN 中的LDoS 攻擊,在公開數據集上取得了不錯的檢測效果。Tang 等[25]提出的多特征融合卷積神經網絡(MF-CNN,multi-feature fusion-convolutional neural network)檢測模型也是利用卷積神經網絡區分網絡特征映射之間的差別,以檢測出哪些特征映射包含LDoS 攻擊。Agarwal 等[26]利用LSTM 網絡模型定期學習Web 服務器日志并對網站的訪問情況進行預測,實現對欺詐型LDoS 攻擊的檢測。單結構模型雖然可以檢測出LDoS 攻擊,但是存在2 個不足,一是需要大量樣本進行訓練,且模型缺少指導,在訓練初期較困難;二是對異構數據適應能力較差,模型的泛化能力弱。因此,研究人員更多地使用復合結構模型,即由2 種以上神經網絡構建的檢測模型,合理的組合設計可以發揮不同結構神經網絡的優勢,克服單結構模型自身的不足。Xu 等[27]提出將一維卷積神經網絡與雙向循環神經網絡結合的LDoS 攻擊檢測模型,先用卷積模塊提取歸一化預處理后的信號特征,再用雙向循環神經網絡估計信號中包含LDoS 攻擊的概率值,實現對LDoS 攻擊的檢測。Chen 等[28]設計的DAEMON 在線檢測模型是將變分自編碼網絡與GAN 相結合,利用變分自編碼網絡對異構數據的適應性,同時作為GAN 的生成器指導訓練,克服GAN 在訓練初期難以收斂的不足。然而當前基于深度學習的檢測方法大多是“流級別”的,即以整個網絡流為檢測對象,需要對流內的每個數據包進行跟蹤與分析,計算開銷大、時延較長,并且難以完成實時在線檢測。另外,檢測時需要分析出完整數據流的相關信息才能得到最終的檢測結果,不具備對LDoS 攻擊的早期發現能力。

2 網絡流量獲取

2.1 正常流量的采集

為獲得真實流量數據,本文使用支持Wireshark軟件的高性能流量數據采集系統平臺,抓取流經Web 服務器的所有流量。為獲得大量普通用戶訪問服務器產生的流量,本文選擇某校園的Web 站點作為正常流量的來源。圖2 是經過簡化后的正常流量采集網絡拓撲結構,交換機設置校園網絡Web 服務器端口的鏡像端口,流量采集系統從該鏡像端口抓取服務器對外交互的所有上下行流量數據。

圖2 正常流量采集網絡拓撲結構

本文實驗從采集的流量數據中選取連續600 min沒有發生網絡異常的數據作為正常流量樣本,因為該采集時段網絡能夠正常提供服務,表明網絡中沒有明顯異常,已經排除拒絕服務攻擊的可能,或有少量其他攻擊,但對LDoS 攻擊檢測影響基本可以忽略。

2.2 異常流量的采集

為了不影響網絡的正常運行,攻擊流量不能在實際的Web 服務器網絡中傳輸,只能通過隔離網絡生成與采集,因此,本文單獨設計了采集攻擊流量的局域網。該局域網由一個流量采集系統、5 臺計算機主機以及相應的網絡連接設備組成,其中4 臺主機安裝Linux 系統,一臺主機安裝Windows 系統,其拓撲結構如圖3 所示。其中,一臺Linux 主機運行OpenSwitch 作為OpenFlow 交換機,運行Pox controller 作為OpenFlow 控制器以創建SDN 環境;南向接口是帶寬為1 Gbit/s 的TCP 通道,OpenFlow v1.3 協議用于交換機和控制器之間的通信。一臺Linux 主機作為單獨的Web 服務器,是校園Web 服務器的鏡像網站。一臺Linux 主機作為普通客戶端,運行良性程序對Web 服務器進行正常訪問。一臺Linux 主機提供運行低速攻擊程序的Linux 環境、一臺 Windows 主機提供運行低速攻擊程序的Windows 環境,它們按計劃運行不同的攻擊程序對Web 服務器進行LDoS 攻擊。客戶端和服務器通過千兆網卡與OpenFlow 交換機連接。

圖3 采集攻擊流量的局域網拓撲結構

攻擊流量由各攻擊主機上運行的攻擊程序生成,攻擊流量種類包括各種TCP 同步序列編號(SYN,synchronize sequence number)低速率攻擊、HTTP 慢速讀取攻擊等。為了實現在短時間間隔內的SYN 低速率攻擊,設計了每次攻擊50 s,然后休眠100 s,且攻擊只發生在每秒的前0.1 s 內的攻擊模式。每類攻擊程序凈運行時間為60 min(不含休眠時間)。圖4 為攻擊程序運行周期示意。

圖4 攻擊程序運行周期示意

需要說明的是,Slowhttptest 程序為慢速讀取攻擊,沒有使用脈沖成形攻擊。從采集的流量中剔除休眠時間的數據,即可得到6 種不同的以正常流量為背景的攻擊流量,時長均為60 min 無背景的純攻擊流量,本文設計的攻擊流雖然復雜、檢測難度大,但更接近真實網絡環境中的流量模式。

3 特征選取與數據設計

3.1 特征選取

使用CICFlowMeter 工具從采集到的流量文件中提取每個TCP 流或用戶數據報協議(UDP,user datagram protocol)流中數據包的特征信息,大約可提取80 個流量的統計特征,不同協議解析出的結果略有差異。利用sklearn 中的隨機森林回歸算法,計算每個特征在該流中的重要性,圖5 和圖6 分別顯示了正常流量和攻擊流量中6 個主要特征對其他特征的影響力指數,數值越大,特征越重要。

圖5 正常流量主要特征影響力指數

圖6 攻擊流量主要特征影響力指數

從圖5 中可以發現,前向數據包長度標準差和數據包長度標準差是正常流量最顯著的特征。不同于LDoS 攻擊流,正常流量是由正常的網絡用戶與服務器交互產生的,由于用戶需求的多樣性以及訪問的隨機性,生成的數據包大小是隨機的且差異性較大。攻擊流的數據包是由程序產生的,通常具有固定大小且小于正常數據包。從圖6 中可以看出,相鄰數據包時間間隔的信息,包括前向相鄰數據包時間間隔標準差和相鄰數據包最小時間間隔在攻擊流的特征中較重要,原因是LDoS 攻擊在向被攻擊者發送數據包時表現為突發行為,而正常流量通常不具備這種突發性;另外,這種突發行為會影響數據包的到達率和相鄰數據包的時間間隔相關特征。

因此,可以確定前向數據包長度標準差和前向相鄰數據包時間間隔標準差是區分正常流量和攻擊流量的2 個重要特征。然而,攻擊檢測除了關注檢測的準確率外,檢測的及時性也是需要特別注重的。而前向數據包長度標準差和數據包長度標準差這類特征值需要檢測完整的TCP 流或UDP 流才能得出,前向相鄰數據包時間間隔標準差特征也存在相同情況。因此,要想實現早期檢測就不能直接用它們的標準差作為檢測的特征。根據文獻[8,29]的研究結果可以發現,流內前2 s 內的數據包大小和到達的時間間隔對檢測DoS 攻擊非常重要。因此,本文嘗試利用流中前若干個時間步內到達的數據包大小和時間間隔作為特征,構造出由2 個統計特征組成的檢測序列數據集,因此,數據集的單個樣本可表示為

其中,為第i個樣本中第j個數據包與第j-1 個數據包到達的時間間隔,為第j個數據包的大小。每個數據包到達都是一個時間步。

3.2 數據設計

為減少運算開支,將數據流按每10 s 切分出一個流片段,那么600 min 的正常流量數據可得到3 600 段正常流片段,利用CapAnalysis 網絡數據包分析工具提取本文所需要的特征數據,并標注為正常樣本。用同樣的方法處理各攻擊流,每種攻擊流量可切分出360 段流片段,標注為異常樣本。另外,為了便于匯總最終的檢測結果,將正常樣本和異常樣本中的每個流片段添加唯一標志符。使用正常流量數據進行訓練和驗證,因此隨機抽取30%的正常流片段作為訓練集,再抽取30%作為驗證集,剩余的40%作為測試集。為構造不同的測試數據集,每次取一種攻擊流片段隨機插入正常流片段中,得到6 種合成流量測試數據集,每種攻擊流量的檢測集包含時長為300 min 的1 800 段流片段,其中,正常流片段為1 440 段,攻擊流片段為360 段??紤]到現實網絡中攻擊流量的多樣性,需要包含多種攻擊流的測試數據檢驗所提方法對復雜攻擊的檢測能力。因此,從6 種攻擊流量中各隨機抽取120 段攻擊流片段隨機插入正常流量中,即可生成一個包含6 種攻擊流量的“All-United”合成流量集,該流量集共包含時長為360 min 的2 160 段流片段,其中正常流片段為1 440 段,攻擊流片段為720 段。表1 展示了各合成流量測試數據集信息。

表1 各合成流量測試數據集信息

4 LDoS 攻擊檢測模型

網絡流量作為時間序列數據記錄了網絡狀態的變化情況,循環神經網絡適用于處理序列數據,LSTM 網絡彌補了普通循環神經網絡梯度消失、長期記憶不足等問題,能夠挖掘序列數據的時間相關性。GAN 是生成式模型,可以生成與輸入數據同分布的更多樣本,這一特性能緩解樣本數量不足的問題,同時GAN 對異構數據有較強適應性,能提升模型的泛化能力,但普通GAN 的生成器經常會遇到因缺少編碼指導在初期難以訓練的問題。因此,本文設計出以LSTM 為GAN 的生成器的流量數據重構器(LSTM-GAN),由LSTM 作為生成器學習輸入樣本的空間分布并生成重構樣本輸入判別器,判別器將重構樣本與輸入樣本之間的差異反饋給生成器,指導生成器更新參數完成訓練。

利用正常流量訓練出LSTM-GAN 學習到正常流量的數據特征,能夠重構出與輸入正常流量類似的流量模式。當輸入的待檢測數據為攻擊流時,LSTM-GAN 則不能對其進行有效的重構,生成的重構樣本與輸入樣本間存在較大的誤差,該誤差可作為攻擊判定的依據。圖7 展示了基于LSTM-GAN重構器的LDoS 攻擊檢測的整體功能架構,包括數據準備、數據重構、攻擊判定3 個功能模塊。當從現實網絡中采集網絡流量后,經過預處理提取流量的簡單統計特征構造為檢測數據;待檢測數據樣本輸入訓練好的LSTM-GAN 中,LSTM 自編碼器(生成器)對其進行編碼和解碼后生成重構樣本,判別器計算重構樣本與檢測樣本之間的重構誤差;攻擊判定模塊將此重構誤差與判定閾值進行比較,如果重構誤差超過判定閾值,則判定檢測樣本對應的網絡流量為LDoS 攻擊流。

圖7 基于LSTM-GAN 重構器的LDoS 攻擊檢測的整體功能架構

4.1 數據準備模塊

數據準備模塊由流量獲取和數據預處理2 模塊組成,主要完成從網絡接口處抓取流量數據,并按3.1 節中特征選取的方法進行相應格式轉換和特征提取等操作,生成下一步檢測所需的數據序列。通過實驗發現,16 個時間步足以跨越數據流的前2 s,因此只需研究網絡流片段中前16 個數據包的信息,即模型的輸入數據是一個包含16 個時間步的包大小和到達時間間隔信息的2 維數組。

4.2 數據重構模塊

數據重構模塊主要是以LSTM自編碼器為生成器的GAN 構成的LSTM-GAN 流量數據重構器。LSTM 自編碼器(生成器)將輸入流量樣本映射到潛在特征空間并在該空間中完成樣本的重構,為充分學習流數據的特征信息,在編碼器與解碼器中間設置了信道增強層。判別器用來指導生成器進行訓練,計算出重構器在穩態下的重構誤差并將其作為檢測攻擊的門限。

LSTM 自編碼器各層的功能如下。

1) 編碼器

第1 層,LSTM(32),讀取輸入數據并輸出32 個特征,每個特征有16 個時間步。

第2 層,LSTM(8),從第1 層獲取16×32 的輸入,并將特征大小減少到8,輸出一個大小為1×8的特征矩陣。

第3 層,信道增強層(16),將1×8 的特征矩陣復制15 次,形成16×8 的2 維矩陣作為解碼器層的輸入,可為解碼器提供更加豐富的特征表示,是編碼器和解碼器之間的橋梁。

2) 解碼器

解碼器按與編碼器相反的順序搭建第4 層LSTM(8)和第5 層LSTM(32),它們分別是第2 層和第1 層的鏡像。

第6 層是全連接層,對第5 層的輸出與其內部向量進行矩陣乘,最終生成16×2 的輸出向量。

其中,xi為輸入LSTM-GAN 的預處理后數據,G(xi)為經LSTM自編碼器編碼、解碼后輸出的重構數據。LSTM-GAN 模型利用隨機梯度下降法訓練,選用RMSProp 優化算法,其訓練算法如算法1 所示。

算法1LSTM-GAN 重構器訓練算法

輸入檢測數據X,完整訓練次數epochs,批大小batch size,學習率α

輸出模型參數θ

重構誤差會隨著訓練次數的增多而減小,LSTMGAN 重構器最終達到一種穩定狀態,額外的訓練不會減少重構誤差。利用驗證集計算LSTM-GAN 重構器在穩定狀態下的重構誤差,計算區分正常流量或攻擊流量的門限標準,即異常判定的閾值。參照“3σ”準則,將閾值設置為所有驗證集樣本重構誤差均值加3 個標準差,則異常檢測閾值可表示為

其中,μ為訓練好的LSTM-GAN 計算出的驗證集中所有樣本重構誤差的平均值,σ為標準差。

4.3 攻擊判定模塊

由于使用正常流量數據建模,LSTM-GAN 重構器可學習到正常流的特征分布,能夠很好地完成對正常流的重構。當輸入攻擊流時,因為攻擊流偏離了正常TCP 流的特征,重構器不能對其有效重構,生成的重構序列與原始輸入存在較大的偏差,判別器計算出的重構誤差將會偏大。攻擊判定模塊將每個輸入樣本的重構誤差與閾值比較,如果重構誤差大于閾值則判定為攻擊,反之則判定為正常流。

5 實驗結果及分析

5.1 實驗設置

本文實驗環境配置的使用的硬件為 Core i9-12900F、128 GB RAM(DDR5)、NVIDIA RTX3090,使用的軟件為 Ubuntu 18.04LTS、CUDA11.2、Pytorch1.8。

5.2 LSTM-GAN 模型訓練

在進行檢測之前,需要利用訓練集中的樣本數據對LSTM-GAN 模型進行充分訓練,直到達到最大訓練次數或設置的停止訓練閾值。圖8 展示了LSTM-GAN 迭代訓練損失函數值。從圖8 可以看出,在前30 次迭代訓練時,損失函數值振蕩減小;當迭代70 次后,損失函數值趨于穩定。為保險起見,在實驗中將最大迭代次數設置為80。

圖8 LSTM-GAN 迭代訓練損失函數值

模型的其他超參數根據經驗與實驗調試設定,表2 為LSTM-GAN 模型超參數的取值。

表2 LSTM-GAN 模型超參數的取值

5.3 評價指標

基于LSTM-GAN 重構器的LDoS 攻擊檢測方法的目的是從待檢測流量中發現攻擊流量,并不關注攻擊發起的階段和類型,因此,檢測的最終目標可轉換為二分類問題。將正常流量定義為負樣例,攻擊流量定義為正樣例,使用準確率(Accuracy)、精確率(Precision)、召回率(Recall)、誤警率(FPR,false positive rate)以及F1 值這5 項指標作為評價模型檢測性能的主要依據。

5.4 實驗結果與分析

5.4.1 本文數據集的實驗結果

本文數據集上的檢測實驗分為2 個階段,第一階段是單獨對各攻擊流量進行檢測,得到LSTM-GAN模型對每種LDoS 攻擊的檢測能力;第二階段是對由多種攻擊流量組成的All-United 數據集進行測試,測試模型對復雜攻擊的檢測性能。另外,為評估模型檢測能力,本文將其與經典LDoS 攻擊檢測方法的檢測結果進行比較。

1) 單一攻擊檢測實驗

第一階段中,利用驗證集數據求出訓練好的模型在穩態下所有樣本重構誤差的均值,并加上3 個標準差作為誤差判定的閾值。由于隨機劃分的驗證集可能出現類別失衡,從而導致計算出的閾值出現偏差,因此采用5 折交叉計算的方式,將驗證集劃分為5 份,每次取其中4 份進行計算,將5 次計算得到的閾值的平均值作為攻擊檢測的最終閾值。另外,為排除運算時可能出現的偶然性因素,模型對每種LDoS 攻擊的測試集進行5 次檢測,以評價指標的平均值作為最終檢測結果。表 3 展示了LSTM-GAN 模型對單一攻擊的檢測性能。從表3可以看出,LSTM-GAN 對各攻擊流量檢測的召回率均達到93%以上。對Pwnloris 攻擊的檢測指標最好,可能是由于Pwnloris 是Slowloris 的升級版,低速率攻擊的特征更加明顯。其次對Hping 攻擊的檢測性能也很好,原因是Hping 程序本來是用于泛洪式的DDoS 攻擊,在本文實驗中,為了低速攻擊的效果,Hping 被設置為僅在每秒的前0.1 s 的時間間隔內生成攻擊,且數據包大小為定值,這使Hping 攻擊流具有顯著的周期性和突發性特征,因此更加容易被檢測出。Slowhttptest 攻擊的檢測效果相對略差的原因是Slowhttptest 程序生成的是慢速讀取攻擊流量,時間跨度比較大,而本文選擇的數據為每10 s 流片段中前16 個時間步的特征,可能出現了選取的某些數據剛好處理Slowhttptest 攻擊流量的“靜默期”,從而沒有形成明顯的數據特征,對檢測造成不利影響。雖然最高誤警率達到4.86%,但平均誤警率為2.93%,這在以安全告警為目標的檢測設計中是可以接受的。

表3 LSTM-GAN 模型對單一攻擊的檢測性能

2) 復雜攻擊檢測實驗

第一階段的實驗表明LSTM-GAN 模型對單一攻擊流量的檢測性能表現良好,為了測試模型應對復雜攻擊的能力,第二階段將在包含多種復雜攻擊流量的All-United 數據集中進行實驗。因為整體數據量不大,采用“留一法”進行檢測,將測試集數據隨機分成10 份,每次選取9 份參與運算,最終結果取10 次運算結果的平均值,如圖9 所示,平均準確率為0.949 9、平均召回率為0.942 8、平均精確率為0.910 3、平均誤警率為0.046 6、平均F1值為0.926 2。對比單獨攻擊流檢測的整體性能,準確率和召回率略有下降,精確率提升明顯,F1 值有所提升,誤警率也有所上升。原因可能是All-United數據集中異常樣本比單一攻擊數據集中異常樣本的占比高,數據集中正負樣本數量更加趨于均衡,使檢測結果也更加合理平穩,這從F1 值的提升可以看出。

圖9 LSTM-GAN 對復雜攻擊的檢測指標

在攻擊檢測任務中,研究人員更加關注攻擊的召回率,LSTM-GAN 對單一攻擊的召回率均超過了93%,對復雜攻擊的召回率也達到了94.28%,因此LSTM-GAN 模型無論是對單一種類的攻擊還是復雜攻擊的檢測都能取得較好的檢測效果。

由于檢測中只需用到流片段中的前16 個數據包的2 項統計特征,即每個檢測樣本只需經過16 個時間步就能得到,而本文的設備每分鐘可以從原始的.pcap 文件中解析出數千條網絡流信息,即檢測所需的特征數據能夠實時生成。另外,特征提取和攻擊檢測分屬2 個模塊,可以并行處理,因此相對于傳統需要分析流內大量數據包信息的檢測方法,本文所提的檢測方法具有早期檢測的能力。

表4 為LSTM-GAN 完成每種攻擊檢測的時間消耗。從表4 可以看出,對每個數據集檢測一次的時間消耗約為1 s,對單樣本的檢測時間達到毫秒級,這樣的檢測速率可以滿足在線檢測的時間需求。

表4 LSTM-GAN 完成每種攻擊檢測的時間消耗

3) 與其他檢測方法的比較

本節將本文方法與幾種不同類型的典型檢測方法進行了比較,包括基于聯合特征的檢測方法[10],PCA 與SVM 相結合的方法PCA-SVM[20],SDN框架下的多層感知器方法SDN-MLP[22],基于多特征自適應增強方法MF-Adaboost[23],以及前饋卷積神經網絡方法FF-CNN[24]共5 種檢測方法。表5展示了各檢測方法的實驗數據、數據來源及檢測性能指標等信息。

表5 各檢測方法的實驗數據、數據來源及檢測性能指標

由表5 可知,雖然LSTM-GAN 方法的召回率最低,但是本文設計的攻擊模式為每次攻擊持續50 s、休眠100 s,然后按此周期進行攻擊和休眠,即每次攻擊流的持續時間為50 s。實驗中以每10 s 劃分1 個流片段,每個攻擊流可劃分為5 個流片段,這5 個流片段中只要有1 個流片段被檢測出來,就可認為這次的攻擊被檢測出,因此LSTM-GAN 對攻擊流的召回率是大于0.999 9 的。另外,LSTM-GAN 取得0.046 6 的誤報率。在攻擊檢測任務中,人們更加關注對攻擊的召回率,對誤報率會有一定的容忍度,因此,LSTM-GAN 的檢測性能總體上優于其他幾種方法。

5.4.2 其他數據集的實驗結果

為了驗證本文所提方法對異構網絡流量數據的泛化能力,分別在ISCX2016、CICIDS2018、CICDDoS2019、DARPA2000、UTSA2021 這5 個公開數據集上進行檢驗。

由于本文方法用于檢測傳輸層和應用層的LDoS 攻擊,因此在進行實驗前,需要對各數據集進行處理,提取DoS 攻擊流數據,再用分析工具提取檢測所需的數據信息。需要說明的是,對于已經被 CICFlowMeter 處理過的數據集,如CICDDoS2019 數據集的80 維特征屬性值是不能直接使用的,需要進行一定的等價變換。用流的統計信息代替數據包的統計信息,即用流中前向數據包的平均值代替數據包大小,用前向數據包時間間隔的平均值代替數據包時間間隔,這樣將連續16 個流的特征數據構造為一個數據樣本,正常流量集和攻擊流量集均按此方法構造。例如,利用CICDDoS2019 數據集構造的攻擊流量樣本和正常流量樣本形式分別為

由于各數據集網絡配置環境具有較大的差異性,因此在進行檢測前,先使用各數據集中的部分正常樣本對模型LSTM-GAN 進行訓練。并計算出異常判定的閾值,再使用測試數據進行實驗。LSTM-GAN 模型在各數據集中的檢測性能如圖10所示。

圖10 LSTM-GAN 模型在各數據集中的檢測性能

從圖10 可以看出,LSTM-GAN 方法在幾個數據集上的檢測召回率都大于90%,其中,在CICIDS2018、CICDDoS2019、DARPA2000 數據集上的召回率超過 95%,其原因可能是CICDDoS2019,DARPA2000 這2 個數據集中的攻擊流量為DoS 或者DDoS 攻擊,比LDoS 的包間隔和包大小具有更加明顯的統計特征,構造出的檢測數據可以被輕松識別。而CICIDS2018 構造出的攻擊樣本中包大小和時間間隔都幾乎完全相同,所以攻擊樣本更容易被檢測出。在UTSA2021 數據集中,本文選用的是攻擊峰值為50 rad/s 的子數據集Syn50,相比從更高攻擊速率的數據集中檢測攻擊特征更加具有挑戰性,然而93.27%的召回率也是個不錯的成績。在ISCX2016數據集的召回率相對較低(90.73%),這是由于攻擊樣本與正常樣本的生成網絡環境不同,因此在利用正常樣本訓練出的LSTM-GAN 模型更加粗獷,難以發現統計特征中微小的變化。LSTM-GAN模型在ISCX2016、CICDDoS2019、DARPA2000數據集上的精確率沒有取得召回率那樣優異的成績,原因是本文選用的特征向量相對較少,需要訓練的參數相對于大型深度網絡模型要少得多,在訓練樣本相對充足的情況下,模型出現了過擬合的問題。這使模型在判定正常流量時標準更加“苛刻”,以至于部分正常樣本被誤認為攻擊樣本。但總體來說,LSTM-GAN 能夠在6 個數據集上表現出較強的泛化能力,即便是在ISCX2016 數據集上召回率也超過了 90%,說明本文設計的LSTM-GAN 方法可以很好地發現異構網絡環境中的攻擊行為。

6 結束語

針對傳統的LDoS 攻擊流量檢測方法需要跟蹤提取網絡中大量數據包特征,消耗資源大,難以滿足實時在線檢測需求,以及實驗環境與現實網絡環境差異過大的問題,本文提出以真實網絡流量為背景,基于網絡流量簡單統計特征的LDoS 攻擊檢測方法(LSTM-GAN),只選用網絡流量片段中前16 個數據包的大小及到達時間間隔作為特征數據,利用正常流量特征數據對LSTM-GAN 模型建模,使LSTM-GAN 學習到正常流量特征的空間分布,根據重構序列與輸入數據的重構誤差進行攻擊判定。

實驗結果表明,所提方法能夠對真實網絡環境中獲取的流量數據進行簡單統計特征提取,并準確地檢測出流片段中包含的多種LDoS 攻擊行為產生的異常流;以流片段為檢測對象,比以整個數據流為目標的檢測方法更加具備早期發現攻擊的優勢。另外,實驗環境雖然是以校園網的Web 服務器為背景,由于特征數據只需網絡流量中部分數據包的大小和到達時間間隔的統計信息,不需要人工刻意設計復雜特征,更不用分析流量具體內容,因此,本文方法原則上也可以用于其他針對HTTP 服務器或HTTPS 服務器的LDoS 攻擊的檢測。

猜你喜歡
特征檢測方法
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
如何表達“特征”
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
抓住特征巧觀察
小波變換在PCB缺陷檢測中的應用
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
捕魚
主站蜘蛛池模板: 99re热精品视频国产免费| 色吊丝av中文字幕| 国产成人精品无码一区二| 国产精品开放后亚洲| 91亚洲免费视频| 四虎影院国产| 午夜视频免费一区二区在线看| 午夜精品福利影院| 亚洲第一视频免费在线| 人妻一本久道久久综合久久鬼色| 911亚洲精品| 成人在线第一页| 国产主播福利在线观看| 在线欧美日韩国产| 久久婷婷人人澡人人爱91| 97狠狠操| 97成人在线视频| 中文字幕亚洲综久久2021| 欧美国产日韩一区二区三区精品影视| 国产精品午夜福利麻豆| 国产乱人伦偷精品视频AAA| V一区无码内射国产| 高h视频在线| 制服无码网站| 亚洲中字无码AV电影在线观看| 国产精品一区二区国产主播| 99视频在线看| 婷婷五月在线| a级毛片免费在线观看| 亚洲日韩精品欧美中文字幕| 国产一级毛片网站| 高清精品美女在线播放| 毛片一级在线| 亚洲欧洲免费视频| 91青青视频| 国产美女在线观看| 国产精品无码一区二区桃花视频| 国产在线观看第二页| 九九视频免费看| 亚洲成AV人手机在线观看网站| 亚洲中文在线看视频一区| 午夜国产小视频| 亚洲美女AV免费一区| 在线国产资源| 国产99视频在线| 国产理论一区| 色妺妺在线视频喷水| 日本不卡在线| 四虎影视库国产精品一区| 九色在线观看视频| 中国一级特黄大片在线观看| 亚洲人成网址| 婷婷午夜影院| 麻豆国产精品一二三在线观看| 51国产偷自视频区视频手机观看| 99九九成人免费视频精品| 91香蕉视频下载网站| 四虎永久免费在线| 国产精品视频观看裸模| 国产美女人喷水在线观看| 日本午夜三级| 91精品aⅴ无码中文字字幕蜜桃| 国产日韩精品欧美一区喷| 日韩A∨精品日韩精品无码| 亚洲熟妇AV日韩熟妇在线| 亚洲人在线| 538精品在线观看| 久久精品人人做人人爽电影蜜月 | 大陆精大陆国产国语精品1024| 九色在线视频导航91| 青草娱乐极品免费视频| 国产精品亚洲片在线va| 亚洲性一区| 亚洲天堂福利视频| 天天躁夜夜躁狠狠躁躁88| 中文字幕在线观| 亚洲国产成人精品无码区性色| 亚洲欧美成人在线视频| 福利国产微拍广场一区视频在线| 国产微拍精品| 99久久精彩视频| 高清国产va日韩亚洲免费午夜电影|