[劉志軍 汲傳鑫 彭巍 肖慧]
?
基于多層級(jí)限速的DNS安全防護(hù)技術(shù)應(yīng)用
[劉志軍汲傳鑫彭巍肖慧]
摘要針對(duì)DNS系統(tǒng)常見的攻擊類型進(jìn)行了分析,結(jié)合各類攻擊手段對(duì)DNS系統(tǒng)安全防護(hù)幾種典型技術(shù)進(jìn)行了總結(jié),同時(shí)結(jié)合運(yùn)營商網(wǎng)絡(luò)的情況,提出了一種基于多層級(jí)限速的DNS系統(tǒng)安全防護(hù)技術(shù)和解決方案,能有效解決傳統(tǒng)DNS系統(tǒng)存在的安全防護(hù)能力不足的問題,有效地抵御現(xiàn)網(wǎng)針對(duì)DNS系統(tǒng)的DDoS流量攻擊,對(duì)于今后DNS系統(tǒng)的安全防護(hù)功能的提升以及DNS系統(tǒng)的建設(shè)具有較好的指導(dǎo)和參考意義。
關(guān)鍵詞:DNS系統(tǒng) DDoS攻擊 多層級(jí)限速
劉志軍
中國電信股份有限公司廣東分公司,碩士,研究方向?yàn)镮P網(wǎng)絡(luò)。
汲傳鑫
上海牙木通訊技術(shù)有限公司,學(xué)士,研究方向?yàn)镈NS設(shè)備與系統(tǒng)研發(fā)。
彭巍
中國電信股份有限公司廣東研究院,碩士,研究方向?yàn)镮P網(wǎng)絡(luò)。
肖慧
中國電信股份有限公司廣東分公司,碩士,研究方向?yàn)镮P網(wǎng)絡(luò)。
DNS(Domain Name System)域名系統(tǒng),作為互聯(lián)網(wǎng)的基礎(chǔ)服務(wù)設(shè)施,為域名和精確IP地址建立映射關(guān)系,實(shí)現(xiàn)用戶訪問互聯(lián)網(wǎng)上的網(wǎng)站、應(yīng)用與業(yè)務(wù)。近年來,隨著網(wǎng)絡(luò)應(yīng)用和業(yè)務(wù)的不斷發(fā)展,網(wǎng)絡(luò)攻擊事件日益頻繁,DNS系統(tǒng)也遭到一系列的攻擊,造成了嚴(yán)重的經(jīng)濟(jì)、社會(huì)效益損失。
從2009年至今,國內(nèi)外也已發(fā)生多起針對(duì)DNS系統(tǒng)的較大安全事件,例如:
(1)2009年5月19日,域名免費(fèi)托管組織DNSPod遭受DDoS攻擊,加上暴風(fēng)影音軟件自身的問題,導(dǎo)致了國內(nèi)六省長時(shí)間斷網(wǎng)事件。
(2)2010年1月12日,百度DNS被劫持,造成其網(wǎng)站數(shù)小時(shí)內(nèi)無法被訪問,造成較大經(jīng)濟(jì)損失。
(3)2010年8月7日,國際知名DNS服務(wù)提供者DNS Made Easy遭受DDoS攻擊,造成1.5小時(shí)的服務(wù)宕機(jī),經(jīng)觀測(cè)發(fā)現(xiàn)DDoS的攻擊流量高達(dá)50Gbit/s。
(4)2012年2月7日下午3點(diǎn)多到晚上7點(diǎn)多,多個(gè)省份遭受到大流量的DDOS攻擊,攻擊流量最高達(dá)60萬QPS。
(5)2014年12月全國多省運(yùn)營商DNS系統(tǒng)受到散列域名攻擊,攻擊流量峰值達(dá)到70G,請(qǐng)求次數(shù)峰值超過1億次Qps。
以上事件反映出目前國內(nèi)外DNS系統(tǒng)在自身處理能力、安全防護(hù)、管理監(jiān)控方面存在不足,表明DNS系統(tǒng)服務(wù)將面臨著愈來愈嚴(yán)峻的安全形式。迫切需要提高DNS系統(tǒng)的安全防護(hù)能力,抵抗各種流量攻擊進(jìn)而保證正常用戶的域名查詢服務(wù)。
DNS系統(tǒng)面臨的安全方面的攻擊主要包括DNS服務(wù)內(nèi)容被篡改和DNS服務(wù)器受到流量攻擊兩種類型。
對(duì)于DNS內(nèi)容被篡改方面,一種叫做DNS緩存窺探,它通過正常的DNS解析過程,來探測(cè)某一個(gè)資源記錄是否存在于所查詢的DNS緩存中;還有域名劫持,它是攻擊者通過相關(guān)黑客手段控制了域名權(quán)威服務(wù)器,或者控制了域名管理郵箱和密碼,通過在DNS權(quán)威服務(wù)器上進(jìn)行添加、修改相應(yīng)的域名記錄,使得用戶在訪問該域名的時(shí)候,卻訪問了黑客修改后所指向的內(nèi)容;還有一種稱為DNS緩存投毒,它是利用DNS服務(wù)的分層結(jié)構(gòu),將訪問某域名的用戶在無感知的情況下,訪問了攻擊者所指定的某個(gè)服務(wù)器;此外還有DNS中間人攻擊,它是基于ARP解析的攻擊手段,攻擊者和被攻擊者在同一局域網(wǎng)內(nèi),通過ARP攻擊攔截被攻擊者的DNS查詢請(qǐng)求,發(fā)送偽造的DNS應(yīng)答,使得被攻擊者訪問惡意的網(wǎng)站,其在局域網(wǎng)及WLAN中存在較大的風(fēng)險(xiǎn)。
而對(duì)于DNS服務(wù)器的流量攻擊方面包括以下類型:
(1)針對(duì)DNS的DDoS攻擊
分布式拒絕攻擊是最常見的網(wǎng)絡(luò)攻擊方式,攻擊方式有多種,針對(duì)DNS的DDoS攻擊最基本的方法就是利用大量正常的DNS查詢請(qǐng)求來占用DNS服務(wù)器的網(wǎng)絡(luò)帶寬、CPU、內(nèi)存等資源,使得其它合法的用戶的DNS查詢得不到響應(yīng)。DDoS攻擊利用大量的傀儡機(jī)來發(fā)起攻擊,互聯(lián)網(wǎng)的高速發(fā)展給DDoS攻擊創(chuàng)造了有利的條件,用戶的家用電腦、家庭路由器、各類型網(wǎng)絡(luò)終端、各類服務(wù)器等設(shè)備都可能被攻擊者控制成為傀儡機(jī)。DDoS攻擊通過僵尸網(wǎng)絡(luò)發(fā)起大量的正確域名查詢、前綴變化的錯(cuò)誤域名查詢,或者發(fā)起全散列的錯(cuò)誤域名查詢,可以大量擁擠并造成DNS節(jié)點(diǎn)的網(wǎng)絡(luò)帶寬癱瘓,同時(shí)造成DNS緩存服務(wù)器、DNS遞歸服務(wù)器資源消耗而宕機(jī),導(dǎo)致整個(gè)DNS節(jié)點(diǎn)無法為用戶提供服務(wù),這是目前網(wǎng)絡(luò)中最常見的DNS攻擊類型,危害極大。
(2)DNS放大攻擊
DNS放大攻擊利用自身DNS協(xié)議的特性,即通常DNS查詢報(bào)文可能只有幾十個(gè)字節(jié),但所查詢特定域名的DNS應(yīng)答報(bào)文卻很長,例如支持ANY類型、TXT類型或者EDNS0的DNS應(yīng)答報(bào)文可以上千甚至幾千個(gè)個(gè)字節(jié),即應(yīng)答報(bào)文的長度是通常查詢報(bào)文的幾十倍。攻擊者利用這一點(diǎn),向DNS服務(wù)器發(fā)送大量的長度很小的DNS查詢包,但DNS服務(wù)器將回復(fù)幾十倍的應(yīng)答流量,可能導(dǎo)致被攻擊者的資源耗盡。
(3)DNS反射攻擊
DNS反射攻擊利用DNS服務(wù)器作為反射體進(jìn)行,攻擊者利用僵尸網(wǎng)絡(luò),偽造第三方服務(wù)器,向多個(gè)DNS服務(wù)器發(fā)起大量的DNS查詢請(qǐng)求,利用DNS放大攻擊使得第三方服務(wù)器的網(wǎng)絡(luò)帶寬阻塞及服務(wù)器資源消耗殆盡。DNS反射攻擊通常是結(jié)合DNS放大攻擊一起使用,發(fā)起大量偽造的會(huì)放大應(yīng)答報(bào)文類型的DNS查詢請(qǐng)求,DNS服務(wù)器就會(huì)向第三方服務(wù)器回復(fù)經(jīng)放大流量的應(yīng)答數(shù)據(jù),從而導(dǎo)致第三方服務(wù)器輕易崩潰。
因此當(dāng)前針對(duì)DNS的流量攻擊手段經(jīng)常被攻擊者組合使用,網(wǎng)絡(luò)上的DNS DDoS攻擊常常體現(xiàn)為混合類型,對(duì)于DNS服務(wù)器的危害極大,常常使得服務(wù)器資源耗盡,網(wǎng)絡(luò)鏈路出現(xiàn)擁塞,無法為廣大用戶提供正常服務(wù)。綜上目前針對(duì)DNS DDoS流量攻擊是DNS服務(wù)提供者所面臨的重要安全問題。?
(1)加強(qiáng)DNS的安全管理
主要是加強(qiáng)對(duì)域名服務(wù)器的安全管理,將對(duì)外提供服務(wù)的DNS解析服務(wù)器和管理服務(wù)器分離,利用自身服務(wù)器的安全加固技術(shù),結(jié)合定期更改密碼、加強(qiáng)漏洞修復(fù)等手段,從而可以防范攻擊者通過黑客手段獲取管理權(quán)限,能有效防范諸如域名劫持之類的常見攻擊,但無法應(yīng)用流量攻擊。
(2)應(yīng)用HTTP DNS技術(shù)
DNS協(xié)議默認(rèn)均采用UDP協(xié)議傳輸,UDP協(xié)議本身的無連接特性,使得DNS服務(wù)器無法確定其查詢用戶的真實(shí)性,間接上為DDoS攻擊、放大攻擊、反射攻擊提供了相當(dāng)程度的便利。HTTP DNS技術(shù)通過HTTP協(xié)議承載DNS協(xié)議,除了能有效解決流量調(diào)度的問題之外,它還可以利用TCP協(xié)議的特性,有效地確認(rèn)查詢用戶的真實(shí)性,通過該方法可以有效防范類似緩存投毒、DDoS攻擊、放大攻擊、反射攻擊等攻擊手段。但是HTTP DNS技術(shù)在應(yīng)用方面具有很大的局限性,只能應(yīng)用于類似移動(dòng)APP之類的特殊客戶端,對(duì)于網(wǎng)絡(luò)運(yùn)營商而言無法為海量的普通用戶提供大規(guī)模的查詢服務(wù)。
(3)TC標(biāo)志位重傳技術(shù)
DNS標(biāo)準(zhǔn)協(xié)議中,有一個(gè)TC標(biāo)志位字段,當(dāng)DNS應(yīng)答結(jié)果超過512字節(jié)UDP協(xié)議無法承載時(shí),會(huì)在應(yīng)答報(bào)文中將該標(biāo)志字段置1,DNS查詢客戶端收到該DNS應(yīng)答后,會(huì)重新發(fā)起基于TCP協(xié)議的DNS查詢,DNS服務(wù)器將所有應(yīng)答結(jié)果基于TCP協(xié)議回復(fù)給客戶端。
TC標(biāo)志位重傳技術(shù)就是利用DNS協(xié)議的這一特性,確認(rèn)DNS查詢客戶端的真實(shí)性,有效防護(hù)DDoS攻擊。該技術(shù)是一種針對(duì)客戶響應(yīng)的方法,但是TCP協(xié)議的自身特性會(huì)對(duì)系統(tǒng)資源消耗巨大,同時(shí)在DNS查詢流量比較大的情況下該技術(shù)會(huì)產(chǎn)生較大誤差,實(shí)際上在網(wǎng)絡(luò)運(yùn)營商的大容量DNS緩存服務(wù)器中難以使用。
(4)CNAME類型重傳技術(shù)
類似TC標(biāo)志位重傳技術(shù)類型,它利用DNS協(xié)議的特性,DNS遞歸服務(wù)器收到DNS權(quán)威服務(wù)器的CNAME應(yīng)答結(jié)果后,會(huì)重新發(fā)起對(duì)這個(gè)CNAME結(jié)果的DNS查詢請(qǐng)求,以此來確認(rèn)DNS查詢客戶端的真實(shí)性。這種技術(shù)同樣有很大的局限性,只能應(yīng)用于DNS權(quán)威服務(wù)器,以此來確認(rèn)DNS遞歸服務(wù)器的真實(shí)性。其無法應(yīng)用于普通的DNS緩存服務(wù)器和遞歸服務(wù)器,實(shí)際上無法為包括網(wǎng)絡(luò)運(yùn)營商在內(nèi)的DNS服務(wù)提供者實(shí)現(xiàn)防流量攻擊保護(hù)。
(5)DNS限速技術(shù)
DNS限速技術(shù)有分為IP限速和域名限速。
IP限速是指限定每個(gè)IP用戶的每秒鐘DNS查詢次數(shù)。IP限速可以有效的抑制DNS放大攻擊和DNS反射攻擊,對(duì)DDoS攻擊有一定的緩解作用,但對(duì)于有大量僵尸網(wǎng)絡(luò)的DDoS攻擊并不能起到很好的防護(hù)作用。域名限速是指限定某個(gè)特定域名或泛域名的每秒鐘DNS查詢次數(shù)。域名限速主要是為了防護(hù)前綴變化的DNS遞歸攻擊,有效的保護(hù)DNS遞歸服務(wù)器,但是針對(duì)全散列的錯(cuò)誤域名攻擊無法防護(hù)。
綜前所述,各種防護(hù)技術(shù)都具有其自身的局限性,從而形成在當(dāng)前網(wǎng)絡(luò)環(huán)境中針對(duì)大量僵尸網(wǎng)絡(luò)的不同類別DDoS攻擊難以實(shí)現(xiàn)有效防護(hù)的局面。同時(shí)在復(fù)雜的現(xiàn)網(wǎng)環(huán)境下也可能難以精確溯源攻擊者,因此如何有效應(yīng)對(duì)大量的運(yùn)行在UDP協(xié)議上全散列域名的DDoS攻擊是網(wǎng)絡(luò)運(yùn)營商所面臨的重大難題。
本文針對(duì)目前常見的大規(guī)模DDoS域名流量攻擊,結(jié)合當(dāng)前網(wǎng)絡(luò)運(yùn)營商采用的專業(yè)化DNS緩存設(shè)備,提出了一種基于多層級(jí)限速的流量控制安全防護(hù)技術(shù),該技術(shù)方案能有效過濾不同類型DDoS攻擊流量,最大限度保證正常用戶的DNS訪問。多層級(jí)限速可防止某一地址段或者對(duì)某些域名的查詢流量占用太多資源,從而影響整體系統(tǒng)性能。當(dāng)出現(xiàn)局部IP段或域名段查詢流量異常變大,則可能是DDoS攻擊所造成,則可通過多層級(jí)限速實(shí)現(xiàn)防御功能。
在多層級(jí)限速過濾技術(shù)實(shí)現(xiàn)中,在每一層級(jí)別都有不同的過濾策略,不同的過濾策略針對(duì)不同的DDoS攻擊流量,每一層級(jí)別的過濾策略都是一個(gè)限速過濾矩陣,DNS請(qǐng)求包依次通過這些限速過濾矩陣做判斷,通過的為正常請(qǐng)求包,過濾的為異常的DDoS攻擊包。
圖1 DNS緩存設(shè)備的多層級(jí)限速示意圖
目前的限速過濾矩陣主要有如下幾種:
(1)源IP限速過濾矩陣
判斷識(shí)別每個(gè)源IP的請(qǐng)求是否超過限速閾值,超過的丟棄。具體是將源IP范圍劃分成各種網(wǎng)段,通過IP網(wǎng)段或單個(gè)IP來控制DNS查詢。在系統(tǒng)遭受單個(gè)IP或IP段發(fā)起大量DNS請(qǐng)求的攻擊下,有較好的防護(hù)作用。
(2)域名限速矩陣
判斷識(shí)別每個(gè)域名的請(qǐng)求是否超過限速閾值,超過的丟棄。不同的域名有不同的限速閾值,可進(jìn)行配置,防止系統(tǒng)遭受單個(gè)域名大量DNS請(qǐng)求的流量攻擊。
(3)授信域名過濾矩陣
通過分析一定時(shí)間內(nèi)現(xiàn)網(wǎng)所有的DNS請(qǐng)求應(yīng)答數(shù)據(jù),得到所有應(yīng)答結(jié)果為NoError的域名清單,將這份清單作為可信的域名列表,DNS請(qǐng)求域名在這份可信的列表中的,不做過濾并正常通過;域名不在這份列表中的DNS查詢請(qǐng)求,授信域名過濾矩陣通過聚合分析域名的三級(jí)后綴、二級(jí)后綴,再做限速過濾。
處理流程如圖2所示。
圖2 多層級(jí)限速流程圖
(4)泛域限速過濾矩陣
如果授信域名列表不全或者不存在,為了應(yīng)對(duì)前綴變化的泛域遞歸攻擊,例如:xxx.abc.com,xxx.abc.com. cn攻擊,將通過泛域限速功能進(jìn)行防護(hù)。泛域限速是為了控制遞歸流量,從域名三級(jí)后綴、二級(jí)后綴的角度進(jìn)行聚合統(tǒng)計(jì)分析,丟棄遞歸流量較大的域。在遞歸性能有限的情況下,保證正常域名的遞歸。
上述多層級(jí)限速的系統(tǒng)內(nèi)處理流程如圖3所示。
圖3 泛域限速過濾矩陣處理流程
目前在廣東電信的DNS網(wǎng)絡(luò)環(huán)境中已經(jīng)在DNS緩存設(shè)備上現(xiàn)網(wǎng)部署了多層級(jí)限速技術(shù)方案。經(jīng)現(xiàn)網(wǎng)運(yùn)行檢驗(yàn),應(yīng)用多層級(jí)限速技術(shù)后,多次針對(duì)DNS的DDoS攻擊流量被大大限制,充分反映該技術(shù)是應(yīng)對(duì)全散列域名DDoS攻擊最有效的方法。
本文對(duì)現(xiàn)網(wǎng)DNS系統(tǒng)存在的安全方面的問題進(jìn)行了分析,對(duì)現(xiàn)有的一些安全防護(hù)手段進(jìn)行了概括并分析了它們存在的問題,針對(duì)網(wǎng)絡(luò)運(yùn)營商為用戶提供大規(guī)模DNS查詢的特性,提出了在現(xiàn)有DNS緩存設(shè)備上應(yīng)用基于多層級(jí)限速的安全防護(hù)技術(shù),可以有效實(shí)現(xiàn)對(duì)域名服務(wù)的安全防護(hù),大大降低了針對(duì)DNS的DDoS攻擊流量所造成的影響,有力地保證了廣東電信海量互聯(lián)網(wǎng)用戶正常的域名查詢,保證了各類互聯(lián)網(wǎng)業(yè)務(wù)能安全可靠為用戶提供服務(wù)。同時(shí)也為今后運(yùn)營商DNS網(wǎng)絡(luò)的安全能力提升和系統(tǒng)建設(shè)提供了指導(dǎo)和參考,具有重要的推廣應(yīng)用價(jià)值。
參考文獻(xiàn)
1DNS and Bind ,the 9th edition
2基于全局anycast的智能域名系統(tǒng)架構(gòu)演進(jìn)研究 彭巍、曹維華、李文云、華山 廣東通信技術(shù)
3基于轉(zhuǎn)發(fā)和控制分離的DNS新型架構(gòu)研究 曹維華 賀曉東彭巍 朱華虹
DOI:10.3969/j.issn.1006-6403.2016.04.004
收稿日期:(2016-03-10)