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

SDN 中一種基于機器學習的DDoS 入侵檢測與防御方法?

2023-10-20 08:24:06徐芹寶王昌達
計算機與數字工程 2023年7期
關鍵詞:特征檢測方法

胡 睿 徐芹寶 王昌達

(江蘇大學計算機科學與通信工程學院 鎮江 212013)

1 引言

分布式拒絕服務攻擊(Distributed Denial-of-Service,DDoS)是一種常見的網絡威脅。攻擊者通過操控大量的傀儡主機,向一個或多個目標主機發送攻擊數據包,由此消耗目標主機帶寬、內存、處理器等資源,使得目標主機的正常連接請求得不到響應,最終無法對外提供服務。

軟件定義網絡(Software Defined Network,SDN)[1]是一種主流的網絡管理架構,該架構擺脫了硬件限制,將傳統網絡中固化的控制平面與數據平面解耦。SDN 架構的優點是對網絡中的工作單元進行了功能劃分;缺點是其開放式的網絡架構引入了新威脅,例如:攻擊者操縱傀儡機入侵控制器,危害數據的正常轉發;攻擊者通過入侵交換機,向控制器發送大量的虛假請求,消耗控制器資源以致鏈路崩潰。因此,快速準確地對SDN 中的DDoS 攻擊進行檢測并防御成為近期的研究熱點[2~3]。

本文根據現有SDN 中DDoS 檢測所遇到的問題,基于SDN 數據平面提出了一種DDoS 實時入侵檢測與即時防御方法RT-XB(Real-Time XGBoost-Bloom Filter)。主要工作如下:

1)實現了一種基于P4 可編程數據平面[4]的數據包收集方法,即使用P4 在數據平面定制檢測的數據包信息,實現對目標數據包的精準收集。

2)利用Relief 算法優化攻擊特征選擇[5],通過使用極限梯度增強(extreme gradient boosting,XGBoost)[6]算法構建了攻擊檢測分類器,根據攻擊特征向量識別異常數據包。

3)基于P4-BF(Bloom Filter)在數據平面快速識別攻擊數據包,并對應修改其流表匹配策略,實現了對同類攻擊的即時防御。

2 相關工作

目前,SDN 網絡中針對DDoS 攻擊的檢測方法大致可以分為兩類:基于統計分析和基于機器學習。

基于統計分析的檢測方法是通過提取攻擊發生時的流量統計特征,并將其與正常網絡流量的統計特征比較,由此判斷網絡中是否發生攻擊。蔡佳曄等[7]提出一種基于Renyi 熵的攻擊防御方法,該方法利用Renyi熵分析攻擊發生時openflow 信道中ICMP 超時報文數量變化情況,以此判斷是否發生攻擊。郭偉等[8]提出一種IP熵,并將其與通信熵作為攻擊判斷標準,通過設定閾值,比較攻擊發生前后熵值的變化情況,以此實現對DDoS 攻擊的檢測。一般地,基于統計分析的方法須要依據不同的網絡環境建立正常網絡流量模型,可移植性較差。

基于機器學習的檢測方法利用機器學習算法構建檢測模型,將模型訓練結果與測試結果進行對比分析,通過不斷迭代并優化模型,提高檢測準確率。彭中聯等[9]提出一種CGANs-DNN入侵檢測模型,將改進后的GAN與DNN相結合,通過解決樣本的不平衡性來提高模型對未知/少知攻擊類型的檢測率。馬樂樂等[10]提出通過熵值檢測流是否異常,然后利用SVM 與K-means 兩種機器學習算法檢測DDoS 攻擊。Gu 等[11]提出一種基于SVM 集成和特征增強的入侵檢測框架,該方法將原始特征轉化為對數邊際密度率,并以此訓練SVM 集成分類器,實現對異常數據的檢測。Kshirsagar等[12]提出一種結合特征約簡和J48 算法的DDoS 檢測框架,該方法通過將信息增益和相關性結合以獲得更重要的特征子集,并與J48 算法結合構建檢測分類器,實現對DDoS攻擊的檢測。

有鑒于此,本文基于SDN數據平面提出了一種DDoS 實時入侵檢測與即時防御方法RT-XB,在繼承了現有方法優點的基礎上,亦能較好地彌補其不足之處。

3 RT-XB方法

