亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        SDN 環(huán)境下的LDoS 攻擊檢測與防御技術(shù)*

        2020-04-15 09:45:18白志華閆麗娜
        計(jì)算機(jī)與生活 2020年4期
        關(guān)鍵詞:檢測

        顏 通,白志華,高 鎮(zhèn)+,閆麗娜,周 蕾

        1.天津大學(xué) 電氣自動化與信息工程學(xué)院,天津 300072

        2.北京智芯微電子科技有限公司,北京 102200

        1 引言

        低速率拒絕服務(wù)(low-rate denial of service,LDoS)攻擊是近些年來出現(xiàn)的一種新型的網(wǎng)絡(luò)攻擊方式[1-2],其主要針對網(wǎng)絡(luò)中的各種自適應(yīng)機(jī)制的漏洞,比如TCP(transmission control protocol)協(xié)議中的擁塞控制機(jī)制、路由器的隊(duì)列管理機(jī)制等進(jìn)行攻擊。LDoS攻擊利用周期性的高速率短時脈沖,使得網(wǎng)絡(luò)不斷地在穩(wěn)定狀態(tài)與非穩(wěn)定狀態(tài)之間變換,嚴(yán)重降低網(wǎng)絡(luò)的性能。由于LDoS 攻擊端在大部分時間內(nèi)保持靜默狀態(tài),因此LDoS 攻擊的平均流量很低,這大大增加了檢測的難度。與傳統(tǒng)的DoS 攻擊相比,該攻擊有以下幾個顯著的特點(diǎn)[1]:

        (1)攻擊所利用的各種漏洞來自于網(wǎng)絡(luò)中的各種自適應(yīng)機(jī)制,因此攻擊所引起的各種反應(yīng)對于受害者來說是合法的,這會導(dǎo)致受害者長期受到攻擊而無法察覺;

        (2)采用間歇式的攻擊方式,攻擊流量的平均速率很低,很容易混在正常流量中而不被察覺,因此該攻擊隱蔽性非常好;

        (3)攻擊成本低,無需維持長時間的高速攻擊流量,攻擊所需要的數(shù)據(jù)流量遠(yuǎn)小于洪泛式DoS 攻擊。

        LDoS 攻擊脈沖的數(shù)學(xué)模型可以用一個三元組(R,L,T)來表示,其中R表示脈沖的幅度,是攻擊流量的最大值;L表示每個攻擊脈沖的持續(xù)時間;T表示攻擊脈沖的周期,是兩個連續(xù)攻擊脈沖的時間間隔。具體表示如圖1 所示。

        Fig.1 LDoS attacks traffic圖1 LDoS 攻擊流量

        作為目前網(wǎng)絡(luò)中使用最為廣泛的傳輸協(xié)議,TCP協(xié)議在互聯(lián)網(wǎng)中發(fā)揮著至關(guān)重要的作用。目前提出的各種LDoS 攻擊大多數(shù)都是針對TCP 協(xié)議中的各種自適應(yīng)機(jī)制提出的,而擁塞控制機(jī)制是TCP 協(xié)議中最為重要的自適應(yīng)機(jī)制,下面主要針對TCP 擁塞控制機(jī)制的LDoS 攻擊進(jìn)行介紹。

        TCP 協(xié)議擁塞控制機(jī)制的主要思想是發(fā)送端根據(jù)當(dāng)前的鏈路擁塞情況動態(tài)地調(diào)整報文發(fā)送的速率。針對TCP 擁塞控制機(jī)制的LDoS 攻擊主要利用了TCP 擁塞控制算法中的超時重傳(retransmission time out,RTO)和加增減乘(additive increase multiplicative decrease,AIMD)兩種自適應(yīng)機(jī)制。利用具有周期性短時高速脈沖特點(diǎn)的攻擊流量造成正常TCP流量的周期性丟包,制造不同程度的網(wǎng)絡(luò)擁塞狀況,從而不斷觸發(fā)TCP 的超時重傳和加增減乘兩種自適應(yīng)機(jī)制,使得正常TCP 發(fā)送端的擁塞控制窗口一直處于很小的狀態(tài),導(dǎo)致受害主機(jī)的TCP 吞吐量急劇降低,嚴(yán)重影響網(wǎng)絡(luò)性能。其攻擊過程如圖2 所示。

        Fig.2 LDoS attack based on RTO mechanism圖2 基于RTO 機(jī)制的LDoS 攻擊

        作為下一代網(wǎng)絡(luò)的熱門解決方案,軟件定義網(wǎng)絡(luò)(soft defined networking,SDN)越來越受到人們的關(guān)注[3],但作為一種新型的網(wǎng)絡(luò)架構(gòu),其同樣面臨著各種各樣網(wǎng)絡(luò)攻擊的威脅。傳統(tǒng)網(wǎng)絡(luò)中各種攻擊方式,如分布式拒絕服務(wù)(distributed denial of service,DDoS)[4-5],在SDN 網(wǎng)絡(luò)中依然有效[6-7],同時控制器在整個SDN網(wǎng)絡(luò)中起著至關(guān)重要的作用,一旦控制器發(fā)生宕機(jī),整個SDN 網(wǎng)絡(luò)將陷入癱瘓狀態(tài)。因此,針對控制器的攻擊將會對整個SDN 網(wǎng)絡(luò)造成致命的打擊。SDN網(wǎng)絡(luò)下同樣存在著LDoS 攻擊的威脅,且危害巨大,同時SDN 網(wǎng)絡(luò)控制與轉(zhuǎn)發(fā)分離、網(wǎng)絡(luò)行為可編程等特點(diǎn)又為LDoS 攻擊的檢測與防御提供了新的思路,在SDN 網(wǎng)絡(luò)環(huán)境下研究LDoS 攻擊的檢測與防御機(jī)制具有重要的意義。

        2 相關(guān)工作

        文獻(xiàn)[2]首次提出低速率拒絕服務(wù)攻擊,其后對于LDoS 的檢測和防御的研究一直是網(wǎng)絡(luò)安全領(lǐng)域的熱點(diǎn),國內(nèi)外研究人員提出了各種檢測與防御機(jī)制。目前,LDoS 攻擊的檢測方法可以分為時域檢測和頻域檢測兩大類。

        頻域檢測方法主要是在頻域上對網(wǎng)絡(luò)流量進(jìn)行分析,將信號檢測理論以及濾波器理論應(yīng)用到低速率拒絕服務(wù)攻擊的檢測中[8]。其主要思想是采用信號處理技術(shù)與網(wǎng)絡(luò)流量數(shù)據(jù)處理技術(shù)相結(jié)合,把經(jīng)典的信號檢測理論和濾波器理論應(yīng)用到LDoS 攻擊流量的檢測和過濾方法中。文獻(xiàn)[9]發(fā)現(xiàn)攻擊流量和正常流量的功率譜密度存在明顯差異,并提出了利用攻擊流量和正常流量之間歸一化功率譜密度的最大距離作為判別LDoS 攻擊的依據(jù)。文獻(xiàn)[10-11]提出采用小波處理來檢測LDoS 攻擊流量的思想,利用離散小波變換(discrete wavelet transform,DWT)技術(shù)將網(wǎng)絡(luò)流量變換成為高、中、低3 個頻率分量,從而實(shí)現(xiàn)攻擊流量的檢測。文獻(xiàn)[12]提出了采用卡爾曼濾波一步預(yù)測的方法檢測LDoS 攻擊,該方法根據(jù)攻擊開始時觀察到的受害端流量發(fā)生異常突變的特征,采用一步預(yù)測與最優(yōu)估算的誤差值作為檢測依據(jù)。文獻(xiàn)[13]提出了一種基于頻譜分析的LDoS 攻擊流過濾方法,將TCP 流量和LDoS 攻擊流從時域轉(zhuǎn)換到頻域,并基于無限脈沖響應(yīng)濾波器設(shè)計(jì)了一種梳狀濾波器來濾除頻域中的LDoS 攻擊流。該方法在有效濾除LDoS 攻擊流的同時對合法TCP 流量的影響較小。文獻(xiàn)[14]提出了一種適用于LDoS攻擊檢測的自適應(yīng)核主成分分析(kernel principal component analysis,KPCA)方法,通過小波多尺度分析提取網(wǎng)絡(luò)流量,利用平方預(yù)測誤差統(tǒng)計(jì)檢測LDoS 攻擊。文獻(xiàn)[15]通過將功率譜分析與信息熵相結(jié)合,引入傅里葉功率譜熵和小波功率譜熵來檢測LDoS 攻擊,并提出了基于功率譜熵的排隊(duì)算法緩解LDoS 攻擊。文獻(xiàn)[16]根據(jù)網(wǎng)絡(luò)流量存在多重分形特征,提出了一種基于小波變換和組合神經(jīng)網(wǎng)絡(luò)的識別方法,對普通網(wǎng)絡(luò)流量和LDoS 攻擊流量進(jìn)行分類。文獻(xiàn)[17]提出了一種基于相關(guān)的方法來檢測LDoS 攻擊。利用Hilbert-Huang 變換得到網(wǎng)絡(luò)流量的希爾伯特頻譜,獲取更多的網(wǎng)絡(luò)流量信息,實(shí)現(xiàn)有效地檢測LDoS 攻擊。文獻(xiàn)[18]通過小波分析,比較正常網(wǎng)絡(luò)流量和被LDoS 攻擊的流量之間的H?lder 指數(shù)的差值與基于統(tǒng)計(jì)結(jié)果設(shè)置的檢測閾值的關(guān)系來檢測LDoS 攻擊是否存在。

        在時域范疇內(nèi),文獻(xiàn)[19]提出了用信息指標(biāo)檢測LDoS 攻擊,給出了廣義熵和信息距離兩種檢測方法,并提出了一種基于信息距離的IP 追蹤方法,該方法能夠在較短時間內(nèi)追蹤到攻擊源。文獻(xiàn)[20]將LDoS 攻擊流量視為有明顯周期性的小信號,基于小信號檢測理論,提出了一種基于小信號模型的LDoS攻擊檢測方法。文獻(xiàn)[21]研究了基于時間窗統(tǒng)計(jì)的LDoS 攻擊檢測方法,該方法通過在時域進(jìn)行單位時間內(nèi)的異常脈沖統(tǒng)計(jì)分析,揭示了在LDoS 攻擊期間,網(wǎng)絡(luò)的正常流量下降很大的同時,攻擊流量出現(xiàn)短時間不規(guī)則的高脈沖現(xiàn)象,提出了采用時間窗統(tǒng)計(jì)的方法來檢測LDoS 攻擊。文獻(xiàn)[22]提出了采樣語音識別中的動態(tài)時間環(huán)繞方法(dynamic time warping,DTW)來實(shí)現(xiàn)攻擊流量匹配的檢測方法。文獻(xiàn)[23]提出了一種基于LDoS 攻擊下的TCP 流量比DDoS 攻擊下的正常流量更加離散的事實(shí)來檢測LDoS 攻擊的新方法,根據(jù)TCP 流量的離散特征,采用兩步聚類分析對網(wǎng)絡(luò)流量進(jìn)行聚類,然后通過異常分片檢測可疑的聚類,該方法能有效地檢測LDoS 攻擊。文獻(xiàn)[24]從序列匹配的角度研究了LDoS 攻擊的特征,提出了一種基于Smith-Waterman 局部序列比對算法的LDoS 攻擊檢測方法,將局部構(gòu)建的檢測序列與背景流進(jìn)行比較,獲得LDoS 攻擊的特征參數(shù),從而實(shí)現(xiàn)檢測LDoS 攻擊的目的。文獻(xiàn)[25]利用提取到的攻擊流特征提出了基于簡單距離算法和自適應(yīng)閾值算法相結(jié)合的方法檢測LDoS 攻擊。文獻(xiàn)[26]將路由器隊(duì)列特征采用核主成分分析(KPCA)降維,作為神經(jīng)網(wǎng)絡(luò)輸入,再利用神經(jīng)網(wǎng)絡(luò)自學(xué)習(xí)能力生成LDoS 分類器,達(dá)到檢測LDoS 攻擊的目的。

        當(dāng)前LDoS 攻擊的研究主要集中在傳統(tǒng)網(wǎng)絡(luò)架構(gòu)中,針對SDN 環(huán)境下LDoS 攻擊檢測的研究還相對較少。SDN 控制與轉(zhuǎn)發(fā)分離、網(wǎng)絡(luò)行為可編程等特點(diǎn)為LDoS攻擊的檢測提供了新的思路?;赟DN的這些特點(diǎn),本文在SDN 環(huán)境下對LDoS 攻擊的檢測與防御機(jī)制進(jìn)行了研究,設(shè)計(jì)了一種在基于OpenFlow協(xié)議的SDN 網(wǎng)絡(luò)下實(shí)現(xiàn)LDoS 攻擊檢測與防御的機(jī)制。利用OpenFlow 流表對每條流的流量進(jìn)行單獨(dú)統(tǒng)計(jì),實(shí)現(xiàn)攻擊流量與正常流量的分離,然后提出了一種雙滑動窗口檢測方法用于檢測具有周期性短時脈沖特點(diǎn)的攻擊流量,從而實(shí)現(xiàn)攻擊的檢測。一旦檢測到攻擊,控制器便通過下發(fā)流表的方式實(shí)現(xiàn)對攻擊的實(shí)時防御。該檢測機(jī)制時效性高,易于實(shí)現(xiàn)。

        3 檢測與防御機(jī)制

        在基于OpenFlow 協(xié)議的SDN 網(wǎng)絡(luò)中,控制器通過下發(fā)流表的方式對交換機(jī)的轉(zhuǎn)發(fā)行為進(jìn)行控制,同時流表又可以用于對每條流的流量信息進(jìn)行單獨(dú)統(tǒng)計(jì)?;赟DN 的這個特點(diǎn),本文提出了一種基于OpenFlow 協(xié)議的LDoS 攻擊檢測與防御機(jī)制。LDoS攻擊之所以難以檢測,是因?yàn)楣袅髁垦蜎]在正常流量之中,而攻擊流量的平均速率又很低,從而導(dǎo)致混入了攻擊流量的混合流量與正常流量的差異很小。本文利用SDN 可以方便地對每條流的流量進(jìn)行單獨(dú)統(tǒng)計(jì)的特點(diǎn),將具有周期性短時高速脈沖特點(diǎn)的攻擊流量從混合流量中篩選出來,從而實(shí)現(xiàn)攻擊的檢測。然后從攻擊流的流表信息中提取出攻擊者的MAC地址等信息,通過下發(fā)流表的方式進(jìn)行攻擊的防御。

        3.1 流量信息采集過程

        攻擊檢測的前提是準(zhǔn)確地獲取網(wǎng)絡(luò)的各種信息,如端口、業(yè)務(wù)流的流量統(tǒng)計(jì)信息以及數(shù)據(jù)包的解析信息等。在傳統(tǒng)網(wǎng)絡(luò)架構(gòu)中,若想獲取這些信息,需要在網(wǎng)絡(luò)中部署相應(yīng)的數(shù)據(jù)采集模塊,而在基于OpenFlow 協(xié)議的SDN 環(huán)境下,OpenFlow 交換機(jī)會收集端口和流的統(tǒng)計(jì)信息,而這些都是基于OpenFlow流表來實(shí)現(xiàn)的,不需要額外的采集設(shè)備??刂破骺梢酝ㄟ^周期性的輪詢獲取交換機(jī)的各種統(tǒng)計(jì)信息,利用這些統(tǒng)計(jì)信息便可以計(jì)算出每條流或每個端口的實(shí)時速率等信息,整個輪詢過程如圖3 所示[27]。

        Fig.3 Polling process for switch statistics圖3 交換機(jī)統(tǒng)計(jì)信息的輪詢過程

        控制器通過周期性向交換機(jī)發(fā)送Multipart-Request 消息請求交換機(jī)的統(tǒng)計(jì)信息,根據(jù)交換機(jī)回應(yīng)的統(tǒng)計(jì)信息計(jì)算出各個數(shù)據(jù)流或者端口的速率。單條流的速率計(jì)算公式如式(1):

        其中,bn為第n次輪詢時flow_stats_reply消息中byte_count字段的值,表示到目前為止,該條流表已經(jīng)處理過的字節(jié)數(shù),tn為第n次輪詢時,根據(jù)flow_stats_reply 消息中Duration_sec 和Duration_nsec 字段的值計(jì)算出的時間,代表當(dāng)前流表已經(jīng)存在的時間,則Vn為兩次輪詢間隔內(nèi)的平均速率,端口速率可以采用類似的方法獲得。

        LDoS 攻擊流量為周期性短時高速率脈沖,脈沖的持續(xù)時間很短,往往只有幾百毫秒,因此若想檢測出攻擊脈沖,必須采用較高的輪詢頻率,這樣勢必會給控制器造成很大的負(fù)載壓力。本文提出了一種基于端口流量異常的自適應(yīng)輪詢機(jī)制,只有當(dāng)端口流量出現(xiàn)異常時,才會加快輪詢頻率,對是否真正遭受到攻擊進(jìn)行更進(jìn)一步的判斷,這樣可以避免長時間過高的輪詢頻率給控制器和通信鏈路帶來過大的壓力。

        由LDoS 攻擊的原理可知,LDoS 通過周期性的短時高速脈沖,造成交換機(jī)或者路由器的隊(duì)列瞬間被占滿,從而導(dǎo)致正常TCP 流丟包,最終使得正常TCP 源端主動降低自己的發(fā)送速率,嚴(yán)重影響網(wǎng)絡(luò)的性能。通過觀察發(fā)現(xiàn),當(dāng)發(fā)生LDoS 攻擊時,瓶頸鏈路上的交換機(jī)或路由器的端口流量會出現(xiàn)流入與流出不平衡現(xiàn)象,定義:

        其中,inpacks為一段時間內(nèi)某個交換機(jī)所有端口流入的數(shù)據(jù)包總數(shù),outpacks為所有端口流出的數(shù)據(jù)包總數(shù)。在正常情況下Δp的值很小,即交換機(jī)或路由器流量的流入與流出處于一種相對平衡的狀態(tài)。但當(dāng)LDoS 攻擊發(fā)生時,大量的數(shù)據(jù)包會在短時間內(nèi)流入交換機(jī)內(nèi),假如該交換機(jī)的出口鏈路為瓶頸鏈路,由于受到鏈路帶寬的限制,交換機(jī)無法及時將瞬間涌入的數(shù)據(jù)包轉(zhuǎn)發(fā)出去,只能將其存在緩存中,如果緩存滿了,就只能丟掉,這樣就會導(dǎo)致Δp的值瞬間增大。因此,可以通過計(jì)算每個交換機(jī)的Δp值來對是否遭受LDoS 攻擊進(jìn)行預(yù)判斷,圖4 為基于端口流量異常的自適應(yīng)輪詢機(jī)制流程圖。

        Fig.4 Adaptive polling mechanism based on port traffic anomaly圖4 基于端口流量異常的自適應(yīng)輪詢機(jī)制

        3.2 雙滑動窗口攻擊檢測過程

        LDoS 攻擊之所以難以檢測,是因?yàn)槠涔袅髁康钠骄俾屎艿停[藏在正常流量中而不易被察覺。本文提出的LDoS 攻擊檢測機(jī)制的思路是利用OpenFlow 流表對每條流單獨(dú)統(tǒng)計(jì)速率,這樣便可以將攻擊流量與正常流量分離開,從而將具有周期性短時高速脈沖特點(diǎn)的攻擊流量檢測出來。如圖5 所示,正常流量flow1 和攻擊流量flow2 混合在一起形成的混合流量與正常流量的差別很小,很難檢測到攻擊流量的存在。利用OpenFlow 流表對每條流的流量進(jìn)行單獨(dú)統(tǒng)計(jì),可以將攻擊流量從混合流量中分離出來,單獨(dú)統(tǒng)計(jì)之后的正常流flow1 和攻擊流flow2的流量分別如圖6、圖7 所示。

        利用SDN 網(wǎng)絡(luò)可以對單條流進(jìn)行統(tǒng)計(jì)的優(yōu)勢,將混合流分解成多個單條流進(jìn)行分析,從而將攻擊流與正常流區(qū)分開。這樣,LDoS 攻擊的檢測問題就變?yōu)橹芷谛悦}沖流量的檢測問題,本文采用信號檢測中的雙滑動窗口法進(jìn)行周期性攻擊脈沖的檢測。

        3.2.1 信號檢測中的雙滑動窗口檢測

        在信號檢測領(lǐng)域,雙滑動窗口檢測法主要用于突發(fā)信號檢測。創(chuàng)建兩個相同寬度的滑動窗口,通過兩個窗口內(nèi)信號能量比值的變化判斷是否存在突發(fā)信號。具體流程為:設(shè)計(jì)兩個相鄰的長度都為L的窗口,假設(shè)兩個窗口分別為A和B,當(dāng)兩個窗口在接收到的信號上進(jìn)行滑動時,落入到兩個窗口內(nèi)的信號能量分別為EA和EB,其中EA和EB的計(jì)算方法如下:

        二者比值為:

        當(dāng)開始進(jìn)行信號檢測時,窗口A和窗口B隨著時間采樣信號開始滑動,當(dāng)兩個窗口內(nèi)都只包含白噪聲時,兩個窗口能量的比值m(n)接近于1。當(dāng)突發(fā)信號進(jìn)入窗口B時,m(n)的值隨之增大,當(dāng)突發(fā)信號正好完全進(jìn)入窗口B中時,m(n) 的值達(dá)到最大值Max。接下來隨著窗口的滑動,突發(fā)信號逐漸進(jìn)入窗口A并離開窗口B,此時m(n)的值又會逐漸減小,輸入信號能量變化劇烈時m(n)的值比較大,因此可以根據(jù)m(n)和門限值Th的關(guān)系來判斷突發(fā)信號的有無,具體過程如圖8 所示。

        Fig.8 Double sliding window method圖8 雙滑動窗口法檢測過程

        3.2.2 雙滑動窗口檢測攻擊脈沖

        本文根據(jù)信號檢測的雙滑動窗口方法,提出了一種對周期性的攻擊脈沖進(jìn)行檢測的機(jī)制,在兩個窗口內(nèi)對采樣值進(jìn)行平滑處理,減小單個突發(fā)采樣點(diǎn)對判決結(jié)果的影響,只有連續(xù)多個高速率的采樣值才會被判定為攻擊脈沖流量。具體檢測方案如下:

        (1)設(shè)定相關(guān)參數(shù)。設(shè)定采樣時間為t,滑動窗口A和滑動窗口B的長度皆為N。N的值可以根據(jù)攻擊脈沖的長度進(jìn)行設(shè)定,若采樣的時間間隔為τ,L為攻擊脈沖的長度,則滑動窗口的長度N可以設(shè)定為L/τ。

        (2)對每條流的速率進(jìn)行單獨(dú)采樣,利用式(6)計(jì)算每條流的速率,其中bi(n)為第n次輪詢時,數(shù)據(jù)流i的流量統(tǒng)計(jì)值,ti(n)為第n次輪詢時,數(shù)據(jù)流i的生存時間,xi(n)為在兩次輪詢間隔內(nèi),數(shù)據(jù)流i的平均速率。

        (3)窗口隨著采樣值的不斷增加而滑動,當(dāng)n≥2N時,分別計(jì)算兩個滑動窗口內(nèi)所有采樣值的和:

        (4)計(jì)算兩個滑動窗口內(nèi)的采樣值和的比值:

        需要注意的是,由于攻擊流中可能會存在連續(xù)多個采樣值為零的情況,因此若Ai(n)為0,為了保證mi(n)存在,令mi(n)=Bi(n)。

        (5)若mi(n)>mi(n-1),則說明此時還有較大的采樣值進(jìn)入窗口B,此時繼續(xù)滑動窗口。若mi(n)≤mi(n-1),則此時的mi(n-1)即為圖7 所示的Max值,接下來對mi(n-1)進(jìn)行判斷。

        (6)若mi(n-1)大于設(shè)定的閾值λ,則此時有連續(xù)多個較大的采樣值出現(xiàn),即可認(rèn)為此時出現(xiàn)一個異常脈沖。

        (7)若在設(shè)定的采樣時間t內(nèi),異常脈沖的數(shù)量超過設(shè)定的閾值k,則可判定該條流i為攻擊流。

        雙窗檢測的過程如圖9、圖10 所示。

        Fig.9 Flow rate sampling圖9 流量速率采樣

        Fig.10 Window sliding process圖10 窗口滑動過程

        3.3 攻擊防御過程

        依據(jù)上述攻擊檢測方法,本文基于SDN 能夠?qū)W(wǎng)絡(luò)進(jìn)行實(shí)時控制的優(yōu)勢提出了一種防御方法。一旦檢測到攻擊,基于OpenFlow 協(xié)議的SDN 控制器便可以通過下發(fā)流表的方式對攻擊行為進(jìn)行實(shí)時防御??刂破鞲鶕?jù)攻擊流中提取到的流表信息可以定位到攻擊主機(jī)所連的交換機(jī)端口,然后通過下發(fā)流表的方式對該端口進(jìn)行隔離。例如,可以通過向攻擊主機(jī)所連的交換機(jī)下發(fā)表1 所示的流表來實(shí)現(xiàn)端口的隔離。

        Table 1 Flow table required for port isolation表1 端口隔離法所需的流表

        這種方法可以將攻擊主機(jī)永久地從網(wǎng)絡(luò)中下線,有效地防止攻擊者篡改IP地址或MAC地址之后再次將攻擊流量注入到網(wǎng)絡(luò)中,具體的防御過程如下:

        (1)提取信息。一旦檢測到攻擊流量,從攻擊流量的流表中提取出攻擊的源MAC、目的MAC等信息。

        (2)定位攻擊源。根據(jù)源MAC 地址,控制器定位攻擊主機(jī)所在的交換機(jī)及所連接的端口。

        (3)流表生成。構(gòu)建如表1 所示的流表,匹配域?yàn)镮N_PORT=攻擊主機(jī)所連的端口,動作域?yàn)锳ction=Drop。

        (4)流表下發(fā)。向攻擊主機(jī)所連的交換機(jī)下發(fā)步驟(3)中構(gòu)建的流表,實(shí)現(xiàn)對攻擊主機(jī)的隔離。

        防御過程如圖11 所示。

        Fig.11 Defense process based on OpenFlow protocol圖11 基于OpenFlow 協(xié)議的防御過程

        4 實(shí)驗(yàn)及結(jié)果分析

        4.1 實(shí)驗(yàn)環(huán)境

        為了更加充分地驗(yàn)證基于OpenFlow 協(xié)議的LDoS 攻擊檢測與防御機(jī)制的有效性,本文使用Mininet 創(chuàng)建了一個包含OpenVSwitch 交換機(jī)、網(wǎng)絡(luò)主機(jī)在內(nèi)的模擬SDN 數(shù)據(jù)中心網(wǎng)絡(luò),并采用ONOS控制器作為整個SDN 網(wǎng)絡(luò)的控制平臺。實(shí)驗(yàn)的網(wǎng)絡(luò)拓?fù)淙鐖D12 所示。其中,主機(jī)h1、h2、h4、h5、h6為合法用戶,h3 為攻擊者,OpenFlow 交換機(jī)s4 與s5之間為瓶頸鏈路,鏈路帶寬為10 Mb/s,其余鏈路帶寬均為100 Mb/s,所有鏈路的延時均為10 ms。

        Fig.12 Experimental network topology圖12 實(shí)驗(yàn)網(wǎng)絡(luò)拓?fù)鋱D

        h1和h2 分別與h6 和h4 建立正常的TCP連接,h1、h2 為發(fā)送端,h6 和h4 為接收端,TCP流量由D-ITG工具產(chǎn)生,兩個TCP連接的發(fā)包速率均為2 400 package/s,包的大小均為512 Byte,因此兩對TCP 連接的平均速率均為2 400×512×8 bit/s=9.83 Mb/s,正常TCP 的minRTO 按照RFC 的推薦設(shè)為1 s。h3 向h5 發(fā)送UDP 攻擊流量,攻擊參數(shù)如表2 所示。

        Table 2 Attack parameter表2 攻擊參數(shù)

        4.2 參數(shù)的選取

        攻擊檢測中用到的相關(guān)參數(shù)主要有檢測時間t,采樣間隔τ,滑動窗口長度N,m值的閾值λ,脈沖數(shù)量閾值k。下面對各個參數(shù)的選取進(jìn)行分析。

        (1)采樣間隔τ。在實(shí)際網(wǎng)絡(luò)中,LDoS攻擊脈沖的長度一般為2-3RTT[8]。如果太短,不能夠?qū)е抡CP流量丟包,達(dá)不到攻擊的效果;如果太長,LDoS 攻擊就退化成了普通DoS攻擊,很容易被檢測出來。一般來說,LDoS 攻擊的脈沖長度大多集中在50~300 ms 之間,為了能夠?qū)DoS 攻擊脈沖檢測出來,采樣的時間間隔必須與脈沖長度在同一尺度上,本文的采樣時間間隔設(shè)定為50 ms。

        (2)檢測時間t與脈沖數(shù)量閾值k。由攻擊檢測的流程可知,在檢測時間t內(nèi),若異常脈沖的數(shù)量超過閾值k,則判定存在攻擊。檢測時間t會影響檢測的準(zhǔn)確性與有效性。若檢測時間過短,會導(dǎo)致誤報率過高,影響檢測的準(zhǔn)確性;若檢測時間過長,會導(dǎo)致控制器長時間維持較高的輪詢頻率,給控制器和通信鏈路造成過大的負(fù)載壓力。同時,過長的檢測時間還會導(dǎo)致檢測防御的實(shí)時性降低。閾值k可以通過t/T獲得,其中T為攻擊脈沖的周期。閾值k的值也可以根據(jù)實(shí)際的檢測需求進(jìn)行調(diào)整。為了得到最佳的參數(shù)值,本文從檢測率和誤報率兩方面對參數(shù)t和k進(jìn)行分析。在τ=50 ms,λ=5,N=6 的參數(shù)條件下,通過多次實(shí)驗(yàn),計(jì)算不同的t、k組合的檢測率和誤報率如表3 所示。

        Table 3 Detection effect under different (t, k)表3 不同(t,k)組合下的檢測效果

        從表3 中可以看出,隨著檢測時間t的增大,檢測率的提高并不是非常明顯,但是誤報率卻可以明顯降低。綜合檢測的準(zhǔn)確性和有效性兩方面進(jìn)行考察,當(dāng)t=25 s,k=20 時,可以達(dá)到較好的檢測效果。

        (3)滑動窗口N。N的值如果太小,會導(dǎo)致單個采樣點(diǎn)對判決結(jié)果的影響太大,從而導(dǎo)致誤報率過高;若N的值過大,會增加計(jì)算的復(fù)雜度,增大控制器的檢測開銷。由雙滑動窗口機(jī)制可知,滑動窗口N的最佳值是L/τ,其中L為攻擊脈沖的持續(xù)時間,τ為采樣間隔。此時,同一個攻擊脈沖的所有采樣點(diǎn)正好可以全部進(jìn)入窗口B中。在本文中τ的取值為50 ms,而L的值一般不會超過300 ms,因此本文將滑動窗口N的值設(shè)定為300 ms/50 ms=6。

        (4)m值的閾值λ。正常數(shù)據(jù)流的流量比較平穩(wěn),因此m值集中在1 附近,而波動性很大的異常流量的m值會明顯大于1。雙滑動窗口的比值m如果大于設(shè)定的閾值λ,則認(rèn)為出現(xiàn)一個攻擊脈沖。本文在τ=50 ms,t=25,k=20,N=6 的參數(shù)條件下,通過多次實(shí)驗(yàn),從檢測率和誤報率兩方面對參數(shù)λ進(jìn)行分析,得出的結(jié)果如表4所示。從表中結(jié)果可以看出,隨著λ的增大,檢測的誤報率明顯降低,但檢測率也隨著降低,當(dāng)λ=5 時,可以達(dá)到一個相對較好的效果。

        Table 4 Detection effect with different λ表4 不同λ 取值時的檢測效果

        以上討論了攻擊檢測過程用到的參數(shù)的取值,根據(jù)多次重復(fù)實(shí)驗(yàn)的結(jié)果以及以上分析,本文檢測過程中的相關(guān)參數(shù)的選取如表5 所示。

        Table 5 Selection of parameters表5 各參數(shù)的選取

        4.3 檢測過程分析

        攻擊發(fā)生后,流經(jīng)交換機(jī)s4 的數(shù)據(jù)流主要有3條,如表6 所示,分別為flow1、flow2、flow3。

        Table 6 3 streams flowing through the switch s4表6 流經(jīng)交換機(jī)s4 的3 條流

        利用Wireshark 抓包,觀察到交換機(jī)s4 的混合流量如圖13 所示,由于LDoS 攻擊流量的平均速率低且隱藏在正常流量中不易被察覺,因此很難判斷攻擊流量是否存在。基于3.2 節(jié)中分析,利用OpenFlow 流表對3 條流的流量進(jìn)行單獨(dú)速率統(tǒng)計(jì),截取其中的5 s的統(tǒng)計(jì)數(shù)據(jù),3 條流的速率分別如圖14~圖16 所示。

        Fig.13 Mixed traffic of 3 flows圖13 3 條流的混合流量

        利用雙滑動窗口檢測法分別計(jì)算3 條流的m值,如圖17~圖19 所示。從圖中可以看出,flow1 和flow2 兩條正常TCP 流的m值都集中在1 附近,說明兩條TCP 流的數(shù)據(jù)流量處于相對穩(wěn)定的狀態(tài)。而UDP 攻擊流的m值呈現(xiàn)出明顯的周期性變化,且m的峰值遠(yuǎn)大于1,根據(jù)設(shè)定的閾值λ,便可以將攻擊脈沖檢測出來。

        4.4 檢測與防御效果

        在ONOS 中添加新的應(yīng)用模塊LDoS_Detect,實(shí)現(xiàn)上述的檢測與防御機(jī)制。在ONOS 控制器中啟動LDoS_Detect 模塊,攻擊者h(yuǎn)3 發(fā)動攻擊,利用Wireshark 觀察h2 吞吐量的變化。從圖20 可以看出,h2的TCP 吞吐量在大約55 s 時急速下降,大約25 s(本文設(shè)置的檢測時間t為25 s)之后,LDoS_Detect 模塊檢測出攻擊,并下發(fā)流表進(jìn)行防御,h2 吞吐量開始恢復(fù)。

        Fig.20 Tendency of h2 after turning on LDoS_Detect圖20 開啟LDoS_Detect模塊之后h2 吞吐量的變化

        Fig.21 Flow table sent by attack defense module圖21 攻擊防御模塊所下發(fā)的流表

        在ONOS 的UI 界面上可以看到攻擊防御機(jī)制所下發(fā)的流表,如圖21 所示,該流表的匹配規(guī)則為IN_PORT=1,即交換機(jī)s4 的1 端口,該端口上連接的是攻擊主機(jī)h3。處理動作為NOACTION,表示不進(jìn)行任何處理,即丟棄。這樣,來自交換機(jī)s4 端口1 的數(shù)據(jù)包都會被丟棄,從而實(shí)現(xiàn)攻擊的防御。

        5 結(jié)束語

        本文對基于OpenFlow 協(xié)議的SDN 網(wǎng)絡(luò)內(nèi)環(huán)境下LDoS 攻擊的檢測與防御機(jī)制進(jìn)行了研究?;贠penFlow 協(xié)議的SDN 網(wǎng)絡(luò)通過下發(fā)流表的方式實(shí)現(xiàn)對交換機(jī)轉(zhuǎn)發(fā)行為的控制,并且通過流表可以很容易地對每條流的流量進(jìn)行單獨(dú)統(tǒng)計(jì),根據(jù)SDN網(wǎng)絡(luò)的這個特點(diǎn),提出了一種利用流表實(shí)現(xiàn)攻擊流與正常流相分離的檢測和防御機(jī)制。該機(jī)制包括流量信息采集、雙滑動窗口檢測、攻擊防御等模塊。然后使用Mininet 創(chuàng)建了一個包含OpenVSwitch 交換機(jī)、網(wǎng)絡(luò)主機(jī)在內(nèi)的模擬SDN 數(shù)據(jù)中心網(wǎng)絡(luò),并采用ONOS 控制器作為整個SDN 網(wǎng)絡(luò)的控制平臺,實(shí)現(xiàn)了LDoS 攻擊的模擬,并詳細(xì)分析了LDoS 攻擊的三個參數(shù)(R,L,T)對攻擊效果的影響。最后對本文提出的攻擊檢測和防御機(jī)制進(jìn)行實(shí)驗(yàn)驗(yàn)證。實(shí)驗(yàn)表明,本文所設(shè)計(jì)的LDoS 攻擊檢測機(jī)制能夠在較短的時間內(nèi)實(shí)現(xiàn)對攻擊行為的檢測,并能夠通過下發(fā)流表的方式實(shí)現(xiàn)對攻擊的實(shí)時防御。

        猜你喜歡
        檢測
        QC 檢測
        “不等式”檢測題
        “一元一次不等式”檢測題
        “一元一次不等式組”檢測題
        “幾何圖形”檢測題
        “角”檢測題
        “有理數(shù)的乘除法”檢測題
        “有理數(shù)”檢測題
        “角”檢測題
        “幾何圖形”檢測題
        国产免费一级在线观看| 亚洲av香蕉一区区二区三区| 黑色丝袜秘书夹住巨龙摩擦| 杨幂AV污网站在线一区二区| 国产 在线播放无码不卡| 国产av丝袜熟女丰满一区二区| 午夜时刻免费入口| 开心婷婷五月激情综合社区 | 国产精品18久久久久网站| 国产精品久久熟女吞精| 国产福利一区二区三区在线视频| 影音先锋男人站| 欧美色色视频| 日本视频一区二区这里只有精品| 99久久国产精品网站| 亚洲精品午睡沙发系列| 欧美久久久久中文字幕| 日本女优中文字幕有码| 亚洲成a∨人片在线观看无码| 日日噜狠狠噜天天噜av| 美女爽好多水快进来视频| 日本免费播放一区二区| 国产成人精品999视频| 中文字幕亚洲欧美日韩在线不卡 | 免费网站内射红桃视频| 无码人妻一区二区三区免费| 国产女主播强伦视频网站| 亚洲熟女一区二区三区250p| 精品人妻无码视频中文字幕一区二区三区 | 精品免费久久久久国产一区| 中文字幕亚洲一区二区三区| 熟妇熟女乱妇乱女网站| 国产精品厕所| 久久精品中文字幕免费| 人妻熟妇乱又伦精品视频| 午夜丰满少妇性开放视频| 亚洲无码中文字幕日韩无码| 国产一区二区av免费观看| 国产精品乱码一区二区三区| 久久狠狠高潮亚洲精品暴力打| 女同性恋看女女av吗|