摘要:DNS作為Internet的重要組成組分,其安全性日益受到人們的關(guān)注。本文在闡述DNS所面臨的安全威脅基礎(chǔ)上,以我校的域名服務(wù)系統(tǒng)為例,提出了一種外部安全防護(hù)體系和內(nèi)部安全防護(hù)策略相結(jié)合的DNS安全防范方法 。
關(guān)鍵詞:DNS 安全 防護(hù)體系
中圖分類(lèi)號(hào):TN16 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1674-098X(2011)12(c)-0000-00
1 引言
域名系統(tǒng)(Domain Name System,簡(jiǎn)稱(chēng)DNS)是Internet重要的組成部分之一,它主要負(fù)責(zé)將域名與IP地址進(jìn)行相互轉(zhuǎn)換。DNS采用多層次的分布式數(shù)據(jù)庫(kù)結(jié)構(gòu)及客戶(hù)端/服務(wù)器工作模式,即在服務(wù)器端存放域名信息,允許客戶(hù)端請(qǐng)求訪問(wèn)所需的數(shù)據(jù)。近年來(lái),隨著Internet網(wǎng)絡(luò)應(yīng)用和業(yè)務(wù)的不斷發(fā)展,互聯(lián)網(wǎng)上發(fā)生的網(wǎng)絡(luò)攻擊事件日益頻繁,DNS系統(tǒng)也遭受到了一系列的攻擊,導(dǎo)致了Internet通信受到嚴(yán)重的影響。因此,業(yè)內(nèi)越來(lái)越關(guān)注DNS的安全問(wèn)題。
2 DNS層次結(jié)構(gòu)與工作原理
2.1 DNS層次結(jié)構(gòu)
DNS是一個(gè)分布式數(shù)據(jù)庫(kù),它利用樹(shù)形目錄結(jié)構(gòu)將主機(jī)名稱(chēng)的管理權(quán)分配給各級(jí)DNS服務(wù)器,這使得管理和修改工作可以在各層本地完成,減少每一臺(tái)服務(wù)器的數(shù)據(jù)量,使得管理數(shù)據(jù)更加容易,它類(lèi)似文件系統(tǒng)的目錄樹(shù)結(jié)構(gòu):在最頂端的是一個(gè)“ROOT”,其下分為好幾個(gè)基本類(lèi)別名稱(chēng),如:com、org、edu等; 再下面是組織名稱(chēng),如:sohu、baidu、intel 等;繼而是主機(jī)名稱(chēng),如:www、mail、ftp等。完整的域名是一個(gè)由“.”分隔的字符串,其中每個(gè)部分都代表一個(gè)域或主機(jī)名。例如 www.baidu.com和www.lhmc.edu.cn這些都是完整的域名,其中baidu、com、lhmc、edu、cn都是不同域的名稱(chēng),而www則是主機(jī)名。
2.2 DNS工作原理
當(dāng)被詢(xún)問(wèn)到有關(guān)本域名之內(nèi)的主機(jī)名稱(chēng)的時(shí)候,DNS服務(wù)器會(huì)直接做出回答,此答案稱(chēng)為權(quán)威回答(Authoritative Answer),此主機(jī)稱(chēng)為權(quán)威主機(jī);如果所查詢(xún)的主機(jī)名稱(chēng)不在此DNS服務(wù)器的解析范圍內(nèi),該服務(wù)器就檢查緩存(Cache),如果在緩存中找不到要解析的地址,則該服務(wù)器將會(huì)轉(zhuǎn)向root服務(wù)器進(jìn)行查詢(xún),然后root服務(wù)器會(huì)將該域名的授權(quán)服務(wù)器(可能會(huì)超過(guò)一臺(tái))的地址告知權(quán)威主機(jī)。圖1描述了DNS工作原理及www.lhmc.edu.cn的解析過(guò)程。
以查詢(xún)我校域名www.lhmc.edu.cn為例,來(lái)具體描述地址解析的過(guò)程:
(1)客戶(hù)端向首選DNS服務(wù)器遞歸查詢(xún)www.lhmc.edu.cn。
(2)首選DNS服務(wù)器收到后檢查本地資源記錄,發(fā)現(xiàn)沒(méi)有該域名記錄,然后檢查本地緩存,結(jié)果也沒(méi)有,最后向根服務(wù)器迭代查詢(xún)www.lhmc.edu.cn。
(3)根服務(wù)器返回cn域的授權(quán)服務(wù)器的地址,首選DNS服務(wù)器繼續(xù)向cn域授權(quán)服務(wù)器迭代查詢(xún)。
(4)cn域權(quán)威服務(wù)器返回edu.cn域的授權(quán)服務(wù)器域名服務(wù)器地址,首選DNS服
務(wù)器依次迭代查詢(xún),直到得到域名www.lhmc.edu.cn的授權(quán)回答,保存到本地的
存中,并返回給客戶(hù)端,完成本次查詢(xún)。
圖1. dns工作原理
3 DNS的安全威脅
3.1 DdoS(分布式拒絕服務(wù))攻擊
針對(duì)DNS服務(wù)器的拒絕服務(wù)攻擊有兩種:(1)為針對(duì)DNS服務(wù)器軟件本身的攻擊。DNS服務(wù)器的解析過(guò)程就是DNS在其數(shù)據(jù)庫(kù)里進(jìn)行查找匹配記錄的過(guò)程。由于字符串匹配和數(shù)據(jù)庫(kù)查找是一個(gè)開(kāi)銷(xiāo)巨大的操作,這就決定了DNS服務(wù)器在域名查詢(xún)請(qǐng)求方面存在處理能力有限的問(wèn)題,最終導(dǎo)致DNS服務(wù)器崩潰或拒絕服務(wù);(2)為把 DNS服務(wù)器作為“中間人”去攻擊網(wǎng)絡(luò)中的其他主機(jī)。這種攻擊的原理為:黑客向多個(gè)DNS服務(wù)器發(fā)送大量的查詢(xún)請(qǐng)求,這些查詢(xún)請(qǐng)求數(shù)據(jù)包中的源IP地址為被攻擊主機(jī)的IP地址,DNS服務(wù)器將大量的查詢(xún)結(jié)果發(fā)送給被攻擊主機(jī),使被攻擊主機(jī)無(wú)法提供正常的服務(wù)。
3.2 DNS欺騙
DNS欺騙是未授權(quán)主機(jī)向域名解析系統(tǒng)成功注入虛假錯(cuò)誤的資源記錄。在此類(lèi)威脅中,攻擊者通常偽裝成客戶(hù)可信的DNS服務(wù)器,然后將偽造的惡意信息反饋給客戶(hù)。攻擊者通常通過(guò)三種方法進(jìn)行DNS欺騙 :
(1)緩存污染:攻擊者采用特殊的DNS請(qǐng)求將虛假信息放入DNS的緩存中。
(2)DNS信息劫持:攻擊者監(jiān)聽(tīng)DNS會(huì)話(huà),猜測(cè)DNS服務(wù)器響應(yīng)ID,搶先將假的響應(yīng)提交給客戶(hù)端。
(3)DNS重定向:將DNS名稱(chēng)查詢(xún)重定向到惡意DNS服務(wù)器。
3.3系統(tǒng)漏洞
BIND(Berkeley Internet Name Domain)是最常用的DNS服務(wù)軟件, Internet上的絕大多數(shù)DNS服務(wù)器都是基于這個(gè)軟件的。BIND提供高效服務(wù)的同時(shí)也存在著眾多的安全性漏洞。
除此之外,DNS服務(wù)器的自身安全性也是非常重要。目前主流的操作系統(tǒng)如 Windows、UNIX、Linux均存在不同程度的系統(tǒng)漏洞和安全風(fēng)險(xiǎn),而補(bǔ)丁的管理也是安全管理工作中非常重要和困難的一個(gè)組成部分,因此針對(duì)操作系統(tǒng)的漏洞防護(hù)也是DNS安全防護(hù)工作中的重點(diǎn)。
4 DNS防護(hù)體系與防護(hù)策略
DNS域名系統(tǒng)面臨著來(lái)自?xún)?nèi)部和外部的兩類(lèi)風(fēng)險(xiǎn),要進(jìn)一步提高DNS的安全性,就需要構(gòu)建DNS外部安全防護(hù)體系和DNS內(nèi)部安全防護(hù)策略。
4.1 DNS外部安全防護(hù)體系
本文將以我校的域名服務(wù)器為例,構(gòu)建我校 DNS安全防護(hù)體系。圖2描述了我校的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)簡(jiǎn)圖和DNS外部安全防護(hù)體系,它將邊界路由器、防火墻的策略路由和端口管理、F5鏈路負(fù)載均衡器的鏈路控制和負(fù)載均衡策略、IPS入侵防御系統(tǒng)的攻擊防護(hù)和漏洞修復(fù)策略結(jié)合在一起,構(gòu)成三位一體的校園 DNS安全防護(hù)體系。其中 :
圖2 我校網(wǎng)絡(luò)拓?fù)浜?jiǎn)圖
(1)邊界路由器與專(zhuān)用防火墻一起提供了對(duì)校園網(wǎng)的安全保護(hù)。它們的主要功能就是對(duì)IP地址和數(shù)據(jù)包按照特定的準(zhǔn)則進(jìn)行過(guò)濾,同時(shí)也提供Internet與校園網(wǎng)之間的路由策略。
(2)F5鏈路負(fù)載均衡器具有智能DNS功能,它將內(nèi)部服務(wù)器集群化或虛擬化成針對(duì)不同ISP 的虛擬服務(wù)器 (Virtual Server),當(dāng)外網(wǎng)用戶(hù)訪問(wèn)內(nèi)部服務(wù)器時(shí),它提供鏈路控制和負(fù)載均衡策略。F5配置與防火墻配置類(lèi)似,因此防火墻同時(shí)可以做為F5鏈路的備份鏈路。
(3)IPS入侵防御系統(tǒng)被配置在校園網(wǎng)的入口處、服務(wù)器與辦公區(qū)網(wǎng)絡(luò)之間。它一方面通過(guò)流量異常檢測(cè)和連接限制等技術(shù)實(shí)現(xiàn)了DDOS攻擊防御。另一方面利用智能的DNS DDoS攻擊識(shí)別技術(shù),通過(guò)實(shí)時(shí)分析DNS解析失敗率、DNS響應(yīng)報(bào)文與請(qǐng)求報(bào)文的比例關(guān)系等方法,準(zhǔn)確識(shí)別各種針對(duì)DNS的DDOS攻擊,避免產(chǎn)生漏報(bào)和誤報(bào),并且通過(guò)專(zhuān)業(yè)的線(xiàn)性DNS攻擊防御技術(shù)和離散DNS攻擊防御技術(shù)有效的防御了DNS DDoS攻擊。
4.2 DNS內(nèi)部安全防護(hù)策略
DNS協(xié)議或者軟件設(shè)計(jì)與配置上的漏洞常常被非法用戶(hù)或者黑客利用,他們通過(guò)網(wǎng)絡(luò)向DNS發(fā)起攻擊或欺騙以達(dá)到非法目的。加強(qiáng)DNS內(nèi)部的安全防護(hù)策略可以最大程度地降低DNS安全風(fēng)險(xiǎn)。使用 BIND的最新版本可以大大提高 DNS的安全性。但是隨著新漏洞的發(fā)現(xiàn),最新版本也將成為不安全的舊版本。本文將以 BIND為例,提出一些重要的DNS內(nèi)部安全防護(hù)策略。
(1)限制DNS服務(wù)器遞歸查詢(xún)功能。這樣只會(huì)回答自己授權(quán)域的查詢(xún)請(qǐng)求,而不會(huì)緩存任何外部的數(shù)據(jù)。具體配置為:在option(或特定的zone區(qū)域)節(jié)中添加allow-recursion{
(2)限制區(qū)傳送。在BIND配置文件中通過(guò)設(shè)置來(lái)限制允許區(qū)傳送的主機(jī) ,從一定程度上能減輕信息泄漏限制。限制對(duì)DNS服務(wù)器進(jìn)行區(qū)域記錄傳輸, 配置為:在option(或特定的zone區(qū)域)節(jié)中添加allow-transfer{
(3)分離DNS。BIND可以通過(guò)視圖(view)技術(shù)把DNS系統(tǒng)劃分為內(nèi)部和外部?jī)刹糠郑獠恳晥D起著負(fù)責(zé)對(duì)外解析工作,內(nèi)部視圖則負(fù)責(zé)對(duì)內(nèi)解析。
(4)隱藏 DNS的版本信息。因?yàn)橥ǔ\浖穆┒春惋L(fēng)險(xiǎn)信息是和特定版本相關(guān)的。在options屬性中添加自定義的BIND版本信息,可隱藏BIND服務(wù)器的真正版本號(hào)。
(5)刪除DNS服務(wù)器上不必要的服務(wù),避免非法用戶(hù)通過(guò)其他服務(wù)的漏洞侵入DNS系統(tǒng)。
(6)指定允許哪些主機(jī)向本DNS服務(wù)器提交動(dòng)態(tài)DNS更新, 避免非法用戶(hù)通過(guò)系統(tǒng)漏洞侵入DNS系統(tǒng),配置為:在options(或特定的zone區(qū)域)節(jié)中添加allow_update{
(6)合理配置 DNS的查詢(xún)方式,流量很大的DNS服務(wù)器可以禁止客戶(hù)機(jī)使用遞歸查詢(xún)以減輕流量 。
(7)應(yīng)用 DNSSec技術(shù)。DNSSec主要依靠公鑰技術(shù)對(duì)于包含在 DNS中的信息創(chuàng)建密碼簽名,從而為DNS數(shù)據(jù)提供來(lái)源驗(yàn)證。
5 結(jié)語(yǔ)
DNS的安全至關(guān)重要。本文在闡述DNS所面臨的安全威脅基礎(chǔ)上,以我校的域名服務(wù)系統(tǒng)為例,提出了一種外部安全防護(hù)體系和內(nèi)部安全防護(hù)策略相結(jié)合的DNS安全防范方法 。隨著DNSSec技術(shù)的不斷完善,以及 DNSSec技術(shù)與其他網(wǎng)絡(luò)防護(hù)技術(shù)的融合,更安全可靠、更加廣泛的DNS服務(wù)將被應(yīng)用到 Internet中去。