RT-XB首先利用P4編程以自定義的方式配置數據平面,實現網絡數據包的按需實時收集,與此同時利用XGBoost 算法構建分類器識別異常數據包,并分析其對應的攻擊類型;然后將檢測到的數據包源信息映射到數據平面的BF 中,并對后續匹配到的該攻擊源數據包,修改流表匹配動作,實現對SDN 網絡中DDoS 攻擊的實時檢測與即時防御。RT-XB 方法具體可分為數據收集、檢測以及防御三部分,見圖1。

圖1 RT-XB方法

3.1 目標數據收集

通過利用P4 編程以自定義的方式配置數據平面,在控制器端監控指定端口的流表信息,記錄日志以及搜集pcap 文件完成數據的收集。數據平面數據包處理步驟見圖2。

圖2 數據平面數據包處理流圖

數據包收集的步驟如下:

Step1:運行數據平面,生成.json文件;

Step2:解析topology.json 文件,構建mininet 拓撲;

Step3:啟動交換機和host,導入.json文件;

Step4:解析.json文件,載入Bmv2交換機流表;

Step5:監聽端口號A,即監聽數據包,以及srcIPAddr,dstIPAddr,srcMacAddr,dstMacAddr;

Step6:記錄log,保存為pcap文件。

3.2 特征提取

在數據平面以自定義的方式收集流經交換機的數據包特征信息,具體包括源IP 地址、目的IP 地址、源端口、目的端口、傳輸數據包量、流比特數等信息。之后,將提取的數據包特征信息轉換成與DDoS攻擊有關的源IP增速、平均包流數、源端口增速、流表項增速、對流比、流表匹配的成功率、目的端口增速,并通過Relief 特征權重算法選出具有不同權重的DDoS 攻擊流量特性,最終根據權重排序選取攻擊特征。

1)源IP增速(Source IP Growing Speed,SIGS)

發動攻擊時,攻擊者為防止被追蹤,會采用欺騙源IP 的方式在一定時間內生成大量虛假IP 地址對目標進行攻擊。

其中T 為采樣周期,NSrcIP為一個采樣周期中的源IP包個數。

2)平均包流速(Average Packets,AP)

攻擊者為發動大流量的DDoS 攻擊,攻擊所需的帶寬與攻擊流的包數量成正比。攻擊流數據包數量較之正常流量會變少。

其中N 為采樣周期中所有流的數據包的總數,Pcount為流數據包數目。

3)源端口增速(Source Port Growing Speed,SPGS)

攻擊者可采用隨機生成端口方式發動攻擊,使得攻擊發生時端口增速較之正常狀態下會顯著提升。

其中NSrcPort為一個采樣周期中源端口總數。

4)流表項增速(Rate of Flow Entries,RFE)

DDoS攻擊流會攜帶大量隨機數據包對交換機進行路由請求,交換機執行的匹配動作會在一定時間內增加。

其中NFlows為一個周期內流表項數量。

5)對流比(Percentage of Pair-Flow,PPF)

正常數據流目的是向系統請求資源,而攻擊數據流是以攻擊為目的向受害者發送單向數據流。

其中NPair為交互流對數。

6)流 表 匹 配 成 功 率(Match/Look up Ratio,MLR)

DDoS攻擊的形式決定了攻擊發生時請求交換機轉發的隨機數據包會與交換機流表項不匹配。因此可通過MLR進行攻擊檢測。

其中Nmatc?為成功匹配數目,Ntookup為流表項總匹配數目。

7)目的端 口增速(Destination Port Growing Speed,DPGS)

在正常網絡中,目的端口增速相對穩定。當DDoS攻擊發生時目的端口增速會明顯增大。

其中NDstPort為一個采樣周期中目的端口數。

算法1:Relief權重計算

輸入:帶有類別標記的原始數據集T

1.根據數據標簽對原始樣本分類,其中D1 為攻擊樣本,D2為正常樣本;

2.對D1、D2進行歸一化處理;

3.置零所有特征權重w,置零特征權重集合X,設置迭代次數m,樣本維度N,特征權重閾值?;

4.FOR i=1 to m do

4.1 從總樣本中隨機不放回抽取樣本R

4.2 在同類樣本中尋找歐氏距離最近的樣本H,在不同類樣本中尋找歐式距離最近樣本M;

4.3 FORj=1 toNdo

4.4 FOR A=1 toNdo

4.5 IFW(j)≥?

將第j個特征添加到T中

4.6 End FOR

4.7 End FOR

5.End FOR

輸出:每個特征值的特征權重集合X

如算法1,本文通過Relief 算法來度量攻擊特征和數據包是否為異常兩類別之間的相關性。設樣本空間S={s1,s2,s3…sn} 中每個樣本包含m 個特征,其中Si={si1,si2,si3…sim} ,1 ≤i≤n,特征值分為離散型和連續型;Si的類別為ci?C,C={c1,c2}為樣本的類別集合。對于兩個樣本Si和Sj(1 ≤i≠j≤n)在特征t(1 ≤t≤m)上的差值定義如下:

(1)特征t為離散型屬性:

(2)特征t為連續型屬性:

3.3 XGBoost分類檢測

由于網絡流量特征在正常狀態與攻擊狀態下呈現不同特性,因此可將攻擊檢測問題看作一種特征分類問題。檢測的流程為:對收集到的數據提取特征,并對樣本標記正常或異常。本文采用XGBoost 算法依據特征樣本序列構建檢測模型,并利用該模型對樣本中未經標記的數據進行分類檢測。

算法2:貪心算法提取分割點算法

輸入:I,instance set of current node

輸入:d,feature dimension

1.gain←0

2.

3.FORk=1 to m do

4.GL←0

5.FOR j in sorted (I,by Xjk) do

6.GL←GL+gj

7.End FOR

8.GL←GL+gj

9.GR←G-GL

10.score←max(score,GL+GR-G)

11.End FOR

輸出:Split with max score

XGBoost算法的目標函數定義如下:

目標函數式(10)由L(θ)與Ω(θ)兩部分組成。其中表示可微損失函數,即預測值與目標值的誤差,表明數據與模型的擬合程度,一般有均方損失函數和邏輯回歸損失函數兩種形式;是一個正則化項,用于反映模型的復雜程度,其中T 代表所構建樹的葉子節點數,γ表示學習率,γ?(0,1),T與γ的乘積為生成樹的修剪參數。XGBoost算法為防止過擬合添加了正則化參數,其中w為葉子的權重,當被設為零時,XGBoost算法退化成傳統的梯度提升樹算法。

本文使用式(11)來優化目標函數(10):

通過式(11)構建樹結構,使目標函數(10)在每次迭代中誤差最小。此樹結構于前棵樹的結論和殘差中學習,以適合當前的殘差回歸樹,其中St(Ti)表示實例i在t次迭代中生成的樹。

式(11)在求解平均損失函數的過程中可獲得最優解,但在損失函數非二次函數的情況下無法計算其他函數的平方誤差。因此,式(11)利用二階泰勒展開式展開成二階函數求解,得到式(12)。

最后,通過貪心算法迭代找到每棵樹的最佳分割點,最小化目標函數,如算法2 所示。在算法2中,j是遍歷該排序的所有特征值的索引,k定義遍歷所有樣本的次數。

3.4 基于BF的即時防御

為應對實時檢測出的攻擊數據包,依據已檢測出的攻擊源信息,通過在數據平面使用P4 將其映射為一個BF,實現對后續同類數據包的快速識別;與此同步,修改數據平面流表匹配操作,制定數據包丟棄策略,即時防御同一攻擊源的數據包。

3.4.1 防御策略

本節在數據平面以P4 實現具有5 個哈希函數的BF。針對3.2節中檢測到的異常數據包,通過記錄其數據包的信息srcAddr,dstAddr,srcPort,dstPort,pro,構成基于數據包的交換機流表ID,Ta,Tname,Action,其中:S為IPsrc,IPdst,P,p;P為相應協議,具體包括IP,TCP,UDP,ARP;p為轉發的端口號,見表1。基于上述信息,將異常數據包信息以哈希值的形式存入BF 數組中,同時修改流表匹配操作,以此實現對后續來自于同一攻擊源數據包的防御。

表1 特征數據包元組

具體地,本文中使用的BF 是一個32bit 位的數組,采用5 個?i(i=1,2,3,4,5)由crc16 與crc32[13]以及相互組合構成的哈希函數。在此基礎上,首先定義寄存器陣列位置(reg_pos_o,reg_pos_t,reg_pos_t?,reg_pos_f,reg_pos_fi),(reg_val_o,reg_val_t,reg_val_t?,reg_val_f,reg_val_fi)為其對應的取值;然后,將檢測得到的異常數據包信息ip1,ip2,port1,port2,pro以數組的方式計算其哈希值,并映射到32 位初始值全為0 的bit數組中,?i映射的位置都將被設置為1,對應位數值保存至對應寄存器位變量處,如圖3所示。

