新四季網

防範dns請求報文泛洪攻擊的方法及設備的製作方法

2024-01-24 03:43:15 1

專利名稱:防範dns請求報文泛洪攻擊的方法及設備的製作方法
技術領域:
本發明涉及網絡安全技術領域,尤其涉及一種防範DNS請求報文泛洪 (DNS Query Flood)攻擊的方法及設備。
技術背景域名系統(Domain Name System, DNS )是一種用於TCP/IP應用程式的 分布式資料庫,提供域名與IP位址之間的轉換。通過域名系統,用戶進行某 些應用時,可以直接使用便於記憶的、有意義的域名,而由網絡中的DNS月l 務器將域名解析為正確的IP位址。圖1為DNS客戶端與DNS伺服器交互過程示意圖。如圖1所示,DNS 客戶端通過向DNS月良務器發送DNS請求報文(DNS Query )獲取域名對應的 IP位址。DNS伺服器在接收到DNS請求報文以後,根據請求的域名進行查找, 有時還需要向上級DNS伺服器請求。DNS伺服器在最終得到DNS客戶端請 求的域名對應的IP位址後,發送DNS響應報文(DNS Reply)通知DNS客戶 端,DNS客戶端就可以向此IP位址請求網絡服務了。另外,在設置了 DNS代理的情形下,DNS客戶端並不直接向DNS服務 器發送DNS請求報文,而是將DNS請求報文發送到DNS代理,通過DNS代 理和DNS伺服器的交互獲取對應的IP位址。為便於描述,在本文中,將DNS 代理和DNS伺服器統稱為DNS服務端設備。DNS請求報文和DNS響應報文格式如圖2所示,其中,16比特(bit) 的標誌欄位被劃分為若干子欄位,參照圖3,各子欄位的含義如下QR是lbit欄位,0表示請求報文,l表示響應報文;opcode是4bit欄位,通常值為0 (標準查詢),其他值為1 (反向查詢) 和2 (伺服器狀態請求);AA是lbit欄位,表示"授權回答(authoritative answer)",其值為1時表 示該域名伺服器是:l受權於該域的;TC是lbit欄位,表示"可截斷的(truncated)",其值為1時表示信息長 度超過報文長度限制;RD是lbit欄位,表示"期望遞歸(recursion desired)"; RA是lbit欄位,表示"可用遞歸,,; 隨後3bit必須為0;rcode是4bit欄位,通常值為0 (沒有差錯)和3 (名字差錯)。 根據協議,DNS客戶端可以使用TCP或者UDP協議與域名伺服器通信。 使用TCP協議進行通信的交互過程為(1 ) DNS客戶端向域名伺服器發起TCP協議的三次握手(2)握手成功以後,TCP連接建立;(3 ) DNS客戶端向域名伺服器發送DNS查詢報文;(4) 域名伺服器向DNS客戶端回應;(5) 斷開TCP連接。使用UDP協議進行通信時,DNS客戶端直接向域名伺服器發送DNS查 詢請求,域名伺服器根據請求內容做出回應。根據DNS使用承載協議(TCP/UDP )的不同,DNS請求才艮文泛洪攻擊的 方式也分為兩種(一) 基於TCP協議的攻擊典型的攻擊方式為SYN泛洪攻擊。攻擊者通過偽造大量的不同源IP位址 的TCPSYN報文,向伺服器發起連接。伺服器收到此才艮文後用SYN/ACK應 答,而此應答發出去後,不會收到ACK報文,這樣便形成了一個TCP半連接。 如果攻擊者發送大量這樣的SYN報文,會在被攻擊主機上出現大量的半連接, 消耗盡其資源,使正常的用戶無法訪問。針對這種攻擊,目前較常見的做法是檢查TCP的cookie值來判斷其合法 性,最終達到對非法請求丟棄、合法請求回應的精確防範。(二) 基於UDP協議的攻擊由於域名查詢的過程比較耗時,攻擊者通過向域名伺服器發送大量DNS 請求報文,將正常用戶的DNS請求報文淹沒,並使域名伺服器無法正常工作 而拒絕服務。採用UDP協議的DNS攻擊是一種UDP泛洪攻擊,由於UDP並不是面向 連接的,報文相對獨立,沒有相關性,因此對於這種攻擊目前沒有做到精確過 濾。目前較常見的攻擊防範做法是檢測發往特定IP或特定域(該IP/域就是 被保護的主機/域)的UDP報文的速率,如果速率超過域值則判定受到攻擊, 丟棄所有UDP糹艮文。採用UDP方式的DNS攻擊,目前的防範方法無法做到精確過濾當設備 檢測到攻擊存在時直接丟棄後續收到的所有UDP報文,這會導致被攻擊報文 淹沒的合法用戶請求也無法得到處理,最終對所有合法用戶拒絕服務。 發明內容本發明所要解決的技術問題是提供一種防範DNS請求報文泛洪攻擊的方 法及設備,以丟棄非法的UDP承載的DNS請求,並使合法的UDP承載的DNS 請求能夠得到回應。為解決上述技術問題,本發明提供技術方案如下一種防範DNS請求報文泛洪攻擊的方法,包括DNS服務端接收DNS客戶端發送的UDP承載的DNS請求報文;DNS服務端向DNS客戶端發送DNS響應報文,並將所述DNS響應報文 中的TC和AA標誌位置1;DNS服務端在預設時間內接收到DNS客戶端發送的TCP SYN報文時, 通過TCP cookie方式檢測DNS客戶端的合法性。上述的方法,其中,還包括DNS服務端在預設時間內沒有接收到DNS 客戶端發送的TCPSYN報文時,直接確定該DNS客戶端非法。上述的方法,其中,所述通過TCP cookie方式檢測DNS客戶端的合法性 具體包括DNS服務端向DNS客戶端回應SYN/ACK報文,並將cookie填充 在所述SYN/ACK報文的seq域中;DNS服務端接收到DNS客戶端回應的ACK 淨艮文以後,檢查所述回應的ACK報文中seq域的值是否為cookie+1,若是, 確定該DNS客戶端合法,否則,確定該DNS客戶端非法。上述的方法,其中,還包括DNS服務端在確定DNS客戶端非法時,丟 棄該DNS客戶端後續發送的所有報文。上述的方法,其中,所述DNS服務端為DNS伺服器或者DNS代理。一種DNS服務端設備,包括第一 UDP模塊,用於接收DNS客戶端發送的UDP承載的DNS請求報文, 向DNS客戶端發送DNS響應報文,並將所述DNS響應報文中的TC和AA 標誌j立置1;第一TCP模塊,用於接收DNS客戶端發送的TCPSYN報文,向DNS客 戶端回應SYN/ACK報文,並將cookie填充在所述SYN/ACK報文的seq域中, 以及接收DNS客戶端回應的ACK報文;第一判斷模塊,用於檢查所述回應的ACK報文中seq域的值是否為 cookie+l,若是,確定該DNS客戶端合法,否則,確定該DNS客戶端非法。一種DNS客戶端設備,包括第二UDP模塊,用於採用UDP協議發送DNS請求報文,並接收DNS服 務端發送的DNS響應報文;第二判斷模塊,用於檢查所述DNS響應報文中的TC和AA標誌位是否 為1,在確定所述TC和AA標誌位為1時,發送重新請求消息到第二TCP模 塊;第二TCP模塊,用於在接收到所述重新請求消息時,採用TCP協議重新 進行請求,發送TCP的SYN報文,以及在接收到DNS服務端發送的SYN/ACK 報文時,回應TCPACK報文,並將cookie+l填充在所述TCP ACK報文的seq 域中。一種防範DNS請求報文泛洪攻擊的方法,包括 DNS客戶端採用UDP協議發送DNS請求報文;DNS服務端接收到所述DNS請求報文後,向DNS客戶端發送DNS響應 報文,並將所述DNS響應報文中的TC和AA標誌位置1;DNS客戶端接收到TC和AA標誌位為1的DNS響應報文以後,採用TCP 協議重新進行請求,發送TCP的SYN報文;DNS服務端在預設時間內接收到DNS客戶端發送的TCP SYN報文時, 通過TCP cookie方式檢測DNS客戶端的合法性。與現有技術相比,本發明的有益效果是當採用UDP承載的DNS請求報文泛洪攻擊發生時,相對於其他UDP泛洪攻擊檢測技術,本發明能有效的鑑別DNS請求的合法性,減少或者避免DNS伺服器受到攻擊,並確保合法的DNS請求能夠得到回應。


