徐淼
摘 要 在當(dāng)今的數(shù)字經(jīng)濟(jì)時(shí)代,網(wǎng)絡(luò)安全十分重要。本文主要論述了DNS的欺騙攻擊原理,分析了DNS欺騙攻擊的局限性,并給出了一些防范建議。
關(guān)鍵詞 DNS 欺騙攻擊 域名解析
中圖分類號(hào):TP309 文獻(xiàn)標(biāo)識(shí)碼:A
1 DNS概述
DNS的全稱是Domain Name Server即域名服務(wù)器,當(dāng)一臺(tái)主機(jī)發(fā)送一個(gè)請(qǐng)求要求解析某個(gè)域名時(shí),它會(huì)首先把解析請(qǐng)求發(fā)到自己的DNS服務(wù)器上。DNS的功能是提供主機(jī)名字和IP地址之間的轉(zhuǎn)換信息。DNS服務(wù)器里有一個(gè)“DNS緩存表”,里面存儲(chǔ)了此DNS服務(wù)器所管轄域內(nèi)主機(jī)的域名和IP地址的對(duì)應(yīng)關(guān)系。
2 DNS工作原理
例如,客戶需要訪問(wèn)www.dhs.com時(shí),首先要知道www.dhs.com的IP地址??蛻糁鳈C(jī)獲得www.dhs.com的IP地址的唯一方法就是向所在網(wǎng)絡(luò)設(shè)置的DNS服務(wù)器進(jìn)行查詢。
查詢過(guò)程分四步進(jìn)行,如圖1所示。
圖1中有三臺(tái)主機(jī):客戶主機(jī)、nipc.com域DNS服務(wù)器和dhs.com域DNS服務(wù)器。其中nipc.com域DNS服務(wù)器直接為客戶主機(jī)提供DNS服務(wù)。
3 DNS欺騙的原理
當(dāng)客戶主機(jī)向本地DNS服務(wù)器查詢域名的時(shí)候,如果服務(wù)器的緩存中已經(jīng)有相應(yīng)記錄,DNS服務(wù)器就不會(huì)再向其他服務(wù)器進(jìn)行查詢,而是直接將這條記錄返回給用戶。
而入侵者欲實(shí)現(xiàn)DNS欺騙,關(guān)鍵的一個(gè)條件就是在DNS服務(wù)器的本地Cache中緩存一條偽造的解析記錄。
在圖1中,假如dhs.com域DNS服務(wù)器返回的是經(jīng)過(guò)攻擊者篡改的信息,比如將www.dhs.com指向另一個(gè)IP地址5.6.7.8,如圖2所示。nipc.com域DNS服務(wù)器將會(huì)接受這個(gè)結(jié)果,并將錯(cuò)誤的信息存儲(chǔ)在本地Cache中。
以后在這條緩存記錄的生存期內(nèi),再向nipc.com域DNS服務(wù)器發(fā)送的對(duì)www.dhs.com的域名解析請(qǐng)求,所得到的IP地址都將是被篡改過(guò)的。有了對(duì)DNS服務(wù)器進(jìn)行欺騙的可能,攻擊者怎樣偽造DNS應(yīng)答信息就成了問(wèn)題的焦點(diǎn)。
4 DNS欺騙的局限性
DNS欺騙是一種比較古老的攻擊方法,自身不但有著比較大的局限性,而且現(xiàn)在大多數(shù)DNS服務(wù)器軟件,都有防御DNS欺騙的措施。DNS欺騙主要存在兩點(diǎn)局限性:
4.1攻擊者不能替換緩存中已經(jīng)存在的記錄
例如,如果在202.98.8.1這個(gè)DNS上已經(jīng)有了一條www.dhs.com/222.222.222.222的對(duì)應(yīng)記錄,那么入侵者試圖替換這條記錄是不可能的,也就是說(shuō),攻擊者不可能修改已經(jīng)存在的記錄。但是在DNS服務(wù)器中一些記錄可以累加。如果在DNS的緩存中已經(jīng)存在一條www.dhs.com/222.222.222.222的對(duì)應(yīng)記錄,攻擊者可以向緩存中再放入另一條偽造的記錄www.dhs.com/11.11.11.11。這樣在DNS服務(wù)器中就有兩條www.dhs.com的解析記錄,客戶主機(jī)查詢時(shí),服務(wù)器會(huì)隨機(jī)返回其中一個(gè),這樣就只有50%幾率實(shí)現(xiàn)DNS欺騙。
4.2 DNS服務(wù)器存在緩存刷新時(shí)間問(wèn)題
在DNS應(yīng)答報(bào)文里有一個(gè)字段生存時(shí)間(TTL)用來(lái)設(shè)定客戶程序保留該資源記錄的秒數(shù)。如果緩存中記錄的TTL為7200,那么DNS服務(wù)器會(huì)把www.dhs.com的域名解析信息緩存7200秒,即兩個(gè)小時(shí)。假如攻擊者放入一條TTL為259200的記錄,那么這條記錄將會(huì)在緩存中保存三天時(shí)間。也就是說(shuō),DNS欺騙的有效時(shí)間是與緩存中記錄的TTL相關(guān)的,一旦超過(guò)緩存有效時(shí)間,除非重新構(gòu)造緩存記錄,否則DNS欺騙會(huì)自動(dòng)失效。
5總結(jié)
通過(guò)分析了DNS欺騙攻擊的局限性,在配置DNS服務(wù)器的時(shí)候應(yīng)注意,使用最新版本DNS服務(wù)器軟件并及時(shí)安裝補(bǔ)??;關(guān)閉DNS服務(wù)器的遞歸功能:DNS服務(wù)器利用緩存中的記錄信息回答查詢請(qǐng)求或是DNS服務(wù)器通過(guò)查詢其它服務(wù)器獲得查詢信息并將它發(fā)送給客戶機(jī),這兩種查詢方式稱為遞歸查詢,這種查詢方式容易導(dǎo)致DNS欺騙。限制區(qū)域傳輸范圍:限制域名服務(wù)器做出響應(yīng)的地址、限制域名服務(wù)器做出響應(yīng)的遞歸請(qǐng)求地址、限制發(fā)出請(qǐng)求的地址。
參考文獻(xiàn)
[1] 孔政,姜秀柱.DNS欺騙原理及其防御方法[J].計(jì)算機(jī)工程,2010(2).
[2] 董新科,邢雨,高維銀.DNS網(wǎng)絡(luò)安全系統(tǒng)分析與設(shè)計(jì)[J].計(jì)算機(jī)安全,2010(6).
[3] 李基,楊義先.DNS安全問(wèn)題及解決方案[M].北京:北京郵電大學(xué)信息安全中心,2005.