危害DNS服務器安全的七條源頭
—— 閱讀:11493次
DNS(Domain Name System)即域名系統(tǒng)是歷史悠久的方法,它可以為具有IP地址的計算機分配域名,使計算機擁有字符型名稱,如如IP地址為207.46.193.254的計算機即微軟服務器www.microsoft.com。DNS采用了設計精良,多數(shù)時間運行都相當出色。然而,總有一些不如人意的情況,它會罷工,讓管理員們頭痛不已。那么如何查找其故障的蛛絲馬跡?請看下問介紹。
有沒有一些規(guī)律性的東西可以遵循?答案是肯定的,我們這兒給出DNS服務器的七大障礙,供您參考:
1.使用老版本的BIND。
Bind作為一款開放源碼的DNS服務器軟件,是目前世界上使用最為廣泛的DNS服務器軟件。幾乎多數(shù)BIND 的老版本都存在著嚴重的、眾所周知的漏洞。攻擊者可以利用這些漏洞將我們的DNS域名服務器搞毀,并可以借此侵入運行它們的主機。因此應確保使用最新的BIND,并及時打補丁。
2.將所有重要的域名服務器放置到同一個子網(wǎng)中。
在這種情況下,一個設備的故障,如一臺交換機或路由器,或一個網(wǎng)絡連接的故障就會使互聯(lián)網(wǎng)上的用戶無法訪問你的網(wǎng)站或向你發(fā)送電子郵件。
3.允許對未授權查詢者的遞歸。
如果設置為下面這種情況:
(recursion yes|no; [yes]
allow-recursion { address_match_list }; [all hosts]
則是不安全的。在這里,recursion選項指定named是否代替客戶機查詢其他域名服務器。通常不把域名服務器設置成關閉遞歸。至少我們應該對自身的客戶機允許遞歸,但對外來查詢禁止遞歸。因為如果可以為任意一個客戶端處理遞歸查詢,將會將域名服務器暴露給緩存投毒(Cache poisoning)和拒絕服務攻擊。
4.允許那些未獲得授權的輔助域名服務器進行區(qū)域傳送。
區(qū)域傳送(Zone Transfer)是指在多個DNS服務器之間復制區(qū)域數(shù)據(jù)庫文件的過程。如果為任意的查詢者提供區(qū)域傳送服務,就會把域名服務器暴露給攻擊者,導致服務器癱瘓。
5.沒有采用DNS轉(zhuǎn)發(fā)器。
DNS轉(zhuǎn)發(fā)器是代表其他DNS服務執(zhí)行DNS查詢的服務器。許多域名服務器軟件,包括微軟的DNS Servers和一些更老的BIND域名服務器,并沒有充分地保護自身以抵御緩存投毒,其它的DNS服務器軟件也都存在著可被惡意響應利用的漏洞。但是許多管理員卻允許這些域名服務器直接查詢互聯(lián)網(wǎng)上的其它域名服務器,根本不使用轉(zhuǎn)發(fā)器。
6.錯誤地設置授權開始(Start of Authority :SOA)值。
SOA 標記區(qū)數(shù)據(jù)的開始,定義影響整個區(qū)的參數(shù)。許多管理員將區(qū)的值設得太低了,在刷新查詢或區(qū)域傳送開始失效時,這會導致系統(tǒng)運轉(zhuǎn)的中斷。自從RFC重新定義了SOA之后,還有一些人重置了逆向緩存(negative caching)TTL,結果又導致其值太高。
7.授權與區(qū)域數(shù)據(jù)中的不匹配的NS記錄。
有一些管理員添加或刪除了首要的域名服務器,卻忘了對其區(qū)域的委托授權數(shù)據(jù)(即所謂的delegation data)作相應的改變。這樣就會延長其解析域名時間,并會減少彈性。
當然,這些僅是管理員可能犯的一些一般性錯誤,不過卻可以作為你配置DNS服務器的基本參考。