DNS協議工作過程;DNS的安全隱患


DNS協議工作過程

  下面以域名為m.xyz.com的主機欲通過另一個主機的域名y.abc.com的IP地址為例,簡述DNS協議過程。

  1. 主機m.xyz.com先向其本地服務器dns.xyz.com進行遞歸查詢。
  2. 本地域名服務器先查詢高速緩存,如果不久前已經查詢過域名y.abc.com的IP,那么本地域名服務器就不必向根域名服務器查詢,而是直接把高速緩存中存放的上次查詢的結果(即y.abc.com的IP地址)告訴用戶。
  3. 本地域名服務器采用迭代查詢。他先向一個根域名服務器查詢。
  4. 根域名服務器告訴本地域名服務器,下一次應查詢的頂級域名服務器dns.com的IP地址。
  5. 本地域名服務器向頂級域名服務器dns.com進行查詢。
  6. 頂級域名服務器dns.com告訴本地域名服務器,下一次應查詢的權限域名服務器dns.abc.com的IP地址。
  7. 本地域名服務器向權限域名服務器dns.abc.com進行查詢。
  8. 權限域名服務器dns.abc.com告訴本地域名服務器,所查詢的主機的ip地址。
  9. 本地域名服務器最后把查詢的結果告訴主機m.xyz.com。

安全隱患

  由於DNS本身的設計缺陷,沒有提供適當的信息保護和認證機制,使得DNS很容易受到攻擊。比如DNS Spoofing(DNS欺騙)、Cache Poisoing(緩存中毒),Server Compromising(服務器中毒),DoS。DNS Spoofing(DNS欺騙)、Cache Poisoing(緩存中毒)是其中最容易實現,且危害最大的兩個攻擊。DNS欺騙能夠實現的成因是,在DNS報文中只使用一個序列號來進行有效性鑒別,加之DNS客戶端簡單地信任首先到達的應答包而丟棄所有后到達的應答包,使得攻擊者很容易監聽到查詢請求並偽造應答包給DNS客戶端。緩存中毒的成因也是由於DNS協議沒有提供恰當的認證機制。在已知端口號的前提下,利用“生日攻擊”,通過發送大量的DNS應答包來猜測攻擊目標的DNS請求包的ID號,如果所發送的偽造應答包中存在和請求包的ID一致的情況,也就是產生了所謂的“碰撞”,則欺騙成功。

消除DNS安全隱患

  1. 對少數信息安全級別要求高的網站避免使用DNS。可以直接通過IP地址訪問,繞開DNS服務。
  2. 防范ARP攻擊。因為DNS欺騙需要以ARP欺騙為基礎。避免了ARP攻擊的可能,自然無法進行DNS欺騙。
  3. 發送DNS請求時采用隨機端口,降低“碰撞”成功的可能性。
  4. 為信息安全要求高的網站建立標准的IP映射表。為少部分網站(比如設計私密信息的網站或經常訪問的網站)制作靜態標准DNS映射表。
  5. 被動檢測。針對攻擊往往在短時間內發送大量針對同一個域名的請求包的特點,進行檢測或者限制發送的請求包的數量。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM