域名劫持,又稱DNS劫持,是網(wǎng)絡(luò)攻擊的一種方式,通過攻擊域名解析服務(wù)器(DNS),或偽造域名解析服務(wù)器(DNS)的方法,把目標(biāo)網(wǎng)站域名,解析到錯誤的地址,從而達(dá)到用戶無法訪問目標(biāo)網(wǎng)站的目的。
域名劫持,一方面影響用戶的訪問體驗(yàn),用戶被鏈接到假冒的網(wǎng)站上,進(jìn)而無法正常瀏覽網(wǎng)頁;另一方面,用戶可能被誘導(dǎo)至冒牌網(wǎng)站進(jìn)行登錄等操作,導(dǎo)致泄露隱私信息。

一、域名劫持的原理:
域名解析的作用是,把網(wǎng)絡(luò)地址(域名,以一個字符串的形式),對應(yīng)到真實(shí)的計(jì)算機(jī)能夠識別的網(wǎng)絡(luò)地址(即IP地址,比如216.239.53.99這樣的形式),以便于計(jì)算機(jī)能夠進(jìn)一步通信,傳遞網(wǎng)址和內(nèi)容等。
由于域名劫持往往只能在“特定的、被劫持的網(wǎng)絡(luò)范圍內(nèi)”進(jìn)行,所以在此范圍外的域名服務(wù)器(DNS)則能夠返回正常的IP地址,而高級用戶可以在網(wǎng)絡(luò)設(shè)置,把DNS指向這些正常的域名服務(wù)器,以實(shí)現(xiàn)對網(wǎng)址的正常訪問。所以域名劫持通常相伴的措施是,封鎖正常DNS的IP。
如果知道該域名的真實(shí)IP地址,則可以直接用此IP代替域名,進(jìn)行訪問,從而繞開域名劫持。
二、域名劫持的過程:
由于域名劫持只能在特定的網(wǎng)絡(luò)范圍內(nèi)進(jìn)行,所以范圍外的域名服務(wù)器(DNS)能返回正常IP地址。攻擊者正是利用這一點(diǎn)在范圍內(nèi)封鎖正常DNS(域名系統(tǒng))的IP地址,使用域名劫持技術(shù),通過冒充原域名以e-mail(電子郵件)的方式修改公司的注冊域名記錄,或?qū)⒂蛎D(zhuǎn)讓到其他組織,通過修改注冊信息后,在所指定的DNS服務(wù)器加進(jìn)該域名記錄,讓原域名指向另一個IP的服務(wù)器,這樣就能讓多數(shù)用戶無法正確訪問到目標(biāo)網(wǎng)站,或者使得某些用戶直接訪問到了惡意指定的域名地址。
其實(shí)施步驟如下:
1、 獲取劫持域名注冊信息:首先攻擊者會訪問域名查詢站點(diǎn),通過make changes(做出更改)功能,輸入要查詢的域名,以取得該域名注冊信息。
2、 控制該域名的e-mail(電子郵件)帳號:此時攻擊者會利用社會工程學(xué)或暴力破解學(xué)進(jìn)行該e-mail(電子郵件)密碼破解;有能力的攻擊者,將直接對該e-mail(電子郵件)進(jìn)行入侵行為,以獲取所需信息。
3、 修改注冊信息:當(dāng)攻擊者破獲了e-mail(電子郵件)后,會利用相關(guān)的make changes(做出更改)功能修改該域名的注冊信息,包括“擁有者信息,DNS服務(wù)器信息”等。
4、 使用e-mail(電子郵件)收發(fā)確認(rèn)函:此時的攻擊者,會趕在信件帳號的真正擁有者之前,截獲網(wǎng)絡(luò)公司回饋的網(wǎng)絡(luò)確認(rèn)注冊信息更改件,并進(jìn)行回件確認(rèn),隨后網(wǎng)絡(luò)公司將再次回饋成功修改信件,此時攻擊者就成功劫持了該域名。
三、域名劫持的后果:
1、 用戶對正常域名的訪問,可能會被引到入侵者所設(shè)置的掛馬、釣魚網(wǎng)站的頁面。
2、 攻擊者如果將DNS(域名系統(tǒng))的域名查詢,重定向到惡意DNS(域名系統(tǒng))服務(wù)器。那么被劫持域名的“域名解析”,就完全處于攻擊者的控制之下。
四、如何防止域名被劫持?
1、 準(zhǔn)備兩個以上的域名,一旦黑客進(jìn)行DNS攻擊,用戶還可以訪問另一個域名。
2、 手動修改DNS:
在地址欄中輸入:http://192.168.1.1 (如果頁面不能顯示,可嘗試輸入:http://192.168.0.1)。
填寫你路由器的用戶名和密碼,路由器初始用戶名為“admin”,密碼也是“admin”,如果你進(jìn)行修改過,則填寫修改后的用戶名和密碼,然后點(diǎn)擊“確定”。
在“DHCP服務(wù)器—DHCP”服務(wù)中,填寫主DNS服務(wù)器為更可靠的“114.114.114.114”地址,備用DNS服務(wù)器為“8.8.8.8”,點(diǎn)擊保存即可。
3、 修改路由器密碼:
在地址欄中輸入:http://192.168.1.1 (如果頁面不能顯示,可嘗試輸入:http://192.168.0.1)
填寫你路由器的用戶名和密碼,路由器初始用戶名為“admin”,密碼也是“admin”,如果你進(jìn)行修改過,則填寫修改后的用戶名和密碼,然后點(diǎn)擊“確定”。
填寫正確后,會進(jìn)入路由器密碼修改頁面,在“系統(tǒng)工具——修改登錄口令”頁面即可完成修改。
五、不管你使用哪種DNS(域名系統(tǒng)),請遵循以下最佳慣例:
1、 通過在不同的網(wǎng)絡(luò)上運(yùn)行分離的域名服務(wù)器,來取得冗余性。
2、 將外部和內(nèi)部域名服務(wù)器分開,并使用轉(zhuǎn)發(fā)器。外部域名服務(wù)器,應(yīng)當(dāng)接受來自幾乎任何地址的查詢,但是轉(zhuǎn)發(fā)器則不接受。它們應(yīng)當(dāng)被配置為只接受來自內(nèi)部地址的查詢。關(guān)閉外部域名服務(wù)器上的遞歸功能(從根服務(wù)器開始向下定位DNS記錄的過程)。這可以限制哪些DNS服務(wù)器與Internet(互聯(lián)網(wǎng))聯(lián)系。
3、 可能時,限制動態(tài)DNS更新。
4、 將區(qū)域傳送,僅限制在授權(quán)的設(shè)備上。
5、 利用事務(wù)簽名,對區(qū)域傳送和區(qū)域更新進(jìn)行數(shù)字簽名。
6、 隱藏運(yùn)行在服務(wù)器上的BIND版本。
7、 刪除運(yùn)行在DNS服務(wù)器上的不必要服務(wù),如:FTP(文件傳輸協(xié)議)、telnet(遠(yuǎn)程終端協(xié)議)和HTTP(超文本傳輸協(xié)議)。
8、 在網(wǎng)絡(luò)外圍和DNS服務(wù)器上,使用防火墻服務(wù),將訪問限制在那些DNS功能需要的端口/服務(wù)上。