相關(guān)鏈接: 中國安全網(wǎng) 中國質(zhì)量網(wǎng) 中國論文網(wǎng) 中國資訊網(wǎng)
羅志強(qiáng),沈 軍,金華敏
(中國電信股份有限公司廣州研究院廣州510630)
摘 要:分布式DNS反射DDoS攻擊已經(jīng)成為拒絕服務(wù)攻擊的主要形式之一,傳統(tǒng)的基于網(wǎng)絡(luò)流量統(tǒng)計分析和網(wǎng)絡(luò)流量控制技術(shù)已經(jīng)不能滿足防護(hù)需求。提出了基于生存時間值( TTL)智能研判的DNS反射攻擊檢測技術(shù),能夠準(zhǔn)確發(fā)現(xiàn)偽造源IP地址分組;基于多系統(tǒng)融合的偽造源地址溯源阻斷技術(shù),從源頭上阻斷攻擊流量流入網(wǎng)絡(luò)。
1 引言
隨著拒絕服務(wù)攻擊(DoS)的方式和手段不斷發(fā)展變化,近年來,互聯(lián)網(wǎng)面臨的分布式反射型拒絕服務(wù)攻擊日趨頻繁。據(jù)有關(guān)單位報告,2013年3月,歐洲反垃圾郵件組織Spamhaus對外宣稱遭受300 Gbit/s流量的分布式DNS(domain name system,域名系統(tǒng))反射型DDoS
(distributed denial of service,分布式拒絕服務(wù))攻擊;2014年12月中旬,阿里云在微博上發(fā)布一則聲明,稱12月20-21日,部署在阿里云上的某知名游戲公司遭遇了全球互聯(lián)網(wǎng)史上最大的一次DNS反射型DDoS攻擊,攻擊峰值流量超過450Gbit/s。眾多DDoS攻擊事件表明,分布式DNS反射DDoS攻擊已經(jīng)成為拒絕服務(wù)攻擊的主要形式之一。
2 分布式DNS反射DDoS攻擊技術(shù)原理
分布式DNS反射DDoS攻擊是一種基于帶寬耗盡型攻擊方式。根據(jù)DNS協(xié)議(RFC2617文檔)的特點,DNS應(yīng)答報文一般是查詢報文的幾倍甚至幾十倍,通過開放DNS遞歸服務(wù)器的流量反射,相當(dāng)于攻擊數(shù)據(jù)分組增加了數(shù)十倍,達(dá)到了攻擊流量放大的效果。
DNS域名服務(wù)器的開放遞歸服務(wù)和源IP地址偽造技術(shù)是成功實施分布式DNS反射DDoS攻擊的必要條件。攻擊者在進(jìn)行分布式DNS反射DDoS攻擊之前,會在被控制的某些權(quán)威域名服務(wù)器上先發(fā)布大字節(jié)的TXT資源記錄。然后,攻擊者向大量開放遞歸服務(wù)的DNS服務(wù)器發(fā)送帶有擴(kuò)展字段OPT RR(偽資源記錄)的DNS查詢請求分組,并將該DNS查詢請求分組的源IP地址偽造成攻擊目標(biāo)IP地址。由于DNS域名服務(wù)器不對查詢請求分組的源IP地址進(jìn)行真實性驗證,因此DNS服務(wù)器會對所有的查詢請求都進(jìn)行解析查詢應(yīng)答,并將大范圍域名查詢的響應(yīng)數(shù)據(jù)發(fā)送給攻擊目標(biāo)。由于請求數(shù)據(jù)比響應(yīng)數(shù)據(jù)小得多,攻擊者就可以利用該技術(shù)有效地放大其掌握的帶寬資源和攻擊流量,這樣,大量的DNS應(yīng)答分組將匯聚在受害者端,堵塞受害者的網(wǎng)絡(luò)而最終造成DDoS攻擊。
例如,在2013年Spamhaus攻擊事件中,攻擊者向30 000多個開放DNS服務(wù)器發(fā)送了對ripe.net域名的解析請求,并將源IP地址偽造成Spamhaus的IP地址。DNS請求數(shù)據(jù)的長度約為36 byte,而響應(yīng)數(shù)據(jù)的長度約為3 000 byte,這意味著利用DNS反射能夠產(chǎn)生約100倍的放大效應(yīng)。Spamhaus攻擊事件中,大量開放DNS服務(wù)器的響應(yīng)數(shù)據(jù)產(chǎn)生了大約300 Gbit/s的攻擊流量,因此,攻擊者只需要掌握和控制一個能夠產(chǎn)生3 Gbit/s流量的僵尸網(wǎng)絡(luò),就能夠進(jìn)行300 Gbit/s流量的大規(guī)模攻擊。
在分布式DNS反射DDoS攻擊過程中,開放遞歸的DNS服務(wù)器在不知情的情況下也參與了進(jìn)攻,對DNS系統(tǒng)資源也有一定的消耗,同時經(jīng)過放大后的攻擊流量也會對流經(jīng)的運營商網(wǎng)絡(luò)性能產(chǎn)生一定影響,變相造成網(wǎng)絡(luò)堵塞。
3 分布式DNS反射DDoS攻擊檢測及控制技術(shù)
目前,業(yè)界應(yīng)對分布式DNS反射DDoS攻擊主要是采用基于網(wǎng)絡(luò)流量統(tǒng)計分析和網(wǎng)絡(luò)流量控制的技術(shù)、基于機(jī)器學(xué)習(xí)和支持向量機(jī)算法的檢測技術(shù)、基于網(wǎng)絡(luò)流量行為時間序列的DDoS檢測技術(shù)。
在基于網(wǎng)絡(luò)流量統(tǒng)計分析和網(wǎng)絡(luò)流量控制的技術(shù)方法中,檢測DNS拒絕服務(wù)攻擊之前,需要能夠描述DNS服務(wù)器正常運轉(zhuǎn)情況下的網(wǎng)絡(luò)流量信息和正常行為分布規(guī)律,通過分析DNS服務(wù)器的正常流量信息特征和正常行為分布規(guī)律,建立DNS服務(wù)器所在網(wǎng)絡(luò)的正常狀態(tài)和異常狀態(tài)模型,通過設(shè)定異常狀態(tài)閾值實現(xiàn)DNS惡意流量攻擊行為的異常檢測。此類檢測技術(shù)常用的檢測特征包括了域名解析失敗率發(fā)生突然大幅增長、DNS服務(wù)器所在網(wǎng)絡(luò)流量迅速增大、隨機(jī)域名出現(xiàn)有規(guī)律的均勻分布等重要檢測特征。雖然流量統(tǒng)計分析方法具有一定的檢測能力,但是隨著攻擊流量的隱蔽性增強(qiáng)和攻擊形式的層出不窮,流量統(tǒng)計方法的誤判率大幅度上升。
基于機(jī)器學(xué)習(xí)和支持向量機(jī)算法的檢測技術(shù)是大規(guī)模、高帶寬網(wǎng)絡(luò)環(huán)境下實現(xiàn)對DNS網(wǎng)絡(luò)攻擊智能檢測的重要手段,系統(tǒng)把服務(wù)器收到的正常數(shù)據(jù)流和DDoS攻擊流當(dāng)成一個分類問題進(jìn)行運算,利用機(jī)器學(xué)習(xí)和支持向量機(jī)算法建立模型來進(jìn)行判斷,并對檢測結(jié)果進(jìn)行預(yù)警。此類技術(shù)的優(yōu)點是利用支持向量機(jī)在解決小樣本、非線性及高維問題時所具有的良好性能,實現(xiàn)對DNS攻擊行為的高速檢測。但是此類技術(shù)存在攻擊流檢測環(huán)境中多個檢測器的協(xié)作問題,需要結(jié)合集成學(xué)習(xí)、人工免疫等新興技術(shù)來提高檢測系統(tǒng)的檢測精度和頑健性。
在基于網(wǎng)絡(luò)流量行為時間序列的DDoS檢測技術(shù)中,主要是采用統(tǒng)計分析、關(guān)聯(lián)分析等多種技術(shù)手段周期性檢測域名服務(wù)器端對用戶發(fā)送和接收的流量行為中的異常模式,判斷其是否滿足TCP和UDP行為的時間同步性,識別攻擊者和正常用戶,從而發(fā)現(xiàn)異常行為。
隨著DNS攻擊流量的隱蔽性增強(qiáng)和攻擊形式的層出不窮,現(xiàn)有技術(shù)方法的誤判率大幅度上升,多個檢測器的協(xié)作問題也是安全性能提升的制約因素。為應(yīng)對日益嚴(yán)峻的分布式DNS反射DDoS攻擊安全形勢,本文提出了基于生存時間值( time-to-live,TTL)智能研判的分布式DNS反射DDoS攻擊檢測技術(shù)和基于多系統(tǒng)融合的偽造源地址溯源阻斷技術(shù),在DNS服務(wù)器端檢測到DDoS攻擊后,通過網(wǎng)絡(luò)通信的方式通知運營商邊界路由器等網(wǎng)絡(luò)邊界基礎(chǔ)設(shè)施,啟用流量清洗過濾源IP地址偽造分組,從源頭上阻斷DNS攻擊流量流入網(wǎng)絡(luò)。
4基于生存時間值智能研判的DNS攻擊檢測技術(shù)
正常來說,同一個客戶端發(fā)送的DNS查詢請求數(shù)據(jù)分組在一定時間內(nèi)經(jīng)過基本固定的路由到達(dá)DNS服務(wù)器,也就是說在一段時間內(nèi),從同一個用戶端發(fā)給DNS服務(wù)器的DNS請求數(shù)據(jù)分組的TTL值應(yīng)該是穩(wěn)定的。由于攻擊者發(fā)動DNS反射攻擊時,需要僵尸網(wǎng)絡(luò)多臺傀儡機(jī)同時發(fā)送偽造源地址的DNS請求分組,攻擊者雖然可以偽造發(fā)向DNS服務(wù)器的數(shù)據(jù)分組中的源IP地址、TTL等任何字段的信息,但是由于傀儡機(jī)通常分布在不同地區(qū),因此,攻擊者很難正確偽造真實IP地址對應(yīng)的主機(jī)發(fā)送的數(shù)據(jù)分組到達(dá)DNS服務(wù)器的跳數(shù),因此,基于TTL值智能研判的DNS攻擊檢測技術(shù)主要是對來自同一個源IP地址的DNS請求數(shù)據(jù)分組TTL值進(jìn)行實時比對,對同一源IP地址TTL值頻繁變動的DNS請求分組實施無遞歸的本地解析或直接丟棄的抑制方法。由于IP地址偽造技術(shù)是成功實施分布式DNS反射DDoS攻擊的必要條件,利用本方法能夠準(zhǔn)確發(fā)現(xiàn)偽造源IP地址分組并抑制域名反射放大攻擊,有效解決了原有技術(shù)中漏判率和誤判率嚴(yán)重的問題。
如圖1所示,基于TTL值智能研判的DNS攻擊檢測技術(shù)主要包括了DNS攻擊行為檢測和偽造源地址域名查詢智能抑制兩部分。
在DNS攻擊行為檢測中.DNS系統(tǒng)的檢測研判模塊分光DNS查詢流量,實時分析進(jìn)入DNS節(jié)點的查詢數(shù)據(jù)分組,將每個查詢數(shù)據(jù)分組的源IP地址和TTL值進(jìn)行實時比對,當(dāng)單位時間(5 s~l min可調(diào))內(nèi)同一個源IP地址的TTL值比對不相同,用新檢測的TTL值替代原有的TTL值,同時針對該記錄的計數(shù)器加1,頻繁變動的TTL值將導(dǎo)致計數(shù)器計數(shù)超過安全門限,從而發(fā)出抑制指令。
在偽造源地址域名查詢智能抑制中,域名服務(wù)器根據(jù)抑制指令,對該域內(nèi)的所有來自該偽造源IP地址的DNS請求分組實施無遞歸的本地解析或直接丟棄。
5基于多系統(tǒng)融合的偽造源地址溯源阻斷技術(shù)
基于多系統(tǒng)融合的偽造源地址溯源阻斷技術(shù)主要是通過運營商現(xiàn)有的域名安全分析系統(tǒng)、攻擊溯源系統(tǒng)和流量清洗設(shè)備之間的融合聯(lián)動,在DNS服務(wù)器端檢測到DDoS攻擊后,通過網(wǎng)絡(luò)通信的方式通知運營商邊界路由器等網(wǎng)絡(luò)邊界基礎(chǔ)設(shè)施啟用流量清洗過濾源IP地址偽造分組,從源頭上阻斷攻擊流量流入網(wǎng)絡(luò),這種在邊界上過濾的方式比在DNS服務(wù)器端過濾更有效。
如圖2所示,多系統(tǒng)融合的虛假源地址溯源阻斷過程包括自動化的攻擊行為檢測、偽造源地址攻擊分組溯源和偽造源地址攻擊分組清洗3部分。
·自動化的攻擊行為檢測:域名安全分析系統(tǒng)分光DNS查詢流量,實時分析進(jìn)入DNS節(jié)點的查詢數(shù)據(jù)分組.基于上文介紹的基于TTL值智能研判的DNS攻擊檢測技術(shù),發(fā)現(xiàn)偽造源地址的DNS攻擊分組,域名安全分析系統(tǒng)將攻擊分組源地址參數(shù)發(fā)送給攻擊溯源系統(tǒng)。
·偽造源地址攻擊分組溯源:攻擊溯源系統(tǒng)根據(jù)源地址參數(shù)溯源攻擊路徑,結(jié)合采集存儲原始NetFlow流量信息、路由器端口信息、路由拓?fù)湫畔ⅰ⒊怯蚓W(wǎng)IP地址等多維參數(shù)進(jìn)行關(guān)聯(lián)分析,通過多元廣度遍歷算法,快速回溯攻擊流量穿越路徑及流量分布特征,可對偽造源地址發(fā)起的DNS攻擊進(jìn)行實時監(jiān)測,并通知流量清洗設(shè)備在相關(guān)網(wǎng)段阻斷偽地址攻擊流量。
·偽造源地址攻擊分組清洗:流量清洗設(shè)備在偽造源地址的城域網(wǎng)發(fā)布BGP細(xì)路由,將包括偽造源地址的DNS查詢流量牽引到流量清洗設(shè)備,當(dāng)連續(xù)一段時間內(nèi)DNS查詢流量的速率超過閾值時,流量清洗設(shè)備啟動源認(rèn)證防御,在源認(rèn)證過程中清洗設(shè)備會觸發(fā)客戶端以TCP報文發(fā)送DNS請求,能夠發(fā)送TCP DNS請求的客戶端被認(rèn)證為合法源。流量清洗設(shè)備只把來自合法源的DNS請求分組返回給DNS服務(wù)器,有效阻斷偽造源地址的DNS查詢請求。
6檢測技術(shù)可行性驗證
為了驗證本文提出的基于TTL值智能研判的DNS攻擊檢測技術(shù)的可行性,在中國電信網(wǎng)絡(luò)安全實驗室搭建了一個偽造源IP地址攻擊網(wǎng)絡(luò)環(huán)境,如圖3所示。被攻擊目標(biāo)采用了一臺Windows7 64位服務(wù)器,IP地址為192.168.0.4,在被攻擊目標(biāo)同一網(wǎng)段部署了一臺協(xié)議分析儀(Sniffer設(shè)備),連接到被攻擊目標(biāo)的鏡像端口實時采集網(wǎng)絡(luò)流量;DNS服務(wù)器采用了一臺Windows2008 R2版64位服務(wù)器,IP地址為172.18.16.11,在該服務(wù)器C:\Windows\SysWOW64\dns目錄下安裝了BIND9.9.3開源軟件,實現(xiàn)DNS功能,在DNS服務(wù)器的鏡像端口上部署了計數(shù)器模塊,實時分析DNS服務(wù)器的DNS查詢流量:攻擊者則由SmartBits 6000C測試儀表擔(dān)任,測試儀表將模擬1~10個攻擊客戶端發(fā)送針對多個不同域名的正常DNS查詢分組,其中所有攻擊客戶端發(fā)出的DNS查詢分組的源IP地址均偽造為192.168.0.4,每個攻擊客戶端的TTL初始值設(shè)置互不相同,啟動所有10臺攻擊客戶端時共有10個不同的TTL初始值。測試過程中,每臺攻擊客戶端固定以1 000 Hz的速率發(fā)送DNS查詢數(shù)據(jù)分組。
表1展示了在以上試驗環(huán)境中,不同數(shù)量的攻擊客戶端向IP地址為172.18.16.11的DNS服務(wù)器發(fā)送源IP地址被偽造為192.168.0.4的DNS查詢分組流量,進(jìn)行多個不同域名的正常查詢,記錄了攻擊峰值總流量、接收峰值總流量,檢測率的統(tǒng)計結(jié)果。
驗證過程中,當(dāng)未啟用本檢測技術(shù)(不設(shè)置計數(shù)器最大門限值)時,由于每臺攻擊客戶端所發(fā)送的DNS查詢攻擊數(shù)據(jù)分組為正常查詢多個不同域名的DNS查詢分組,這些源IP地址被偽造為192.168.0.4的查詢分組流量符合DNS服務(wù)器的正常流量信息特征和正常行為分布規(guī)律,因此原有基于流量的統(tǒng)計分析無法根據(jù)DNS服務(wù)器所在網(wǎng)絡(luò)流量迅速增大、隨機(jī)域名出現(xiàn)有規(guī)律的均勻分布等重要檢測特征檢測出DNS查詢攻擊流.IP地址為192.168.0.4的目標(biāo)主機(jī)收到了大量的DNS回應(yīng)分組流量,從而導(dǎo)致對目標(biāo)主機(jī)的反射流量攻擊。啟用本檢測技術(shù)后,首先在計數(shù)器最大門限值設(shè)置為1 000次/s的條件下展開測試,測試數(shù)據(jù)顯示,當(dāng)只啟動一臺攻擊機(jī)發(fā)送偽造源IP地址的DNS查詢數(shù)據(jù)分組時,由于計數(shù)器檢測到的TTL值一直保持不變,因此IP地址為192.168.0.4的目標(biāo)主機(jī)仍然會收到大量的DNS回應(yīng)分組流量;當(dāng)分別啟動2臺、5臺和10臺攻擊機(jī)發(fā)送偽造源lP地址的DNS查詢數(shù)據(jù)分組時,由于不同攻擊機(jī)發(fā)出的DNS查詢分組TTL值均互不相同,計數(shù)器檢測到源IP地址為192.168.0.4的TTL值頻繁變動,導(dǎo)致計數(shù)器門限值計數(shù)會迅速累加,當(dāng)門限值累計到1 000時,計數(shù)器將發(fā)送抑制指令,IP地址為172.18.16.11的DNS服務(wù)器根據(jù)抑制指令,對所有源lP地址為192.168.0.4的DNS查詢數(shù)據(jù)分組直接丟棄,測試數(shù)據(jù)可以看出,隨著攻擊機(jī)數(shù)目的增加,目標(biāo)主機(jī)接收到的峰值流量占比迅速下降,檢測率從18.25%提升到了89.18%。又在計數(shù)器最大門限值設(shè)置為200次/s的條件下展開測試,測試數(shù)據(jù)顯示,由于最大門限值的降低,計數(shù)器能夠更快發(fā)送抑制指令,隨著攻擊機(jī)數(shù)目的增多,檢測率從76.30%提升到了97.72%。
從可行性測試結(jié)果可看出,相對于傳統(tǒng)的基于網(wǎng)絡(luò)流量統(tǒng)計分析的檢測方法,本文提出的基于TTL值智能研判的檢測方法對檢測僵尸網(wǎng)絡(luò)產(chǎn)生的偽造源IP地址DNS反射攻擊流量有明顯效果,僵尸網(wǎng)絡(luò)規(guī)模越大,偽造源IP地址的DNS查詢分組越容易被本方法有效識別并過濾,從而避免了攻擊目標(biāo)遭受來自DNS服務(wù)器的反射流量攻擊。器所經(jīng)過的路由跳數(shù)很難偽造的原理,本文提出了基于TTL值智能研判的分布式DNS反射DDoS攻擊檢測技術(shù),能夠有效識別近90010的源IP地址偽造分組,較好地解決了現(xiàn)有基于流量統(tǒng)計分析以及機(jī)器學(xué)習(xí)等技術(shù)方法存在誤判率高、性能不足的問題;本文還提出了基于多系統(tǒng)融合的偽造源地址溯源阻斷技術(shù),極大地釋放了此類攻擊對運營商基礎(chǔ)IP網(wǎng)絡(luò)的帶寬資源、DNS系統(tǒng)計算資源及運維壓力。