防不勝防瞭解DNS快取中毒攻擊原理
網路上出現史上最強大的網際網路漏洞——DNS快取漏洞,此漏洞直指我們應用中網際網路脆弱的安全系統,而安全性差的根源在於設計缺陷。利用該漏洞輕則可以讓使用者無法開啟網頁,重則是網路釣魚和金融詐騙,給受害者造成巨大損失。
快取中毒攻擊者(cache poisoning)給DNS伺服器注入非法網路域名地址,如果伺服器接受這個非法地址,那說明其快取就被攻擊了,而且以後響應的域名請求將會受黑客所控。當這些非法地址進入伺服器快取,使用者的瀏覽器或者郵件伺服器就會自動跳轉到DNS指定的地址。
這種攻擊往往被歸類為域欺騙攻擊(pharming attack),由此它會導致出現很多嚴重問題。首先,使用者往往會以為登陸的是自己熟悉的網站,而它們卻並不是。與釣魚攻擊採用非法URL不同的是,這種攻擊使用的是合法的URL地址。
另外一個問題是,成百上千的使用者會被植入快取中毒攻擊的伺服器重定向,引導至黑客設立的圈套站點上。這種問題的嚴重性,會與使用域名請求的使用者多少相關。在這樣的情況下,即使沒有豐富技術的黑客也可以造成很大的麻煩,讓使用者稀裡糊塗的就把自己網銀帳號密碼,網遊帳號密碼告訴給他人。
用這種類似的方法,郵件系統也會受到黑客攻擊。只不過不是給Web伺服器,而是給郵件伺服器非法地址,從而讓系統引導至受到控制的郵件伺服器中。
那麼,黑客究竟是怎麼做到使快取伺服器接受非法地址呢?當一個DNS快取伺服器從使用者處獲得域名請求時,伺服器會在快取中尋找是否有這個地址。如果沒有,它就會上級DNS伺服器發出請求。
在出現這種漏洞之前,攻擊者很難攻擊DNS伺服器:他們必須通過傳送偽造查詢響應、獲得正確的查詢引數以進入快取伺服器,進而控制合法DNS伺服器。這個過程通常持續不到一秒鐘,因此黑客攻擊很難獲得成功。
但是,現在有安全人員找到該漏洞,使得這一過程朝向有利於攻擊者轉變。這是因為攻擊者獲悉,對快取伺服器進行持續不斷的查詢請求,伺服器不能給與回應。比如,一個黑客可能會發出類似請求:1q2w3e.google.com,而且他也知道快取伺服器中不可能有這個域名。這就會引起快取伺服器發出更多查詢請求,並且會出現很多欺騙應答的機會。
當然,這並不是說攻擊者擁有很多機會來猜測查詢引數的正確值。事實上,是這種開放源DNS伺服器漏洞的公佈,會讓它在10秒鐘內受到危險攻擊。
要知道,即使1q2w3e.google.com受到快取DNS中毒攻擊危害也不大,因為沒有人會發出這樣的域名請求,但是,這正是攻擊者發揮威力的地方所在。通過欺騙應答,黑客也可以給快取伺服器指向一個非法的伺服器域名地址,該地址一般為黑客所控制。而且通常來說,這兩方面的資訊快取伺服器都會儲存。
由於攻擊者現在可以控制域名伺服器,每個查詢請求都會被重定向到黑客指定的伺服器上。這也就意味著,黑客可以控制所有域名下的子域網址:www.bigbank.com,mail.bigbank.com,ftp.bigbank.com等等。這非常強大,任何涉及到子域網址的查詢,都可以引導至由黑客指定的任何伺服器上。
如何應對?
為了解決這些問題,用於查詢的UDP埠不應該再是預設的53,而是應該在UDP埠範圍內隨機選擇(排除預留埠)
但是,很多企業發現他們的DNS伺服器遠落後於提供網路地址轉換(network address translation ,NAT)的各種裝置。大部分NAT裝置會隨機選擇NDS伺服器使用的UDP埠,這樣就會使得新的安全補丁會失去效果。IT經理也不會在防火牆中開放全方位的UDP埠。更嚴重的是,有安全研究員證明,即使提供64000UDP埠中隨機選擇的保護,DNS伺服器也照樣有可能受到中毒攻擊。
現在是時候考慮保護DNS的其他方案了。UDP源埠隨機化選擇是一種比較有用的防護舉措,但是這會打破UDP源埠隨機化給與DNS伺服器的保護,同由此全方位開放埠面臨的風險或者降低防火牆效能這兩者間的平衡關係。還有一種比較有效的防護措施就是,當檢測到面臨潛在攻擊風險時,讓DNS伺服器切換到使用TCP連線。
如果攻擊者猜測到了必要的引數以欺騙查詢響應,那麼就需要額外的防禦措施了。這意味著DNS伺服器需要更智慧化,能夠準確分析每個查詢響應,以便剔除攻擊者傳送的非法應答中的有害資訊。
相關文章
- SAD DNS--新型DNS快取中毒攻擊DNS快取
- 釣魚攻擊防不勝防,該如何預防網路釣魚攻擊?
- DNS 快取中毒--Kaminsky 攻擊復現DNS快取
- 《DNS攻擊防範科普系列2》 -DNS伺服器怎麼防DDoS攻擊DNS伺服器
- 攻擊面管理預防網路攻擊原理?
- CSRF攻擊原理及預防手段
- 什麼是資料中毒?如何防範攻擊者的AI和ML攻擊?AI
- 《DNS攻擊防範科普系列3》 -如何保障 DNS 操作安全DNS
- DDOS攻擊原理,種類及其防禦
- XXE攻擊攻擊原理是什麼?如何防禦XXE攻擊?
- CC攻擊的原理是什麼?如何防禦CC攻擊?
- DNS快取中毒是怎麼回事?DNS快取
- 網站總被劫持?關於DNS快取中毒你究竟瞭解多少網站DNS快取
- cc攻擊防禦解決方法
- 3、攻擊防範
- 詳解SQL隱碼攻擊的原理及其防範措施SQL
- 淺談 JavaScript DDoS 攻擊原理與防禦JavaScript
- 淺談JavaScript DDoS攻擊原理與防禦JavaScript
- 淺談JS DDoS攻擊原理與防禦JS
- sql注入定義、原理、攻擊和防護SQL
- 【知識科普】高防伺服器防禦CC攻擊的原理伺服器
- DNS漏洞不容小覷 謹防DDoS攻擊乘虛而入DNS
- MySQL注射攻擊與防範詳解MySql
- 被攻擊怎麼解決?DDoS高防IP防護策略
- CC攻擊原理是什麼?網站被CC攻擊如何防禦?網站
- Java HTTP Host 頭攻擊原理以及如何防禦JavaHTTP
- web安全之XSS攻擊原理及防範Web
- CSRF(Cross Site Request Forgery)攻擊原理和防禦ROS
- 反射型 DDoS 攻擊的原理和防範措施反射
- DDoS 攻擊與防禦:從原理到實踐
- 淺談DDOS攻擊攻擊與防禦
- WMI 的攻擊,防禦與取證分析技術之防禦篇
- WEB攻擊與防禦Web
- CSRF攻擊與防禦
- WMI 的攻擊,防禦與取證分析技術之攻擊篇
- 《DNS攻擊防範科普系列1》—你的DNS伺服器真的安全麼?DNS伺服器
- 看到照片 谷歌就知道在哪拍的 防不勝防!谷歌
- 高防伺服器主要防禦的攻擊伺服器