圖3 哈希函數映射圖

通過在數據平面解析器處定義有限狀態機的方式解析數據包,根據不同的狀態解析數據包包頭。解析器通過有限狀態機的方式判別ethernet,ipv4,tcp狀態的有效性。待狀態機工作完成則使用?i(i=1,2,3,4,5)以數據包的srcAddr,dstAddr,srcPortdstPort,pro信息進行5 次哈希運算,并根據具體映射得到的bit位置讀取其在BF 中(reg_val_o,reg_val_t,reg_val_t?,reg_val_f,reg_val_fi)的值。若其值都為1,則可判定該數據包與BF 中的攻擊數據包同源,從而在數據平面按照設定的處理策略予以丟棄,實現對攻擊的即時防御。

3.4.2 性能分析

BF 在進行匹配防御時,由于其數據結構自身的特性,存在一定的假陽性率。在本文中,假定kn

由此可以推得,其假陽性率為式(14):

圖4給出BF-h5在不同數據規模的假陽性率。

圖4 BF-h5在不同數據規模下假陽性率

4 實驗與有效性評價

實驗平臺為Mininet,控制平面采用支持P4 的ONOS 控制器,該控制器支持P4runtime 南向協議;數據平面是由多個支持P4的Bmv2交換機組成。

4.1 實驗數據集

實驗樣本采用加拿大網絡安全研究所(CIC)的CICDDoS2019 公開網絡流量數據集,下載地址為https://www.unb.ca/cic/datasets/ddos-2019[14]。該數據集包含了為期一周的網絡流量,其中周一為正常流量;周三為各種形式的DDoS攻擊流量。其中,每條記錄都包含了時間戳、源IP 地址和目的IP 地址等完整的數據包信息,以pcap 格式保存。DDoS 攻擊樣本采用CIC DrDoS_NTP 數據集。通過設置不同的采樣周期提取相應信息,最后整理成對應的流表項信息。正常樣本與異常樣本分布如表2所示。

表2 正常樣本與異常樣本數據集分布(單位:個)

4.2 實驗結果與分析

根據本文所提攻擊特征項,首先將不同樣本類型的數據進行信息提取,形成兩種類型的特征;然后通過Relief 算法對特征進行權重排序,選取特征權重高的6 個特征項;最后使用XGBoost 算法分類器對正常與異常特征子集進行相應的訓練與測試。

4.2.1 Relief特征權重實驗結果

通過對7個與攻擊有關的特征項進行Relief權重計算,得出特征項權重見表3。根據特征權重排序結果,源端口增速與目的端口增速權重相近。考慮到DDoS 攻擊對目標主機進行攻擊時,攻擊者使用多端口對目的主機進行攻擊的效果更好,因此在“目的端口增速”與“源端口增速”中選擇目的端口增速作為特征指標之一。對流比權重最小,但是考慮到在攻擊發生初期,SDN交換機會對該數據包進行正常的流表匹配與應答處理,因此會導致該特征的權重較小的偶然結果,為避免偶然性,因此選取該特征作為特征指標之一。最終選取6 個特征項作為本實驗的分類特征,見表3。

表3 特征權重表

4.2.2 XGBoost分類器檢測結果與分析

利用XGBoost 算法構建算法分類器,并將檢測結果與Random Forest[15]、SVM[16]以及GBDT[17]從檢測準確率(Detect Accuracy Rate,DAR)(式(15))、假陽性率(False Acceptance Rate,FAR)(式(16)),以及檢測時間3個指標進行了比較。表4給出了各算法分類器整體的性能。

表4 各算法性能比較

從圖5 可以看出,與其他三種機器學習算法相比,在準確率方面,本文提出的RT-XB 方法效果明顯,準確率逐步提升,最終取得接近99%的準確率。

圖5 不同數據規模下的準確率比較

圖6 顯示,在假陽性率方面,RT-XB 方法相較于其他三種機器學習算法,在不同的數據集規模的情況下,取得最低的假陽性率,且持續下降。

圖6 不同數據規模下的假陽性率比較

