鬼佬大哥大
  • / 8
  • 下載費用:30 金幣  

一種防范SYNFLOOD攻擊的方法及安全代理裝置.pdf

關 鍵 詞:
一種 防范 SYNFLOOD 攻擊 方法 安全 代理 裝置
  專利查詢網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
摘要
申請專利號:

CN201110219066.6

申請日:

2011.08.02

公開號:

CN102291441B

公開日:

2015.01.28

當前法律狀態:

授權

有效性:

有權

法律詳情: 專利權人的姓名或者名稱、地址的變更IPC(主分類):H04L 29/08變更事項:專利權人變更前:杭州迪普科技有限公司變更后:杭州迪普科技股份有限公司變更事項:地址變更前:310000 浙江省杭州市濱江區濱江大道3880號華榮時代大廈1601室變更后:310000 浙江省杭州市濱江區濱江大道3880號華榮時代大廈1601室|||授權|||實質審查的生效IPC(主分類):H04L 29/08申請日:20110802|||公開
IPC分類號: H04L29/08; H04L29/06; H04L1/16 主分類號: H04L29/08
申請人: 杭州迪普科技有限公司
發明人: 汪慶權
地址: 310000 浙江省杭州市濱江區濱江大道3880號華榮時代大廈1601室
優先權:
專利代理機構: 北京博思佳知識產權代理有限公司 11415 代理人: 林祥
PDF完整版下載: PDF下載
法律狀態
申請(專利)號:

CN201110219066.6

授權公告號:

|||102291441B||||||

法律狀態公告日:

2017.03.15|||2015.01.28|||2012.09.12|||2011.12.21

法律狀態類型:

專利權人的姓名或者名稱、地址的變更|||授權|||實質審查的生效|||公開

摘要

本發明提供一種防范SYN?Flood攻擊的方法,該方法包括:A、檢查發出TCP?SYN報文的客戶端是否在白名單中;如果是,允許報文通過并刪除對應表項;如果否則轉B;B、向客戶端發出驗證請求并通過客戶端返回的驗證響應檢驗客戶端是否合法,若合法,則在名單中增加對應表項,否則丟棄響應報文。本發明巧妙地改進了表項刪除機制,解決了攻擊者偽造IP地址可能與客戶端IP地址重合的問題。本發明還可以再配合簽署IP地址+源端口的表項內容設計,充分利用了TCP連接源端口號會呈現較強的隨機性這個特點,使得攻擊者利用白名單中合法IP地址蒙混過關幾乎不可能。

權利要求書

1.一種防范SYN?Flood攻擊的安全代理裝置,其應用于網絡安全設備
中,該裝置包括:
報文檢查單元,用于檢查發出TCP?SYN報文的客戶端是否在客戶端白
名單中有對應的表項;如果是,允許該報文通過并刪除該客戶端對應的表項;
如果否,則轉客戶端驗證單元處理;
客戶端驗證單元,用于向發出TCP?SYN報文的客戶端發出驗證請求報
文并通過客戶端返回的驗證響應報文檢驗客戶端是否為合法客戶端,若客戶
端為合法客戶端,則在客戶端白名單中增加對應的表項,否則丟棄該丟棄該
驗證響應報文。
2.根據權利要求1所述的裝置,其特征在于,所述客戶端白名單的表項
包括IP地址以及源端口號。
3.根據權利要求1所述的裝置,其特征在于,所述驗證請求報文為攜帶
Cookie的SYN?ACK報文。
4.根據權利要求1所述的裝置,其特征在于,所述驗證響應報文為RST
報文。
5.根據權利要求1所述的裝置,其特征在于,其中所述網絡安全設備還
包括訪問控制單元,用于從接收到的報文中篩選出TCP?SYN報文并提交給
報文檢查單元,以及用于從接收到的報文中篩選出驗證響應報文并提交給客
戶端驗證單元。
6.一種防范SYN?Flood攻擊的方法,其應用于網絡安全設備中,該方
法包括:
A、檢查發出TCP?SYN報文的客戶端是否在客戶端白名單中有對應的表
項;如果是,允許該報文通過并刪除該客戶端對應的表項;如果否,則轉步
驟B處理;
B、向發出TCP?SYN報文的客戶端發出驗證請求報文并通過客戶端返回
的驗證響應報文檢驗客戶端是否為合法客戶端,若客戶端為合法客戶端,則
在客戶端白名單中增加對應的表項,否則丟棄該驗證響應報文。
7.根據權利要求6所述的方法,其特征在于,所述客戶端白名單的表項
包括IP地址以及源端口號。
8.根據權利要求6所述的方法,其特征在于,所述驗證請求報文為攜帶
Cookie的SYN?ACK報文。
9.根據權利要求6所述的方法,其特征在于,所述驗證響應報文為RST
報文。
10.根據權利要求6所述的方法,其特征在于,還包括:
C、從接收到的報文中篩選出TCP?SYN報文并轉步驟A處理,以及
D、從接收到的報文中篩選出驗證響應報文并轉步驟B處理。

