本章的內容包括: 電子欺騙和域名查詢。電子欺騙可以使DNS服務器相信一台不可靠的主機是一台合法的輔服務器。不道德的黑客用這種技術來獲得域區文件的副本,而當內部計算機的地址被他們知道後,就很容易受到直接的攻擊。 拒絕服務。大量服務請求湧向一台機器使它不能正常工作,這是某些攻擊形式的第一步。這種情況下的保護是對維持高可用性服務的一個練習。幾個DNS相關的配置在這方面會有所幫助 使用DNS和防火牆。防火牆是一種運行專門軟件的計算機或特殊裝置,用限制通過它們的訪問來保護一個或多個網絡。防火牆的配置變化較大,從專用的的硬件、路由器解決方案,多台機器的方案到只有一台有兩個或更多網卡的機器。要有一個與Internet的連接和一個與內部網或DMZ的連接,DNS根據解析和公共需要作特殊的配置。 服務通告。知道有關目標的更多知識通常有助於攻擊者探索其弱點。與主機保護和已公布名字空間中的服務通告相關的問題經常通過限制訪問這些公布的內容來解決。DNS和NetBIOS名空間是大家都很關注的,但服務記錄和LDAP服務增加的因素卻是全新的。 動態DDNS,這種新能力有很多許諾,也有很多危險。在使用這種動態更新機制時對windows 2000 操作系統特有的問題在此作簡單的翻新。 郵件安全性:SMTP,POP,IMAP和Exchange郵件服務器可能遭受多種攻擊。介紹若干比較嚴重的安全隱患,並建議如何使用DNSMX記錄和郵件中繼來減少受攻擊的可能性。 WWW安全性。因為Web服務器和浏覽器功能越來越強,使用越來越普遍,也就越來越可能成為破壞安全性的入口。描述某些Web安全性問題,以及一些可用來防衛的技術。 FTP安全性。FTP服務器對於通過下載來傳送軟件和電子文檔是十分有用的,也可Web服務器中實現下載和發布。描述和FTP有關的安全問題。 本章並不覆蓋設置網絡連接到Internet時應考慮的所有安全問題。本章的目的是幫助讀者理解這些安全問題和DNS服務的關系。有人說安全性應從設計開始。除非從開始設計,安全的弱點總是分層的拼湊物,或者通過重新設計實現的。事實上,,網絡安全不是一件事情,而是由很多細小的配置部分共同促成的。在說明對公共網絡連接的需求和它的風險時,本章把重點放在DNS上。很多風險必須在內部說明。例如,除了所選擇的那些可以引出FTP和Telnet服務器的內部端口。過濾掉所有其他的並不很好。大的企業可以從內部獲得效益,在安全領域實行邏輯分割,並且在這些情況下,在處理公共網絡時面臨的一些問題也可應用在內部。 在處理安全問題時,應確保跟上所有新的安全公報、補丁和bug修正。除了仍與你的提供商保持聯系外,還應該與其他一些企業保持聯系,這些企業不一定把重點放在DNS上,但也發布警告和提供咨詢。 10.1電子欺騙和域名查詢 DNS電子欺騙是指黑客進入系統並更改主機的IP映射使之指向虛假的主機。發生這種電子欺騙的可能性是存在的,但要完全成功也比較難。黑客對DNS服務器攻擊的最大危害是破壞域區信息的完整性,並可能將查詢請求轉指到其他的主機。有幸的是這類攻擊是比較容易防衛和更正的。 Nslookup、ping、traceroute等應用程序可用來確定計算機的信息是否被修改(特別是發現不屬於這個節點或這個域的IP地址)。如果覺得存在問題,可查詢其他授權服務器和檢查結果。如果攻擊發生在一定時間以前,錯誤信息可能已經在網絡中緩存,但這些信息將會過期並回到正常的工作狀態。如果不能確信你的服務器中是否有錯誤信息,就用nslookup反復查詢,並檢查它的結果。為了確定被破壞的數據來自緩存還是已進入到域區數據中,可以使用高級模式在DNS管理控制台中檢查,也可以使用DNSCMD.EXE檢查,如果問題出在緩沖中,可以刷新服務器的緩存,重新經過每一個工具。可以停機、重啟域區或服務器,強迫從它的存儲中讀取域區信息。應該在分析出了破壞點在哪兒以後再采取相應的措施。 當然,這些情況不應該發生,但如果發生了,就需要立即更正。把一個監視器放在合適的地方、特別是大的域區旁是很重要的。然而,如果可以進行早期探測,攻擊的蹤跡是新的並且阻止將來受攻擊的可能性將增加。在有些情況下,可以很成功地實現監視,如觀察服務器性能和網絡的不正常測量結果比觀察域區中被破壞的數據或錯誤的回答更容易。不要忽視DNSCMD.EXE,它可以描繪域區數據的傳送、可以在一定點與標准數據進行周期性的比較。 困難的是確定黑客是如何或從什麼地方侵入系統來進行第一次修改。使用入侵檢測軟件包或監聽可有助於追查黑客。有很多書籍和資料專門討論和處理這個問題。 黑客從變換域區可得到的好處是可以將用戶引向他們控制的機器。然後,黑客利用這種設置來獲得他想截取的用戶注冊信息和郵件帳戶信息,並利用這些信息侵入網絡上的其他主機。當黑客拿一個未授權的機器作為授權服務器對一個域進行操作時,他就可以通過截取和回答查詢來污染Internet上其他名字服務器的緩存。雖然有些保護方法反對這樣做,但windows 2000 DNS服務器可以通過配置保護它的緩存。 減少這種入侵危險的一種方法是使用反向查找來進行驗證。如果一台主機想裝扮成另一台服務器,則反向查找可以驗證此IP地址是否能回到同一個主機。實際上,有些FTP和HTTP服務器在允許下載或連接前就用這種方法進行了驗證。為了在你的環境中使用這種保護方法,你的DNS服務器必須配置有反向查找域區的功能。 設置域名服務器的最好策略之一就是使它盡可能安全。不要使用有許多用戶登錄或有許多交互式服務的機器作為域名服務器。許多安全專家建議,如果通信量允許最好把一個單獨的服務運行在一個單獨的機器上。有些人甚至建議對所有的遠程訪問或者取消或者對它進行嚴格的控制,只有通過解密的私有網絡或者類似的其他機制的訪問才能接受。 另一個要注意的問題是黑客可以從域名服務器通過域區傳送來獲得地址。防止將數據送到非法輔服務器的最好的方法是,在DNS管理控制台的ZoneTransfer(域區傳送)選項卡中列出所有的合法DNS服務器。在圖10-1中選擇AllowZoneTransfer(允許域區傳送),然後選擇條目“OnlytotheFollowingServers(僅到下面的服務器中)”,並且添上服務器的IP,然後使用Notify選項卡給支持此功能的服務器配置Notify選項(參見圖11-8)。既使在認為這些信息不是危險的條件下,這樣做也是一個很好的方法,它提供一個高效的性能,甚至可以在有令人不高興的、惡劣的人的內部網絡中提供保護。由於安全問題使我們看到人性壞的方面,或者,不得不考慮它存在的可能性,真是太不好了。
10.2拒絕服務 拒絕服務攻擊有時在欺騙手段中使用,有時是出於惡意的損壞。這種攻擊方法利用了服務器的TCP/IP棧實現中存在的公認的安全問題,或者僅僅利用了機器的能力是有限的特點。通過發送包含有錯誤的或特殊格式的大量文件包會導致服務器無法回答或完全癱瘓。如果此時路由器和合適的子網上的一台機器已失效的話,就為用替代方法進行欺騙敞開了大門。 最顯然的預防措施是維護,並且只實現最少量的服務。對於DNS服務器,有時可用一些特殊的方法來解決,就象DNS服務器用於提供公共名字空間時一樣。如果不得不響應請求,就設置DNS服務拒絕遞歸查詢(參見第11章),這樣不僅擴展了機器的容量,而且限制了所用DNS服務器代碼的傳送路徑。利用操作系統知識的和已安裝服務器級別的拒絕服務攻擊,並且當它們只需要一個或幾個特殊格式的報文時很難檢測到。如果這些攻擊的信號容易監視,將會堵上這個漏洞,另一方面,如果是基於大量包的攻擊,則有很明顯的特征。 至此想到的另一個與DNS服務器相關的事情是主服務器沒有必要放在公共空間中提供服務,最好放在內部或放在DMZ中。這樣可以很容易建立好的監視系統,該系統周期地檢查DNS服務器是否正常。在DNS服務器屬性頁的Monitoring選項卡中也可實現監視的能力,除非它需要通過公共接口指向特定的遠程服務器,它都會象所需要的那樣發出警報。 (未完待續)