圖7 顯示,隨著數據集規模的擴大,各算法檢測時間隨之增長,本文提出的RT-XB 方法優勢更加明顯。因此,綜合三個指標,RT-XB 方法在SDN網絡中對DDoS攻擊具有較好的檢測效果。

圖7 不同數據規模下的檢測時間比較

4.3 防御結果

在SDN 仿真實驗平臺上,模擬正常網絡流量,并利用Hping3 工具模擬攻擊流量,以此測試在RT-XB 方法防御前后數據流量的變化情況。如圖8所示。

圖8 Bloom Filter防御效果

圖8 顯示,在正常狀態下網絡流量基本呈現穩定態勢,波動不大。當不使用RT-XB 方法時,在第20s 時發動攻擊后,攻擊流量成倍增加,約60s 時攻擊流量達到頂峰并相對穩定。當使用RT-XB 方法時,RT-XB 方法在攻擊發生約4s后即啟動,并根據定義的流表策略實現對攻擊流量的防御,其后網絡中的流量較攻擊發生時流量逐步減少,并最終趨于穩定。

5 結語

本文針對SDN 網絡中的DDoS 攻擊問題,設計并實現了一種能夠實時檢測與即時防御的RT-XB方法。與現有DDoS 攻擊檢測方法相比,該方法充分整合了SDN與機器學習的優點。實驗結果顯示,與現有同類方法相比,RT-XB 不僅實時檢測效率高,假陽性率可控,而且即時防御功能較強。

猜你喜歡
特征檢測方法
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
如何表達“特征”
不忠誠的四個特征
當代陜西(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
捕魚
主站蜘蛛池模板: 啪啪啪亚洲无码| 久久精品一卡日本电影| 亚洲色婷婷一区二区| 国产性生大片免费观看性欧美| 人人看人人鲁狠狠高清| 国产一级在线播放| 日韩国产综合精选| 免费一级无码在线网站| 99久久精品无码专区免费| h网站在线播放| 久久综合久久鬼| 亚洲成av人无码综合在线观看 | 国产一级小视频| 国产熟女一级毛片| 99久久99这里只有免费的精品| 97国产在线视频| 熟妇人妻无乱码中文字幕真矢织江| 久久91精品牛牛| 国产精品真实对白精彩久久| 尤物国产在线| 日韩小视频网站hq| 嫩草影院在线观看精品视频| 欧日韩在线不卡视频| 久久99国产综合精品女同| av在线人妻熟妇| 亚洲无码高清视频在线观看| 国产麻豆aⅴ精品无码| 无码精油按摩潮喷在线播放| 91国内外精品自在线播放| 亚洲aaa视频| 欧美午夜视频在线| 国产99视频免费精品是看6| 日韩免费中文字幕| 久久综合九九亚洲一区| 久久一级电影| 国产在线视频导航| 男人天堂伊人网| 欧美乱妇高清无乱码免费| 午夜成人在线视频| 无码内射中文字幕岛国片| 一本色道久久88综合日韩精品| 香蕉精品在线| 在线五月婷婷| 欧美视频在线第一页| 亚洲不卡av中文在线| 国产精品女在线观看| 不卡色老大久久综合网| 成年人久久黄色网站| 亚亚洲乱码一二三四区| 国产玖玖视频| 91福利免费视频| 小说区 亚洲 自拍 另类| 国产黄色爱视频| 亚洲精品制服丝袜二区| 欧美一级高清片久久99| 无码精品一区二区久久久| 激情国产精品一区| 狠狠躁天天躁夜夜躁婷婷| 一级成人a做片免费| 国产一级二级在线观看| 亚洲中文无码av永久伊人| 国产啪在线91| 麻豆国产原创视频在线播放 | AⅤ色综合久久天堂AV色综合| 国产精品粉嫩| 天天摸天天操免费播放小视频| 欧美日韩亚洲国产| 日韩天堂视频| 国产精品亚洲一区二区三区z | 亚洲娇小与黑人巨大交| 国产精品嫩草影院av| 嫩草国产在线| 在线播放国产99re| 国产精品嫩草影院av| 国产精品污污在线观看网站| 55夜色66夜色国产精品视频| 亚洲中文精品人人永久免费| h网站在线播放| 国产精品亚洲综合久久小说| 毛片在线播放网址| 国产制服丝袜无码视频| 97视频在线精品国自产拍|