◆方友志 譚坤淋
(重慶對外經(jīng)貿(mào)學(xué)院 重慶 401520)
本文以DDoS攻擊的檢測模型為基礎(chǔ)提出一種集成學(xué)習(xí)分布式檢測框架,能夠針對DDoS攻擊流量特點進行檢測方法的研究和分析。這種框架對流量采用了分布式的采集存儲技術(shù),同時可以對數(shù)據(jù)進行實時清洗,能夠滿足對DDoS攻擊檢測的精準(zhǔn)性與及時性等要求。結(jié)合大數(shù)據(jù)技術(shù)框架而建立的DDoS攻擊檢測系統(tǒng)使用了Gopacket、Libpcap 等工具構(gòu)建出分布式流量采集傳感器,能夠?qū)ヂ?lián)網(wǎng)中的流量進行隨時的采集,采用Spark Streaming 來構(gòu)建提取流量特征的模塊,提取多維度特征時則采用TCP/IP 的網(wǎng)絡(luò)編程模式與DDoS攻擊流量數(shù)據(jù)包相結(jié)合的方式,檢測算法方面采用了分布式森林檢測算法來對Spark 所構(gòu)建出的DDoS攻擊檢測模型進行檢測,這樣能夠最大限度的滿足對大數(shù)據(jù)流量實時檢測的需求。
機器學(xué)習(xí)屬于人工智能中的一個分支,人工智能的脈絡(luò)是從推理到感知到學(xué)習(xí),機器學(xué)習(xí)是通過讓機器進行學(xué)習(xí)來實現(xiàn)人工智能解決問題的一種方式。機器學(xué)習(xí)作為一門交叉學(xué)科,涉及了多個學(xué)科,其中包含統(tǒng)計學(xué)、概率論、算法復(fù)雜度理論以及逼近論等。通過運用機器學(xué)習(xí)理論對計算機提供訓(xùn)練,即通過訓(xùn)練能夠讓計算機系統(tǒng)地學(xué)到新的知識以及技能,進而可以對數(shù)據(jù)進行分類和預(yù)測。機器學(xué)習(xí)具有優(yōu)秀的分類能力和預(yù)測能力,能夠廣泛應(yīng)用在信息安全領(lǐng)域當(dāng)中,目前我國應(yīng)用機器學(xué)習(xí)算法的領(lǐng)域有決策樹、神經(jīng)網(wǎng)絡(luò)、支持向量機以及貝葉斯分類等算法。
DDoS攻擊即分布式拒絕服務(wù)攻擊,DDoS 通過控制網(wǎng)絡(luò)上的僵尸主機來產(chǎn)生大量的流量,通過大規(guī)模的數(shù)據(jù)流向來攻擊主機,最終達到消耗主機網(wǎng)絡(luò)帶寬以及系統(tǒng)資源,從而讓主機無法繼續(xù)正常工作的目的。DDoS 的攻擊主要分為兩種,即攻擊網(wǎng)絡(luò)帶寬資源以及攻擊系統(tǒng)資源兩種:
互聯(lián)網(wǎng)是由大量終端設(shè)備連接形成的網(wǎng)絡(luò),想要獲取某一臺服務(wù)器上的信息內(nèi)容,則需要將請求的數(shù)據(jù)指令通過特定的路徑傳遞過去,在傳遞的過程中需要經(jīng)過許多不同的網(wǎng)絡(luò)涉筆?,F(xiàn)階段我國的路由器、服務(wù)器以及交換機的數(shù)據(jù)包解析能力和網(wǎng)絡(luò)帶寬是有限的,因此當(dāng)大量的數(shù)據(jù)包向某一網(wǎng)絡(luò)進行發(fā)送時,就會造成網(wǎng)絡(luò)堵塞的情況,無法進行正常的功能運行。DDoS攻擊就是利用了這一個特點,產(chǎn)生大量無用的數(shù)據(jù)包來占領(lǐng)網(wǎng)絡(luò)設(shè)備以及途徑的帶寬,繼而造成主機面對合法請求的時候無法進行正常的響應(yīng),進而拒絕服務(wù)。DDoS網(wǎng)絡(luò)帶寬資源攻擊也能包含兩種,即直接洪水攻擊與反射放大攻擊。
2.1.1 直接洪水攻擊
這種攻擊的原理是控制大量的僵尸主機來產(chǎn)生大量無效數(shù)據(jù)包,發(fā)送給被攻擊的網(wǎng)絡(luò)或者主機,這樣能夠?qū)ζ渚W(wǎng)絡(luò)帶寬資源進行消耗。應(yīng)用最廣的直接洪水攻擊為ICMP 以及UDP 兩種洪水攻擊模式。
2.1.2 反射放大攻擊
直接洪水攻擊,操作簡單但效果并不理想,并且極易被查出攻擊源頭。反射放大攻擊能夠有效彌補這兩項缺點。利用路由器以及服務(wù)器等設(shè)備對請求所產(chǎn)生的響應(yīng)進行DDoS攻擊,這樣不僅能夠降低僵尸主機發(fā)送數(shù)據(jù)包的壓力,還能夠有效避免被查出來源。應(yīng)用最廣的反射放大攻擊為ACK、DNS 兩種反射攻擊模式。
除網(wǎng)絡(luò)帶寬攻擊外,DDoS攻擊也可以對服務(wù)器的系統(tǒng)資源進行消耗。客戶端與服務(wù)器采用TCP 協(xié)議來進行通信對話,TCP 作為通訊協(xié)議具有一定的可靠性,其連接方式按照三個階段進行,即連接創(chuàng)建、數(shù)據(jù)傳送以及連接終止。因TCP 在進行設(shè)計時并沒有考慮到安全的問題,因此具有較多漏洞可以進行攻擊。
2.2.1 TCP 洪水攻擊
服務(wù)器在TCP 協(xié)議建立連接后,會在內(nèi)存中單列出一塊區(qū)域?qū)CP 的鏈接信息進行保存,但連接過多就會對服務(wù)器內(nèi)存資源造成大量的消耗,超過一定的內(nèi)存后就會無法繼續(xù)建立連接。TCP 的洪水攻擊采用的是消耗連接數(shù)的原理,讓被攻擊目標(biāo)的服務(wù)器無法進行新連接的建立。
2.2.2 SYN 洪水攻擊
TCP 連接三階段中,客戶端如果沒有對服務(wù)器所反饋的報文回應(yīng),服務(wù)器就會在一定時間內(nèi)進行多次重傳,這個過程中TCP 的鏈接信息就會一直處于保存的狀態(tài)。SYN 洪水攻擊能夠利用僵尸主機產(chǎn)生大量SYN 同步報文,被攻擊目標(biāo)受到報文后就會向偽造的IP 地址發(fā)送應(yīng)答,但服務(wù)器并不會收到相對的數(shù)據(jù)包,這樣就會造成被攻擊服務(wù)期內(nèi)產(chǎn)生大量的無效連接,服務(wù)器的內(nèi)存資源會被大量的消耗和攻擊。
網(wǎng)絡(luò)安全領(lǐng)域近幾年的研究難點與熱點始終是DDoS,但目前仍然沒有較為統(tǒng)一的方法來對DDoS攻擊進行有效的防御。DDoS 的攻擊檢測能夠快速識別出DDoS 的攻擊流量并且發(fā)出警告,是DDoS攻擊防御的起始步驟,在整個攻擊防御的體系當(dāng)中具有相當(dāng)重要的意義。我國對DDoS攻擊檢測技術(shù)的研究主要集中在收集并且分析網(wǎng)絡(luò)中的大量流量數(shù)據(jù)來檢測有可能出現(xiàn)的攻擊情況,根據(jù)檢測模型的驗證結(jié)果能夠分為誤用檢測以及異常檢測兩種情況。
誤用檢測指的是通過收集、檢測流量中的簽名或者已經(jīng)確定的攻擊模式來進行攻擊檢測,這種檢測模型需要建立起專屬DDoS 的攻擊特征數(shù)據(jù)庫,將采集的流量與數(shù)據(jù)庫中的特征進行匹配,最后得出結(jié)論。誤用檢測模型更加適合應(yīng)用具有較為明顯攻擊特征的DDoS攻擊的檢測當(dāng)中,例如一些針對系統(tǒng)漏洞的攻擊。但現(xiàn)階段的攻擊流量已經(jīng)逐漸向正常流量靠攏,特征不再明顯,因此使用誤用檢測無法檢測出許多類型的DDoS 檢測。
異常檢測模型作為目前應(yīng)用最為廣泛的模型,其原理在于流量模型是建立在正常情況范圍中并對網(wǎng)絡(luò)進行實時監(jiān)測,發(fā)生DDoS攻擊時網(wǎng)絡(luò)中就會出現(xiàn)偏離正常流量的現(xiàn)象,這樣就能夠判斷是否出現(xiàn)了攻擊。這樣的檢測形式更加獨立,并且不需要依賴DDoS攻擊特征,能夠更好地識別一些未知的攻擊情況。但引發(fā)網(wǎng)絡(luò)異常的影響因素較多,未必都是DDoS攻擊,也有可能是其他的情況,因此這項模型很容易出現(xiàn)誤報的情況。
這兩種檢測模型各自具有自身的優(yōu)缺點,可以說誤用檢測模型的檢測效率較高,但對未知攻擊無法進行有效識別,異常檢測模型能夠識別異常攻擊,但精準(zhǔn)度不高。有專家學(xué)者認(rèn)為可以將這兩種模型的優(yōu)點結(jié)合在一起,因此提出了綜合檢測模型的理論。檢測方法方面可以采用基于統(tǒng)計分析方法、基于深入學(xué)習(xí)、基于傳統(tǒng)機器學(xué)習(xí)算法、基于知識方法以及多種方法混合的檢測方法。
基于統(tǒng)計學(xué)的檢測方法主要通過對比正常狀態(tài)下的流量與攻擊狀態(tài)的流量來檢測DDoS攻擊。出現(xiàn)DDoS攻擊時,流量會出現(xiàn)猛增的現(xiàn)象。但網(wǎng)絡(luò)的正常狀態(tài)下無法直接獲得流量總值,所以需要通過統(tǒng)計的方法來對流量值進行比較進而判斷是否存在DDoS攻擊。通常采用的方法為:
(1)機器學(xué)習(xí)檢測法:即對某件事發(fā)生的概率進行總結(jié),進而預(yù)測這件事是否會發(fā)生。在進行DDoS攻擊檢測時,這項檢測方法將檢測問題進行多種分類,打造出可以自我學(xué)習(xí)的攻擊檢測模型,經(jīng)過不斷的學(xué)習(xí)和訓(xùn)練,進而判斷數(shù)據(jù)的正常與否。
(2)根據(jù)請求頁面大偏差值統(tǒng)計進行檢測,這種方法主要用來判斷用戶所訪問的網(wǎng)站是否為高頻網(wǎng)站,出現(xiàn)攻擊時,攻擊者通常會采用隨機任意請求網(wǎng)頁,這樣就可以采用概率分布來進行全面檢測。
綜上所述,互聯(lián)網(wǎng)技術(shù)隨著信息時代的發(fā)展,已經(jīng)潛移默化的融入各行各業(yè)當(dāng)中,網(wǎng)絡(luò)的安全技術(shù)卻始終落后于互聯(lián)網(wǎng)的發(fā)展進度,這樣就讓網(wǎng)絡(luò)安全問題成為互聯(lián)網(wǎng)技術(shù)發(fā)展的最大問題。DDoS攻擊在眾多網(wǎng)絡(luò)攻擊方式中具有最大的殺傷力,能夠直接導(dǎo)致企業(yè)或者組織的計算機出現(xiàn)大面積癱瘓的情況,服務(wù)功能在很長一段時間內(nèi)無法使用,進而造成無法挽回的損失。采用DDoS 檢測系統(tǒng)能夠有效的對正常流量中的攻擊流量進行檢測盒過濾,采用大數(shù)據(jù)技術(shù)對攻擊IP 進行追蹤分析能夠?qū)ふ业揭?guī)律,以及活動范圍進而提升對攻擊流量清洗的精準(zhǔn)度,因此研發(fā)一套可靠的DDoS攻擊檢測系統(tǒng)對我國網(wǎng)絡(luò)安全有著至關(guān)重要的意義。