圖1為現有技術中DNS客戶端與DNS伺服器交互過程示意圖; 圖2為現有技術中DNS請求報文和DNS響應報文格式示意圖; 圖3為圖2中16比特的標誌欄位的格式示意圖; 圖4為本發明實施例的防範DNS請求才艮文泛洪攻擊的方法示意圖; 圖5為本發明實施例的DNS服務端設備的結構示意圖; 圖6為本發明實施例的DNS客戶端設備的結構示意圖。
具體實施方式
本發明的關鍵在於,將UDP承載的DNS請求報文泛洪攻擊防範轉化為 TCP的SYN報文泛洪攻擊防範。具體地,DNS月艮務端接收到UDP承載的DNS 請求報文以後,向DNS客戶端發送TC和AA標誌位都為1的DNS響應報文; DNS客戶端接收到這樣的DNS響應報文以後,重新以TCP協議發起DNS請 求。由於那些偽造源IP的DNS請求不會重新以TCP方式發起DNS請求,這 就可以過濾大多數偽造源IP的攻擊報文。然後,DNS服務端設備再通過TCP cookie方式檢測DNS客戶端的合法性,並響應所有合法客戶端的DNS請求。為使本發明的目的、技術方案和優點更加清楚,下面將結合附圖及具體實 施例對本發明進行詳細描述。參照圖4,本發明實施例的防範DNS請求報文泛洪攻擊的方法主要包括 如下步驟步驟SI 、 DNS客戶端採用UDP協議發送DNS請求報文;步驟S2、 DNS服務端接收到DNS請求報文以後,確定該報文以UDP承載,則向DNS客戶端發送DNS響應報文,並將報文中的TC和AA標誌位置1;步驟S3、DNS客戶端接收到TC和AA標誌位為1的DNS響應報文以後, 採用TCP協議重新進行請求,發送TCP的SYN報文;步驟S4、 DNS服務端接收到TCP SYN才艮文以後,向DNS客戶端回應 SYN/ACK報文,並將cookie填充在報文的seq域中;步驟S5、 DNS客戶端回應ACK報文;步驟S6、 DNS服務端接收到ACK報文以後,根據seq值進行合法性檢測。 在步驟S6中,DNS服務端檢查seq值是否為cookie+l ,若是,確定此DNS客戶端合法,再接收到此客戶發送的UDP承載的DNS請求報文時,對該請求報文進行回應。在步驟S2之後,DNS服務端如果在預設時間內沒有接收到DNS客戶端 發送的TCPSYN報文,或者在步驟S6中,所述s叫值不為cookie+l,則可以 確定該DNS客戶端非法,丟棄該客戶端後續發送的所有報文。依照上述實施例的方法,可以做到對非法DNS請求的精確過濾,保證合 法DNS請求能夠正常獲得服務。DNS客戶端的合法性檢測出來後,如果DNS服務端為DNS伺服器,則 在獲取到對應的IP位址後,將該IP位址通過DNS響應才艮文發送到客戶端; 如果DNS服務端為DNS代理,則利用TCP代理技術,向DNS伺服器進行 UDP的DNS請求,再將DNS伺服器的回應以TCP方式發送到DNS客戶端。在本發明的其他實施例中,在合法性檢測出來後,也可以直接向DNS客 戶端發送TCP的RESET報文,斷開TCP連接,等待該客戶端的下一次DNS 請求到達後(不必再做上述檢查過程),直接進行回應。參照圖5,本發明實施例的DNS服務端設備主要包括第一UDP模塊、第 一TCP模塊和第一判斷模塊,其中所述第一 UDP模塊用於接收DNS客戶端發送的UDP承載的DNS請求報 文,向DNS客戶端發送DNS響應報文,並將所述DNS響應報文中的TC和 AA標誌位置1;所述第一 TCP模塊用於接收DNS客戶端發送的TCP SYN報文,向DNS 客戶端回應SYN/ACK報文,並將cookie填充在所述SYN/ACK報文的seq域 中,以及接收DNS客戶端回應的ACK報文;所述第一判斷模塊用於檢查所述回應的ACK報文中s叫域的值是否為 cookie+l,若是,確定該DNS客戶端合法,否則,確定該DNS客戶端非法。所述第一判斷模塊還用於在所述第一 TCP模塊在預設時間內沒有接收到 DNS客戶端發送的TCP SYN報文時,直接確定該DNS客戶端非法。參照圖6,本發明實施例的DNS客戶端設備主要包括第二UDP模塊、第 二TCP模塊和第二判斷模塊,其中所述第二 UDP模塊用於採用UDP協議發送DNS請求才艮文,並接收DNS 服務端發送的DNS響應報文;所述第二判斷模塊,用於檢查所述DNS響應報文中的TC和AA標誌位 是否為1,在確定所述TC和AA標誌位為1時,發送重新請求消息到所述第 二TCP模塊;所述第二TCP模塊,用於在接收到所述重新請求消息時,採用TCP協議 重新進行請求,發送TCP的SYN報文,以及在接收到DNS服務端發送的 SYN/ACK報文時,回應TCPACK報文,並將cookie+l填充在所述TCP ACK 4艮文的s叫域中。最後應當說明的是,以上實施例僅用以說明本發明的技術方案而非限制, 本領域的普通技術人員應當理解,可以對本發明的技術方案進行修改或者等同 替換,而不脫離本發明技術方案的精神範圍,其均應涵蓋在本發明的權利要求 範圍當中。
權利要求
1.一種防範DNS請求報文泛洪攻擊的方法,其特徵在於,包括DNS服務端接收DNS客戶端發送的UDP承載的DNS請求報文;DNS服務端向DNS客戶端發送DNS響應報文,並將所述DNS響應報文中的TC和AA標誌位置1;DNS服務端在預設時間內接收到DNS客戶端發送的TCP SYN報文時,通過TCP cookie方式檢測DNS客戶端的合法性。
2. 如權利要求1所述的方法,其特徵在於,還包括DNS服務端在預設時間內沒有接收到DNS客戶端發送的TCP SYN報文 時,直接確定該DNS客戶端非法。
3. 如權利要求1所述的方法,其特徵在於,所述通過TCP cookie方式檢 測DNS客戶端的合法性具體包括DNS服務端向DNS客戶端回應SYN/ACK報文,並將cookie填充在所述 SYN/ACK報文的seq域中;DNS服務端接收到DNS客戶端回應的ACK報文以後,檢查所述回應的 ACK報文中seq域的值是否為cookie+1,若是,確定該DNS客戶端合法,否 則,確定該DNS客戶端非法。
4. 如權利要求2或3所述的方法,其特徵在於,還包括DNS服務端在確定DNS客戶端非法時,丟棄該DNS客戶端後續發送的 所有報文。
5. 如權利要求1所述的方法,其特徵在於 所述DNS服務端為DNS伺服器或者DNS代理。
6. —種DNS服務端設備,其特徵在於,包括第一 UDP模塊,用於接收DNS客戶端發送的UDP承載的DNS請求報文, 向DNS客戶端發送DNS響應報文,並將所述DNS響應報文中的TC和AA 才示志位置1;第一TCP模塊,用於接收DNS客戶端發送的TCPSYN報文,向DNS客 戶端回應SYN/ACK報文,並將cookie填充在所述SYN/ACK報文的s叫域中,以及接收DNS客戶端回應的ACK報文;第一判斷模塊,用於檢查所述回應的ACK報文中seq域的值是否為 cookie+l,若是,確定該DNS客戶端合法,否則,確定該DNS客戶端非法。
7. 如權利要求6所述的設備,其特徵在於所述第一判斷模塊,還用於在所述第一 TCP模塊在預設時間內沒有接收 到DNS客戶端發送的TCP SYN報文時,直接確定該DNS客戶端非法。
8. —種DNS客戶端設備,其特徵在於,包括第二UDP模塊,用於採用UDP協議發送DNS請求報文,並接收DNS服 務端發送的DNS響應報文;第二判斷模塊,用於檢查所述DNS響應報文中的TC和AA標誌位是否 為1,在確定所述TC和AA標誌位為1時,發送重新請求消息到第二TCP模 塊;第二TCP模塊,用於在接收到所述重新請求消息時,採用TCP協議重新 進行請求,發送TCP的SYN報文,以及在接收到DNS服務端發送的SYN/ACK 報文時,回應TCPACK報文,並將cookie+l填充在所述TCP ACK報文的seq 域中。
9. 一種防範DNS請求報文泛洪攻擊的方法,其特徵在於,包括 DNS客戶端採用UDP協議發送DNS請求報文;DNS服務端接收到所述DNS請求報文後,向DNS客戶端發送DNS響應 報文,並將所述DNS響應報文中的TC和AA標誌位置1;DNS客戶端接收到TC和AA標誌位為1的DNS響應報文以後,採用TCP 協議重新進行請求,發送TCP的SYN報文;DNS服務端在預設時間內接收到DNS客戶端發送的TCP SYN報文時, 通過TCP cookie方式檢測DNS客戶端的合法性。
10. 如權利要求9所述的方法,其特徵在於,還包括DNS服務端在預設時間內沒有接收到DNS客戶端發送的TCP SYN報文 時,直接確定該DNS客戶端非法。
全文摘要
本發明提供一種防範DNS請求報文泛洪攻擊的方法及設備。所述方法包括DNS服務端接收DNS客戶端發送的UDP承載的DNS請求報文;DNS服務端向DNS客戶端發送DNS響應報文,並將所述DNS響應報文中的TC和AA標誌位置1;DNS服務端在預設時間內接收到DNS客戶端發送的TCP SYN報文時,通過TCP cookie方式檢測DNS客戶端的合法性。依照本發明,能夠有效的防範UDP承載的DNS請求報文對DNS伺服器的泛洪攻擊。
文檔編號H04L29/06GK101282209SQ200810106458
公開日2008年10月8日 申請日期2008年5月13日 優先權日2008年5月13日
發明者張仲虎 申請人:杭州華三通信技術有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