漫談域名系統(tǒng)安全
眾所周知,域名系統(tǒng)(DNS,Domain Name System)作為互聯(lián)網(wǎng)的重要基礎(chǔ)設(shè)施,其主要功能是提供域名解析服務(wù)。隨著互聯(lián)網(wǎng)的發(fā)展,DNS系統(tǒng)也被賦予了其他的應(yīng)用功能,如 DKMI(即Domain Keys Identified Mail,縮寫為DKIM)、負載均衡、域名封鎖等方面。絕大多數(shù)的互聯(lián)網(wǎng)應(yīng)用都需要依賴 DNS 才能正常工作,一旦 DNS 系統(tǒng)受到攻擊,整個互聯(lián)網(wǎng)將會受到嚴重影響。
●現(xiàn)狀●隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,攻擊 DNS 的技術(shù)也變得更加豐富,手段更加復(fù)雜。
美國 Coleman Parkes 公司調(diào)查了來自北美、亞太、歐洲共 1000個組織的 DNS 系統(tǒng)安全狀況發(fā)現(xiàn) ,在 2017 年有 76%的組織受到了 DNS攻擊。在這些攻擊中,惡意軟件攻擊占 35%、DDoS 攻擊占 32%、緩存投毒占 23%、DNS 隧道占 22%、零日漏洞攻擊占19%。超過 90%的惡意軟件使用DNS協(xié)議與惡意軟件的命令和控制(Command and Control,C&C)中心保持聯(lián)系,以此獲取攻擊命令、下載軟件更新、獲取隱私信息。DDoS 攻擊也變得越來越復(fù)雜,攻擊者使用廣泛的技術(shù)手段,從基本的方法(如:放大/轉(zhuǎn)發(fā)、泛洪),到涉及僵尸網(wǎng)絡(luò)、連鎖反應(yīng)等高度復(fù)雜的攻擊,這些攻擊可能來內(nèi)部或外部DNS服務(wù)器。
根據(jù) Arbor Network 發(fā)布的調(diào)查報告顯示,有84%的反射和放大攻擊采用DNS協(xié)議,是所有調(diào)查協(xié)議中占比最高的。此外,報告中還顯示 DNS 的服務(wù)器是 DDoS 攻擊的首要目標,有78%的DDoS 攻擊對 DNS的應(yīng)用層服務(wù)進行攻擊。
攻擊DNS 有利可圖,商業(yè)利益驅(qū)動促使攻擊行為加劇。有攻擊者通過攻擊DNS服務(wù)器,造成企業(yè)服務(wù)中斷,損壞企業(yè)信譽,造成用戶流失。如 2016 年 10 月在 Dyn域名服務(wù)供應(yīng)商受到大規(guī)模DDoS攻擊之后,Dyn公司失去了8%的域名客戶。
DNS 攻擊還會造成關(guān)鍵數(shù)據(jù)泄露和經(jīng)濟損失。根據(jù) EfficientIP 的調(diào)查報告,在調(diào)查的1000個公司和組織中,有三分之一的公司因 DNS 攻擊數(shù)據(jù)被盜,這些數(shù)據(jù)中16%是用戶敏感信息15%是知識產(chǎn)權(quán)信息。此外,DNS 攻擊每年會給受害公司造成 200 萬美元的經(jīng)濟損失。
●威脅分析●域名服務(wù)主要由3部分組成,分別是:
1、域名空間(domain name space)和資源記錄(resource record),包括樹形結(jié)構(gòu)的命名空間和與名稱相關(guān)聯(lián)的數(shù)據(jù);
2、名字服務(wù)器(name server),包含域樹結(jié)構(gòu)信息和設(shè)置信息的服務(wù)器程序;
3、解析器(resolver),響應(yīng)請求并從名稱服務(wù)器獲取查詢結(jié)果。DNS 通常提供兩種域名解析方式,分別是:遞歸式查詢和迭代式查詢。在通常情況下,應(yīng)用系統(tǒng)主機向本地域名服務(wù)器請求域名解析時,采用遞歸查詢。
在遞歸查詢模式下,本地域名服務(wù)器直接向應(yīng)用系統(tǒng)主機返回域名解析結(jié)果,當?shù)赜蛎?wù)器需要向根域名進行請求。
以下是對CVE 漏洞信息庫若干條DNS相關(guān)漏洞進行對比分類,針對不同類型的DNS系統(tǒng)漏洞對攻擊目標及攻擊后果進行總結(jié)歸納,統(tǒng)計結(jié)果如下表所示:
●安全強化●1協(xié)議強化
為了解決DNS系統(tǒng)在數(shù)據(jù)傳輸過程真實性和完整性保護,IETF(The Internet Engineering Task Force)提出了DNS安全增強方案 DNSSEC。DNSSEC 通過對資源記錄進行簽名,用戶在收到相關(guān)請求域名信息時也會收到該記錄的簽名,用戶可以根據(jù)簽名檢測數(shù)據(jù)的真實性和完整性。DNSSEC 在DNS的基礎(chǔ)上,增加了四種安全記錄:
1. DNSKEY記錄,存儲驗證DNS數(shù)據(jù)的公鑰;
2. RRSIG 記錄,存儲DNS資源記錄的數(shù)字簽名;
3. DS記錄,用于DNSKEY驗證,存儲密鑰標簽,加密算法和對應(yīng) DNSKEY 的摘要信息;
4. NSEC 記錄,存儲和對應(yīng)所有者相鄰的下一記錄,用于否定存在驗證。
2實現(xiàn)強化當前DNS協(xié)議使用UDP協(xié)議傳輸數(shù)據(jù),信息沒有進行真實性和完整性驗證,因此對 DNS 傳輸協(xié)議進行增強是增強 DNS 安全性的一種手段。T-DNS使用TCP和TLS協(xié)議替代 UDP傳輸DNS消息,解析器與服務(wù)器首先需要建立TCP連接,然后使用TLS協(xié)議對DNS消息的內(nèi)容進行加密保護,防止內(nèi)容泄露和惡意篡改。
T-DNS利用TCP連接的數(shù)量限制機制,能夠防止惡意服務(wù)器主動推送虛假應(yīng)答信息,同時使用TLS協(xié)議保護數(shù)據(jù)傳輸安全,解決了數(shù)據(jù)泄露和惡意篡改問題。這種方式的局限性是建立TCP連接的時間開銷會影響解析效率,T-DNS 采用TCP和TLS協(xié)議,與傳統(tǒng)的 DNS不兼容,很難大范圍部署。
3檢測監(jiān)控隨著互聯(lián)網(wǎng)的發(fā)展,技術(shù)在不斷進步,攻擊手段也在不斷變化,僅僅依靠協(xié)議的增強和系統(tǒng)的改變不一定能夠抵御所有的攻擊。因此,在現(xiàn)有系統(tǒng)的基礎(chǔ)上,進行有效監(jiān)控診斷,保護DNS系統(tǒng)的正常運行,也是一個重要的安全增強保障。對DNS系統(tǒng)進行診斷監(jiān)控不需要改變現(xiàn)有DNS實現(xiàn)方式,具有良好的漸進部署能力,同時能夠有效監(jiān)測各種攻擊。檢測監(jiān)控的核心思想是對 DNS 的查詢流量進行分析和檢測,構(gòu)造檢測系統(tǒng)并運用如機器學(xué)習、信息熵等技術(shù)對檢測結(jié)果進行學(xué)習和分類,提高檢測精度。本節(jié)根據(jù)檢測流量的層級不同分為監(jiān)測DNS用戶端與遞歸服務(wù)器間流量和檢測DNS服務(wù)器間流量。
4體系結(jié)構(gòu)強化DNS根服務(wù)器作為DNS 系統(tǒng)的核心,負責DNS主目錄的維護和管理,這種方式存在單點故障、易受攻擊等缺陷。為了解決 DNS中心化問題,有學(xué)者提出設(shè)計去中心化的 DNS 系統(tǒng)。DNS系統(tǒng)去中心后,每個服務(wù)器節(jié)點都是平等的,單點故障和 DoS攻擊造成的影響將會降低。DNS的解析過程不再受限于根服務(wù)器,不會因為管理等因素對域名進行封鎖,也能解決根服務(wù)器部署數(shù)量有限的弊端。
●總結(jié)●針對 DNS 的各種安全問題,雖然涌現(xiàn)了大量的解決辦法,但是近年來的各種攻擊事件表明,DNS 安全問題仍然十分嚴峻。通過分析發(fā)現(xiàn),現(xiàn)有的研究成果仍存在不足,未來的工作可以更多地關(guān)注以下方面:
DNS去中心化DNS 系統(tǒng)之所以受到各種攻擊,與 DNS 樹形結(jié)構(gòu)、根服務(wù)器管理整個系統(tǒng)有重要關(guān)系。這種體系架構(gòu)存在單點失效問題,而歷史上有多次攻擊根服務(wù)器的案例,致使整個DNS服務(wù)癱瘓。因此,設(shè)計一種去中心化的DNS系統(tǒng)是一項具有重要意義的方向。
開放式DNS安全檢查雖然開放式服務(wù)器提供了各種便利,如可以應(yīng)答外部資源的 DNS 請求,但是這些開放系統(tǒng)給網(wǎng)絡(luò)的安全性和穩(wěn)定性帶來了極大的隱患。一些開放的服務(wù)器容易被攻擊者控制,進行放大攻擊、投毒攻擊等惡意行為。據(jù)調(diào)查發(fā)現(xiàn),在3200萬個開放式解析器,其中有2800 萬存在嚴重的安全隱患。開放式會給攻擊者進行 DoS/DDoS、緩沖投毒、DNS ID劫持等攻擊帶來便利?,F(xiàn)有的實踐中很少有對這些開放式系統(tǒng)進行行規(guī)范和約束,如何識別和監(jiān)控這些惡意的開放式服務(wù)器,也是一個重要的內(nèi)容。
防護方案增量部署由于 DNS 系統(tǒng)廣泛應(yīng)用,有研究者雖然提出改進方案,與現(xiàn)有的 DNS 系統(tǒng)不兼容,也很難被大范圍部署。DNSSEC雖然在1997年就已經(jīng)被提出,但是目前仍未廣泛部署,目前DNSSEC 在頂級域的部署率達到了89%,但是在二級域的部署率僅為3%。有很多新型的名字服務(wù)系統(tǒng)和架構(gòu)都已提出來,但是與當前 DNS 系統(tǒng)不兼容,因此這些研究成果很難被網(wǎng)絡(luò)運營商和大型公司采用。因此在設(shè)計防護方案的部署方式時應(yīng)考慮防護方案要避免修改現(xiàn)有 DNS協(xié)議。