說明書

一種防范SYN Flood攻擊的方法及安全代理裝置

技術領域

本發明涉及網絡安全技術,尤其涉及一種防報文攻擊的方法及裝置。

背景技術

隨著網絡通信技術的進步,各種網絡攻擊引發的網絡安全問題日益受到
人們的關注。越來越多的企業以及運營商開始使用諸如防火墻等網絡安全設
備為網絡通信提供保護措施。

基于TCP協議的報文攻擊行為是相當常見的網絡攻擊。這種攻擊的特點
通過大量發送SYN報文來消耗大量的服務器資源,由于以致服務器沒有足夠
的資源去響應其他客戶端的訪問請求。這種攻擊被稱為SYN?Flood。

SYN?flood攻擊是一種通過向目標服務器發送SYN報文,消耗其系統資
源,削弱目標服務器的服務提供能力的行為。一般情況下,SYN?Flood攻擊
是在采用IP源地址欺騙行為的基礎上,利用TCP連接建立時的三次握手過
程形成的。

正常情況下,TCP連接的建立需要雙方進行三次握手,只有當三次握手
都順利完成之后,一個TCP連接才能成功建立。當客戶端向服務器發出請求,
建立一個TCP連接時,雙方要進行以下消息交互:

(1)客戶端向服務器發送一個SYN報文;

(2)如果服務器同意建立連接,則響應客戶端一個對SYN報文的回應
(SYN/ACK);

(3)客戶端收到服務器的SYN/ACK以后,再向服務器發送一個ACK報
文進行確認。當服務器收到客戶端的ACK報文以后,一個TCP的連接成功
完成。

請參考圖1,在上述過程中,當服務器收到SYN報文后,在發送SYN/ACK
回應客戶端之前,需要分配一個數據區記錄這個未完成的TCP連接,這個數
據區通常稱為TCB資源,此時的TCP連接也稱為半開連接。這種半開連接
只有在收到客戶端響應報文或連接超時后才斷開,而客戶端在收到SYN/ACK
報文之后才會分配TCB資源,因此這種不對稱的資源分配模式會被攻擊者所
利用形成SYN?Flood攻擊。

攻擊者隨機構造源IP地址向目標服務器發起連接,該服務器回應
SYN/ACK消息作為響應,由于應答消息的目的地址是隨機的,所以這個地
址很可能不存在,不會對服務器進行響應。因此,TCP握手的最后一個步驟
將永遠不可能發生,該連接就一直處于半開狀態直到連接超時后被刪除。如
果攻擊者用快于服務器TCP連接超時的速度,連續對目標服務器開放的端口
發送SYN報文,服務器的所有TCB資源都將被消耗,以至于不能再接受其
他客戶端的正常連接請求。

為了解決上述問題,現有技術中在單邊流情況下,對SYN?Flood防護通
常用SYN?Safe?Reset+白名單方式,即通過驗證發起連接客戶端的合法性,
使服務器免受SYN?flood攻擊。請參考圖2,Safe?Reset技術通過攔截TCP
SYN(連接新建)報文,修改響應報文序列號且帶認證(稱之為cookie)信息
發回給客戶端,再通過客戶端回應的報文中攜帶的信息來驗證客戶端的合法
性。如驗證通過,則會將客戶端IP地址加入白名單,同時設置老化時間,在
老化時間內,此IP再次訪問服務器時,會直接放行。

即便如此,如果一旦攻擊者偽造的源IP地址與部分合法客戶端的IP地
址一致時,服務器仍將遭受一定程度的攻擊。

發明內容

有鑒于此,本發明提供一種更可靠且實施成本較低的解決方案以解決現
有技術的問題。本發明提供一種防范SYN?Flood攻擊的安全代理裝置,其應
用于網絡安全設備中,該裝置包括:

