您的位置:首頁>正文

網易易盾:詳解DDoS防護之TCP(二)

本章我們瞭解DDoS防護的TCP部分, 上篇詳見:詳解ddos防護之TCP, 上篇主要介紹了syn_flood攻擊,今天介紹其他主要類型的攻擊方式和防禦原理。

1.synack/ack/reset flood 攻擊和防禦

synack flood攻擊:

syn_ack報文出現在連接建立的第2個報文, 用來確認第一次握手的syn包。 當伺服器收到syn_ack報文後會在系統裡查詢是否屬於3次握手的範疇。 如果屬於則回復ack, 並將連接設為連接狀態。 若沒有查到相關資訊, 則回復reset。 (這裡window協議實現與Linux有所不同, 這裡僅討論Linux)。 當攻擊者發送大量的syn_ack進行攻擊時, 伺服器將會為處理這些報文而消耗大量的資源。

也許你發現這裡可能還有另一種潛在的危害,

就是當伺服器主動外聯時, 發送完syn,等待synack包時, 收到了攻擊者發送的synack報文而導致, 連接建立失敗。 其實嚴格意義上說這種情況是存在的。 可這種情形發送在攻擊的報文五元組匹配並且seq-ack也正確匹配的情況。 概率極低, 忽略不計。

synack flood 防禦:

1.如果伺服器沒有主動發起連接的需求, 直接將所以syn_ack包丟棄即可。

2.如果有對外連接的需求, 則可利用源認證的方式防禦, 具體防護原理為:

向syn_ack的目標IP, 埠發送syn報文, 能在固定時間內返回, 並且序號匹配則說明該IP, 埠確實提高了服務, 加入白名單。 多次未防護的加入黑名單。

其他包類型的flood攻擊:

主要的攻擊原理都為利用大量的無效資料包, 消耗伺服器資源。 由於攻擊報文命中五元組和序號的概率極低,

所以對正常連接破壞有限(伺服器資源充足的情況下)。

針對這些類型的攻擊的處理方式也正是利用上面的特點。 在連接建立的時候, 利用syn_reset, syn_cookie認證, 認證通過之後, 為每個tcp連接建立一個會話, 保存五元組和序號資訊, 只有匹配的包才轉發到伺服器, 不匹配的丟棄。

2.TCP連接耗盡攻擊/慢連接攻擊。

連接耗盡攻擊:這種攻擊方式也許是TCP攻擊中, 消耗資源最嚴重的攻擊方式。 通常駭客發起連接耗盡型的攻擊的代價也比上述的要高的多。

那麼讓我們先來瞭解一下, 一個TCP連接, 將大致佔用多少資源, 通常伺服器又能接受多少的連接的?下面以Linux系統為例, 我們做一下簡要的分析:

在三次握手完成之後, 內核會為每個連接分配相應的結構,

保存TCP連接相應的控制資訊, 接收緩衝和發送緩衝。 預設情況下佔用大概10K的記憶體。

通常的連接耗盡攻擊會發起10~ 100w的連接, 大致佔用100M ~ 1G的記憶體, 也許你會覺得很少。 但大量的空連接佔用的不只是這些, 攻擊者通常還會建立後立馬會fin報文結束連接。 每個TCP連接都需要維護狀態。 不斷的發起和斷開, 系統將不斷分配和釋放資源, 將會大大增加系統的調度負擔, 同時上層應用也將在建立和斷開連接上消耗大量的CPU, 造成伺服器不可以用。

該類型還有另一種演化的攻擊方式, 慢連接攻擊:例如通常的post請求都會在http頭部設置content-length欄位表明。 請求的位元組數, 伺服器應用通常獲取到之後, 會在連接上持續接收內容直到獲取到指定長度的資料。

駭客正是利用這個處理過程, 比如:連接建立後, 發送的http頭指定長度content-length:10000, 如何每秒發送1位元組的資料。 這樣一樣很少的連接就可能造成伺服器佔用嚴重, 無法提供服務。

防禦原理:

報文經過防禦系統後防禦系統將記錄每個IP的連接行為做出標記:比如可分為正常, 異常, 可疑等級別。 達到一定次數加入黑名單。

具體如空連接異常的判斷標準為在連接建立和關閉過程中, 或者建立後長時間, 沒有正常的資料交互過程, 則可判定為空連接。

慢連接:建立後報文交互緩慢, 一定時間內總傳輸資料小於特定值, 則視為慢連接異常。

3.異常報文攻擊

TCP為了實現全雙工的流傳輸, 定義了負載的各種流控, 並且整個傳輸過程都根據資料包中的標誌位元, 進行狀態機的狀態切換。 發送大量的異常報文, 可能導致協議棧處理的過程中發送錯誤, 而使系統奔潰。

防禦方式較為簡單:1.是基於上述提到過的tcp會話機制, 加入狀態的檢查, 特定狀態下只接收特意的允許的類型的報文。

2.過濾畸形報文,如syn,synack報文中一定不帶負載。過濾分片報文等(有一定概率誤攔截)。

總的來說,利於上述的防禦原理,基於TCP的特性,在頻寬充足的情況下,防禦效果基本良好。針對連接耗盡類型的攻擊,還需要根據業務的特徵,來定制連接的識別。比如基於使用者的登錄資訊等等。

以上由網易企業郵箱經銷商(163hmail.com)湖南領先網路科技整理發佈。

網易企業郵箱,是網易專為企業使用者定制的電子郵箱產品,根植于中文郵箱第一品牌,擁有國內最高等級郵件系統安全證書,具備頂級反垃圾實力、安全穩定、海外暢郵、高效管理、簡單易用等優良品質。湖南領先網路科技是網易企業郵箱授權經銷商,專業為企業提供網易企業郵箱、網易辦公套件等一站式企業資訊化專業解決方案。

2.過濾畸形報文,如syn,synack報文中一定不帶負載。過濾分片報文等(有一定概率誤攔截)。

總的來說,利於上述的防禦原理,基於TCP的特性,在頻寬充足的情況下,防禦效果基本良好。針對連接耗盡類型的攻擊,還需要根據業務的特徵,來定制連接的識別。比如基於使用者的登錄資訊等等。

以上由網易企業郵箱經銷商(163hmail.com)湖南領先網路科技整理發佈。

網易企業郵箱,是網易專為企業使用者定制的電子郵箱產品,根植于中文郵箱第一品牌,擁有國內最高等級郵件系統安全證書,具備頂級反垃圾實力、安全穩定、海外暢郵、高效管理、簡單易用等優良品質。湖南領先網路科技是網易企業郵箱授權經銷商,專業為企業提供網易企業郵箱、網易辦公套件等一站式企業資訊化專業解決方案。

同類文章
Next Article
喜欢就按个赞吧!!!
点击关闭提示