論DNS協(xié)議安全漏洞及防范
論DNS 協(xié)議安全漏洞及防范姓名:苑中梁 學(xué)號(hào):2010063030029摘要本文分為3部分,首先對(duì)DNS 的協(xié)議特點(diǎn)進(jìn)行了分析,了解了DNS 協(xié)議的工作原理,之后對(duì)DNS 的漏洞進(jìn)行了簡要的分析,
論DNS 協(xié)議安全漏洞及防范
姓名:苑中梁 學(xué)號(hào):2010063030029
摘要
本文分為3部分,首先對(duì)DNS 的協(xié)議特點(diǎn)進(jìn)行了分析,了解了DNS 協(xié)議的工作原理,之后對(duì)DNS 的漏洞進(jìn)行了簡要的分析,最后對(duì)這一漏洞的防范給出了建議。
Abstract
The passage is divided into 3 parts ,first of all we analysis the characters of DNS and get a formal understanding about it then we will find the weak point of DNS ,and get knowledge about attacking DNS ,in the end , we give some suggestions which is to protect DNS form attacking.
前言
21世紀(jì)以來,計(jì)算機(jī)網(wǎng)絡(luò)滲透到了人類生活得方方面面,然而網(wǎng)絡(luò)攻擊等安全問題也開始逐漸進(jìn)入人們視野,網(wǎng)絡(luò)協(xié)議當(dāng)初在編寫時(shí)由于并未考慮身份認(rèn)證等機(jī)制,使得其很容易被進(jìn)行漏洞攻擊,域名系統(tǒng)是一種分布在網(wǎng)絡(luò)協(xié)議TCP/IP協(xié)議的分布式數(shù)據(jù)庫,主要提供主機(jī)和IP 地址的域名對(duì)應(yīng),從而方便用戶更加方便的訪問Internet 。DNS 是多種Internet 應(yīng)用的基礎(chǔ), 如E-mail 、www 、Telnet 等。一旦DNS 被入侵者控制, 主機(jī)名及其IP 地址之間的對(duì)應(yīng)關(guān)系有可能被更改, 從而造成主機(jī)遭受拒絕服務(wù), 或者網(wǎng)站被篡改等嚴(yán)重后果。因而如何保證DNS 服務(wù)的可用,防范DDOS 攻擊成為了每一個(gè)網(wǎng)站搭建者要考慮的問題,本文就將從DNS 的工作原理談起,了解DNS 的漏洞并且給出相關(guān)的防范措施。
DNS( Domain Name System)是“域名系統(tǒng)”的英文縮寫,是一種組織成域?qū)哟谓Y(jié)構(gòu)的計(jì)算機(jī)和網(wǎng)絡(luò)服務(wù)命名系統(tǒng),它用于TCP/IP網(wǎng)絡(luò),它所提供的服務(wù)是用來將主機(jī)名和域名轉(zhuǎn)換為IP 地址的工作。在DNS 進(jìn)行解析前,其工作模式主要有2種,一種為ITERATIVE 迭代。如果服務(wù)器查找不到對(duì)應(yīng)的記錄,會(huì)返回另一個(gè)可能知道結(jié)果的服務(wù)器的地址給查詢的發(fā)起者,以便它向新的,服務(wù)器發(fā)送查詢請(qǐng)求遞歸,另一種模式為recursive 遞歸,當(dāng)客戶向服務(wù)器提出請(qǐng)求之后,此服務(wù)器就負(fù)責(zé)查詢出相應(yīng)記錄 如果不能從該服務(wù)器本地得到解析 由該服務(wù)器向其他服務(wù)器發(fā)出請(qǐng)求直到得到查詢結(jié)果或出現(xiàn)超時(shí)錯(cuò)誤為止,相當(dāng)于由
,收到遞歸請(qǐng)求的服務(wù)器來完成迭代查詢中用戶的工作。
為了更加明顯的理解DNS 工作原理
(1) 首先主機(jī)會(huì)向本地域名服務(wù)器發(fā)出請(qǐng)求,本地主機(jī)DNS 服務(wù)器若存儲(chǔ)有對(duì)應(yīng)
IP 地址則直接返回主機(jī),進(jìn)行訪問。
(2) 加入本地DNS 服務(wù)器沒有相關(guān)的記錄,則向自己的根服務(wù)器發(fā)出迭代查詢請(qǐng)
求。
(3) 若根域名服務(wù)器無法解析則換回管理域cn 的DNS 服務(wù)器的IP 地址。
(4) 本地服務(wù)器向管理域cn 的DNS 服務(wù)器發(fā)出迭代查詢請(qǐng)求。 (5) 若授權(quán)管理cn 域的DNS 服務(wù)器無法在本地?cái)?shù)據(jù)庫中找到對(duì)應(yīng)記錄,則返回
授權(quán)管理.uestc.edu.cn 域的DNS 服務(wù)器的IP 地址。
(6) 本地服務(wù)器向管理.uestc.edu.cn 域的DNS 服務(wù)器發(fā)出迭代查詢請(qǐng)求
(7)
若授權(quán)管理.uestc.edu.cn 域的DNS 服務(wù)器在本地?cái)?shù)據(jù)庫中找到的
(8) 本地DNS 域名服務(wù)器返回此網(wǎng)站超時(shí)的記錄。
那么這種迭代進(jìn)行查詢的方式在安全性上是否足夠有保障呢,實(shí)則不然,DNS 服務(wù)在很多層面上并無身份認(rèn)證設(shè)置,這使得DNS 很容易就會(huì)被攻破 實(shí)際生活中,DNS 服務(wù)存在如下的漏洞:
(1) NS 沒有提供認(rèn)證機(jī)制:DNS 服務(wù)本質(zhì)上是通過客戶/服務(wù)器方式提供域名
解析服務(wù),但它自己沒有提供認(rèn)證機(jī)制,查詢者在收到應(yīng)答時(shí)無法確認(rèn)應(yīng)答信息的真假,這樣極易導(dǎo)致欺騙。同樣地每一臺(tái)DNS 服務(wù)器也無法知道請(qǐng)求域名服務(wù)的主機(jī)或其他的DNS 服務(wù)器是否合法,是否盜用了地址。 (2) 超高速緩存:由于DNS 服務(wù)器實(shí)際上是在存儲(chǔ)主機(jī)域名和IP 地址的映射,
這些是通過超高速緩存進(jìn)行存儲(chǔ)的,當(dāng)一個(gè)服務(wù)器收到有關(guān)的映射信息,ip 和對(duì)應(yīng)主機(jī),就會(huì)把他們存入到高速緩存中,下一次若再遇到相同的請(qǐng)求時(shí),則直接調(diào)用高速緩存中存儲(chǔ)的數(shù)據(jù)而不用訪問根DNS 服務(wù)器,這種映射基于高速緩存,以時(shí)間單位進(jìn)行更新,這一方面成為它的特色,另一方面也成為弱點(diǎn),由于正常映射的刷新時(shí)間都是有限的,因此一旦敵手在下次更新之前通過修改高速緩存的方式更改了映射,那么就可以方便的進(jìn)行拒絕攻擊了。
(3) DNS 服務(wù)器管理軟件的漏洞:Berkeley Internet Name Daemon(BIND )是人們熟知的一款廣泛用于DNS 服務(wù)器上的系統(tǒng)軟件,具有廣泛的使用基礎(chǔ),然而,來自DIMAP/UFRN即北格蘭德聯(lián)邦大學(xué)等諸多機(jī)構(gòu)對(duì)BIND 的幾個(gè)版本進(jìn)行了詳細(xì)的測(cè)試,證明了在BIND4以及BIND8上存在著嚴(yán)重的
,軟件BUG ,攻擊者可以利用此漏洞進(jìn)行攻擊。
(4) 有的時(shí)候在配置上存在失誤:這也是很嚴(yán)重的一點(diǎn),有的時(shí)候程序員防范意
識(shí)不強(qiáng),相關(guān)配置不注意,這很有可能將主機(jī)的IP 地址等重要信息直接泄
露給攻擊者。
那么DNS 面臨著什么樣的攻擊呢:
(1) DDOS 攻擊:一個(gè)正常的DNS 查詢過程可能直接被敵手控制而成為一個(gè)
DDOS 攻擊。假設(shè)攻擊者已知被攻擊機(jī)器的IP 地址,然后攻擊者使用該地
址作為發(fā)送解析命令的源地址。這樣當(dāng)使用DNS 服務(wù)器遞歸查詢后,DNS
服務(wù)器響應(yīng)給最初用戶,而這個(gè)用戶正是被攻擊者。那么如果攻擊者控制了
足夠多的肉雞,反復(fù)的進(jìn)行如上操作,那么被攻擊者就會(huì)受到來自于DNS 服務(wù)器的響應(yīng)信息DDOS 攻擊。
(2) DNS 緩存感染:攻擊者通過一定的DNS 請(qǐng)求將數(shù)據(jù)放入一個(gè)具有漏洞的的
DNS 服務(wù)器的緩存當(dāng)中。這些緩存信息,在用戶訪問此DNS 服務(wù)器尋求IP
的時(shí)候?qū)?huì)直接返回,從而使得用戶不能到達(dá)正確的網(wǎng)頁,極易被引導(dǎo)進(jìn)入
敵手事先設(shè)計(jì)好的網(wǎng)站,或者通過偽造的郵件和其他的server 服務(wù)獲取用
戶口令信息,導(dǎo)致客戶遭遇進(jìn)一步的侵害。
(3) DNS 信息劫持:原則上來講,TCP/IP協(xié)議嚴(yán)禁向內(nèi)部添加仿冒數(shù)據(jù),但是
入侵者一旦監(jiān)聽到了用戶和DNS 服務(wù)器之間的通訊,了解了用戶和DNS 服
務(wù)器的ID ,敵手就可以在用戶和真實(shí)的DNS 服務(wù)器進(jìn)行交互之前,冒充
DNS 服務(wù)器向用戶發(fā)送虛假消息,將用戶誘騙到之前設(shè)計(jì)的網(wǎng)站上。
(4) DNS 重定向:這種攻擊危害極大,將用戶直接惡意定向到敵手自己的DNS
服務(wù)器上,從而直接把用戶的域名接續(xù)服務(wù)完全控制。
(5) 本機(jī)劫持:通過木馬等方式劫持計(jì)算機(jī),干擾用戶進(jìn)行DNS 解析,將用戶
引導(dǎo)至錯(cuò)誤的IP 。
那么DNS 攻擊要怎么防范呢,其實(shí)根據(jù)DNS 攻擊的特點(diǎn),我們可以總結(jié)出防范
DNS 攻擊的方式:
(1) 嚴(yán)格的系統(tǒng)配置:例如,隱藏BIND 的版本號(hào),讓敵手不能輕易查找到系
統(tǒng)的漏洞,同時(shí)配置區(qū)域傳送,防止相關(guān)信息外泄
(2) 使用雙DNS 服務(wù)器,在內(nèi)部用一個(gè)DNS 服務(wù)器,這個(gè)服務(wù)器不在上級(jí)進(jìn)
行登記,也就是說在Internet 上不可見,當(dāng)遇到IP 查詢請(qǐng)求時(shí)直接查詢返
,回,如果查詢不到則傳遞給外部DNS 服務(wù)器,外部服務(wù)器詢問后再傳回來,之間架設(shè)防火墻。
(3) 使用雙交叉檢驗(yàn):即當(dāng)通過DNS 服務(wù)器使用IP 地址查詢到了目的主機(jī)時(shí),
目的主機(jī)再次回查查詢?cè)碔P 地址,若兩次查詢均成功則進(jìn)行通訊,若兩次查詢結(jié)果不一致,則很有可能遭受DNS 攻擊。
著名的DNS 攻擊事件:
(1) 事件1:百度遇DDOS 攻擊事件
2006年09月12日17點(diǎn)30分,有北京、重慶等地的網(wǎng)友反映百度無法正常使用,出現(xiàn)Request timed out)的信息。這次攻擊使得百度搜索服務(wù)在全國各地出現(xiàn)了近30分鐘的故障。近乎使得整個(gè)百度網(wǎng)站在一段時(shí)間內(nèi)完全癱瘓。隨后,百度技術(shù)部門及時(shí)反應(yīng),將問題解決并恢復(fù)百度服務(wù)。9月12日晚上11時(shí)37分,百度空間發(fā)表了針對(duì)不明攻擊事件的聲明。“今天下午,百度遭受有史以來最大規(guī)模的不明身份黑客攻擊,導(dǎo)致百度搜索服務(wù)在全國各地出現(xiàn)了近30分鐘的故障?!?/p>
(2) 事件2:新網(wǎng)DNS 服務(wù)器遭到攻擊
2006年09月22日,新網(wǎng)對(duì)外做出證實(shí)DNS 服務(wù)器遭到大規(guī)模黑客攻擊,從21日下午4點(diǎn)多開始持續(xù)到凌晨12點(diǎn)。盡管目前服務(wù)已經(jīng)恢復(fù)正常,但是技術(shù)人員正在追蹤攻擊來源,并分析攻擊技術(shù)手段。新網(wǎng)是國內(nèi)最大域名服務(wù)商之一,黑客持續(xù)8小時(shí)的攻擊,導(dǎo)致在新網(wǎng)注冊(cè)30的網(wǎng)站無法正常訪問。其中包括天空軟件、艾瑞視點(diǎn)、中國網(wǎng)庫等知名網(wǎng)站。
(3) 事件3:暴風(fēng)影音事件
2009年5月18日晚上22點(diǎn)左右,DNSPod 主站及多個(gè)DNS 服務(wù)器受超過10G 流量的惡意攻擊。耗盡了整個(gè)機(jī)房約三分之一的帶寬資源,為了不影響機(jī)房其他用戶,最終導(dǎo)致DNS 服務(wù)器被迫離線。該事件關(guān)聯(lián)導(dǎo)致了使用DNSPod 進(jìn)行解析的暴風(fēng)影音程序頻繁的發(fā)生域名重新申請(qǐng),產(chǎn)生請(qǐng)求風(fēng)暴,大量積累的不斷訪問申請(qǐng)導(dǎo)致各地電信網(wǎng)絡(luò)負(fù)擔(dān)成倍增加,網(wǎng)絡(luò)出現(xiàn)堵塞。于2009年5月19日晚21時(shí)左右開始,江蘇、安徽、廣西、海南、甘肅、浙江六省陸續(xù)出現(xiàn)大規(guī)模網(wǎng)絡(luò)故障,很多互聯(lián)網(wǎng)用戶出現(xiàn)訪問互聯(lián)網(wǎng)速度變慢或者無法訪問網(wǎng)站等情況。在零點(diǎn)以前,部
,分地區(qū)運(yùn)營商將暴風(fēng)影音服務(wù)器IP 加入DNS 緩存或者禁止其域名解析,網(wǎng)絡(luò)情況陸續(xù)開始恢復(fù)。
參考文獻(xiàn):
《電信科學(xué)》2005年02期-DNS 安全問題及解決方案
《協(xié)議的安全漏洞及其防范淺析》 羅杰云 五邑大學(xué)信息學(xué)院 《科技廣場(chǎng)》2011年09期-DNSSEC 與DNS 安全防范研究- 《淺談近年來最著名的DNS 攻擊》 王璞
《北京理工大學(xué)2011年碩士論文》DNS 安全檢測(cè)技術(shù)研究-張東良 《基于DNS 服務(wù)器漏洞攻擊的防范》 厲陽春
人人公共主頁----網(wǎng)絡(luò)程序員
維基百科---DNS