報文檢查單元,用于檢查發出TCP?SYN報文的客戶端是否在客戶端白
名單中有對應的表項;如果是,允許該報文通過并刪除該客戶端對應的表項;
如果否,則轉客戶端驗證單元處理;

客戶端驗證單元,用于向發出TCP?SYN報文的客戶端發出驗證請求報
文并通過客戶端返回的驗證響應報文檢驗客戶端是否為合法客戶端,若客戶
端為合法客戶端,則在客戶端白名單中增加對應的表項,否則丟棄該丟棄該
驗證響應報文。

優選地,所述客戶端白名單的表項包括IP地址以及源端口號。

優選地,所述驗證請求報文為攜帶Cookie的SYN?ACK報文。

優選地,所述驗證響應報文為RST報文。

優選地,其中所述網絡安全設備還包括訪問控制單元,用于從接收到的
報文中篩選出TCP?SYN報文并提交給報文檢查單元,以及用于從接收到的
報文中篩選出驗證響應報文并提交給客戶端驗證單元。

本發明還提供一種防范SYN?Flood攻擊的方法,其應用于網絡安全設備
中,該方法包括:

A、檢查發出TCP?SYN報文的客戶端是否在客戶端白名單中有對應的表
項;如果是,允許該報文通過并刪除該客戶端對應的表項;如果否,則轉步
驟B處理;

B、向發出TCP?SYN報文的客戶端發出驗證請求報文并通過客戶端返回
的驗證響應報文檢驗客戶端是否為合法客戶端,若客戶端為合法客戶端,則
在客戶端白名單中增加對應的表項,否則丟棄該驗證響應報文。

優選地,所述客戶端白名單的表項包括IP地址以及源端口號。

優選地,所述驗證請求報文為攜帶Cookie的SYN?ACK報文。

優選地,所述驗證響應報文為RST報文。

優選地,還包括:C、從接收到的報文中篩選出TCP?SYN報文并轉步驟
A處理,以及

D、從接收到的報文中篩選出驗證響應報文并轉步驟B處理。。

本發明巧妙地改進了表項刪除機制,解決了上述問題,其優點是改動小
實施成本非常低,但效果卻非常顯著。同時再配合簽署IP地址+源端口的表
項內容設計,充分利用了客戶端新建TCP連接時源端口號會呈現較強的隨機
性這個特點,使得攻擊者成功攻擊的難度再提高了一截,因此實施本發明之
后,攻擊者想要利用白名單中合法客戶端的IP地址蒙混過關幾乎不可能。

附圖說明

圖1是一種典型的SYN?Flood攻擊原理圖。

圖2是現有技術中防范SYN?Flood攻擊的原理圖。

圖3是本發明安全代理裝置的邏輯結構圖。

圖4是本發明防范SYN?Flood攻擊的流程圖

具體實施方式

本發明利用位于客戶端(Client)與服務器(Server)之間的安全代理裝
置來防范基于TCP協議的SYN?Flood攻擊。本發明所說的安全代理裝置是一
種邏輯裝置,其可位于各種具有安全功能的物理網絡設備(如路由器、三層
交換、防火墻等網絡安全設備)上。本發明安全代理裝置主要包括:報文檢
查單元11以及客戶端驗證單元12,其中所述網絡安全設備還包括訪問控制
單元20。以上各個單元都是邏輯意義上的單元,從實現上可以是軟件實現(即
通過CPU運行內存中的軟件代碼實現)也可以是硬件或者固件實現。以下結
合圖3以計算機軟件為例進行說明。

步驟101,從安全設備接收到的報文中篩選出TCP?SYN報文以及驗證響
應報文;本步驟由網絡安全設備的報文過濾單元執行。

通常情況下,網絡安全設備會報文接收環節設置各種規則來決定報文的
處理流程。比如最典型的以底層芯片內部的訪問控制列表為例,可以設置很
多ACL規則來決定報文的下一步處理,比如允許某類報文通過,丟棄某類報
文,將某類報文上送特定軟件單元進行處理等等。在本發明中,訪問控制單
元20主要的作用是將TCP?SYN報文篩選出來送給報文檢查單元11處理;
以及把驗證響應報文篩選出來送給客戶端驗證單元處理。目前大部分芯片提
供上述訪問控制的功能,而下發給中ACL規則也是本領域普通技術人員所知
曉的一般技術知識,因此不再贅述。需要補充說明的是,訪問控制單元依然
可以采用軟件的方式加以實現,這取決與安全設備整體設計的考量。

