在我們上網(wǎng)的過程中,用戶可以利用IE等瀏覽器進行各種各樣的WEB站點的訪問,如閱讀新聞、訂閱報紙、電子商務(wù)等。攻擊者可以將用戶想要瀏覽的網(wǎng)頁的URL改寫成指向攻擊者自己的服務(wù)器,當(dāng)用戶瀏覽目標(biāo)網(wǎng)頁的時候,實際上是向攻擊者服務(wù)器發(fā)出請求,那么攻擊者就可以達到欺騙或攻擊的目的了。例如,可以利用Webserver的網(wǎng)頁給客戶端機器傳染病毒。這種攻擊的效果是通過DNS欺騙技術(shù)得到的。DNS協(xié)議不對轉(zhuǎn)換或信息性的更新進行身份認(rèn)證,這就使得攻擊者可以將不正確的信息摻進來,并把用戶引向攻擊者自己的主機。
用一個簡單的例子說明
假如cn.wy.com向xinxin.com的子域DNS服務(wù)器120.2.2.2詢www.xinxin.com的IP地址時,用戶冒充120.2.2.2給www.xinxin.com的IP地址,這個IP地址是一個虛擬的地址,列如202.109.2.2,這cn.wy.com就會把202.109.2.2當(dāng)www.xinxin.com的地址返還給hk.wy.com了。當(dāng)hk.wy.com連www.xinxin.com時,就會轉(zhuǎn)向我們提供的那個虛假的IP地址了,這樣對www.xinxin.com來說,就算是給黑掉了。因為別人根本連接不上這個域名。 這就是DNS欺騙的基本原理,但正如同IP欺騙一樣。DNS欺騙在技術(shù)上實現(xiàn)上仍然有一些困難,為了理解這些需要看一下DNS查詢包的結(jié)構(gòu)。在DNS查詢包中有一個重要的域叫做做標(biāo)識ID。用來鑒別每個DNS數(shù)據(jù)包的印記,從客戶端設(shè)置。由服務(wù)器返回,它可以讓客戶匹配請求與響應(yīng)。
如cn.wy.com120.2.2.2 這時黑客只需要用假的120.2.2.2進行欺騙,并且在真正的120.2.2.2返回cn.wy.com信息之前,先于它給出所查詢的IP地址。cn.wy.com←120.2.2.2 ,www.xinxin.com的IP地址是1.1.1.1 。在120.2.2.2前cn.wy.com送出一個偽造的DNS信息包,如果要發(fā)送偽造的DNS信息包而不被識破,就必須偽造正確的ID,但是,如果無法判別這個標(biāo)識符的話,欺騙將無法進行。這在局域網(wǎng)上是很容易實現(xiàn)的,只要安裝一個sniffer,通過嗅探就可以知道這個ID。但如果是在Internet上實現(xiàn)欺騙,就只有發(fā)送大量的一定范圍的DNS信息包,通過碰運氣的辦法來提高給出正確標(biāo)識ID的機會。
DNS欺騙的真實過程
如果已經(jīng)成功的攻擊了120.2.2.2子網(wǎng)中任意一臺主機,并且通過安裝sniffer的方法對整個子網(wǎng)中傳輸?shù)陌M行嗅探,可以設(shè)置只對進出120.2.2.2的包進行觀察,從而獲得我們需要的標(biāo)識ID。當(dāng)DNS服務(wù)器120.2.2.2發(fā)出查詢包時,它會在包內(nèi)設(shè)置標(biāo)識ID,只有應(yīng)答包中的ID值和IP地址都正確的時候才能為服務(wù)器所接受。這個ID每次自動增加1,所以可以第一次向要欺騙的DNS服務(wù)器發(fā)一個查詢包并監(jiān)聽到該ID值,隨后再發(fā)一個查詢包,緊接著馬上發(fā)送構(gòu)造好的應(yīng)答包,包內(nèi)的標(biāo)識ID為預(yù)測的值。為了提高成功效率可以指定一個范圍,比如在前面監(jiān)聽到的哪個ID+1的范圍之間。接上列,如cn.wy.com向120.2.2.2發(fā)來了要求查www.xinxin.com的IP地址的包,此時,120.2.2.2上的黑客就要欺騙cn.wy.com。
cn.wy.com→120.2.2.2 [Query]
NQY:1 NAN:0 NNS:0 NAD:0 QID:6573
QY:www.xinxin.com A
其中NQY,NAN等是查詢包的標(biāo)志位。當(dāng)這兩個標(biāo)志位為“1”時表示是查詢包,這時我們就可以在120.2.2.2上監(jiān)聽到這個包,得到他的ID為6573.然后緊接著我們也向120.2.2.2發(fā)出一次查詢,使它忙于應(yīng)答這個包。
1.1.1.1→120.2.2.2 [Query]
NQY:1 NAN:0 NNS:0 NAD:0
QY:other.xinxin.com A
緊接著發(fā)帶預(yù)測QID的應(yīng)答包
120.2.2.2→cn.wy.com [Answer]
NQY:1 NAN:0 NNS:0 NAD:0 QID:6574
QY www.xinxin.com PTR
AN www.xinxin.com PTR 111.222.333.444
111.222.333.444就是由攻擊者來指定的IP地址。注意發(fā)這個包時標(biāo)識ID為前面監(jiān)聽到的ID值加1既6574+1=6575。這樣,DNS欺騙就完成了cn.wy.com就會把111.222.333.444當(dāng)www.xinxin.com的IP地址了。假如111.222.333.444是一臺已經(jīng)被用戶控制的計算機,可以把它的主頁改成想要的內(nèi)容,這時當(dāng)被欺騙的其他用戶連接www.xinxin.com時,他就以為這個網(wǎng)站已經(jīng)被黑掉了。
相關(guān)閱讀