步驟102,檢查發出TCP?SYN報文的客戶端是否在客戶端白名單中有對
應的表項;如果是,允許該報文通過并刪除該客戶端對應的表項;如果否,
則轉客戶端驗證單元處理;本步驟由報文檢查單元11執行。

步驟103,向發出TCP?SYN報文的客戶端發出驗證請求報文并通過客戶
端返回的驗證響應報文檢驗客戶端是否為合法客戶端,若客戶端為合法客戶
端,則在客戶端白名單中增加對應的表項,否則丟棄該TCP?SYN報文;本
步驟由客戶端驗證單元12執行。

對于成功地通過了驗證的客戶端,客戶端驗證單元12將把客戶端發出的
TCP?SYN報文的源IP地址以及源端口放入白名單作為一條新的表項。在優
選的實施方式中,本發明的白名單表項包括IP地址以及源端口。如果一個客
戶端創建一個新TCP連接,其首先會發出TCP?SYN報文,報文檢查單元會
檢查到該報文并不在白名單中,這是因為即便該客戶端之前曾經創建過TCP
連接,雖然兩次TCP連接所使用的IP地址都是一樣的,但是兩次TCP連接
的源端口號很多時候是不相同的。但是在現有技術中,由于白名單中的表項
內容僅僅包括IP地址,那么很有可能第二次TCP連接創建會被放行。這種
特點很容易被攻擊者加以利用,攻擊者偽造大量的IP地址,其中部分可能與
合法客戶端的IP地址相同,這部分攻擊TCP?SYN報文就能夠蒙混過關,到
達服務器端。

然而,對于本發明來說同樣也可以僅僅使用IP地址作為表項內容。因為
本發明依然有機制來保證攻擊報文難以蒙混過關。如前所述,客戶端第一次
新建一個TCP連接會發送TCP?SYN報文,客戶端此時不在白名單中,轉到
驗證流程進行處理。客戶端驗證單元12發送驗證響應報文(典型的方式是攜
帶Cookie的SYN?ACK報文)給客戶端,客戶端協議棧會發送驗證響應報文
(典型的方式是RST報文)進行響應。客戶端驗證單元12收到驗證響應報
文后對Cookie進行檢查,如果通過,則視為通過驗證,將客戶端加入到白名
單中,如果無法通過,則丟棄該驗證響應報文。

客戶端驗證通過以后還會立刻再次發送TCP?SYN報文,此時由于客戶
端已經在白名單中了,報文檢查單元11發現該報文屬于白名單中的合法客戶
端發出的,因此會放行該報文并觸發對該合法客戶端對應表項的刪除動作。
當客戶端再次創建一個新的TCP連接時,由于白名單中的表項已經被刪除,
那么客戶端需要重復上述流程。這個刪除動作會保證每次客戶端新建一個
TCP連接都需要進行驗證,因此攻擊者很難利用一個合法客戶端的IP地址蒙
混過關。

在現有技術中,白名單的表項內容都是通過時間進行老化的,首先老化
時間比較長,攻擊者可以加以利用;另外,由于很多客戶端一直處于活躍狀
態,那么白名單中的表項不會被老化,攻擊者有更高的機會利用合法客戶端
的IP地址蒙混過關。在這一點上,本發明巧妙地改進了表項刪除機制,解決
了上述問題,其優點是改動小實施成本非常低,但效果卻非常顯著。同時再
配合簽署IP地址+源端口的表項內容設計,充分利用了客戶端新建TCP連接
時源端口號會呈現較強的隨機性這個特點,使得攻擊者成功攻擊的難度再提
高了一截,因此實施本發明之后,攻擊者想要利用白名單中合法客戶端的IP
地址蒙混過關幾乎不可能。

以上所描述的僅僅是本發明較佳的實現方式,并不用以限定本發明的保
護范圍,任何等同的變化和修改皆應涵蓋在本發明的保護范圍之內。

關于本文
本文標題:一種防范SYNFLOOD攻擊的方法及安全代理裝置.pdf
鏈接地址:http://www.wwszu.club/p-6420891.html
關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服 - 聯系我們

[email protected] 2017-2018 zhuanlichaxun.net網站版權所有
經營許可證編號:粵ICP備17046363號-1 
 


收起
展開
鬼佬大哥大