syn_ack攻击
一、攻擊原理:
TCP 握手協議 在 TCP/IP 協議中,TCP 協議提供可靠的連接服務,采用三次握手建立一個連接。
1、第一次握手:建立連接時,客戶端發送 syn 包(syn=j)到服務器,并進入 SYN_SEND 狀 態,等待服務器確認;
2、第二次握手:服務器收到 syn 包,必須確認客戶的 SYN(ack=j+1),同時自己也發送一 個 SYN 包(syn=k),即 SYN+ACK 包,此時服務器進入 SYN_RECV 狀態;
3、第三次握手: 客戶端收到服務器的 SYN+ACK 包, 向服務器發送確認包 ACK(ack=k+1), 此包發送完畢,客戶端和服務器進入 ESTABLISHED 狀態,完成三次握手。
完成三次握手,客戶端與服務器開始傳送數據,在上述過程中,還有一些重要的概念: 未連接隊列:在三次握手協議中,服務器維護一個未連接隊列,該隊列為每個客戶端的 SY N 包(syn=j)開設一個條目,該條目表明服務器已收到 SYN 包,并向客戶發出確認,正在等 待客戶的確認包。如果未收到客戶確認包,服務器進行首次重傳,等待一段時間仍未收到客戶確認包,進行第二次重傳,如果重傳次數超過系統規定的最大重傳次數, 系統將該連接信息從半連接隊列中刪除。
SYN 攻擊原理 SYN 攻擊屬于 DOS 攻擊的一種,它利用 TCP 協議缺陷,通過發送大量的半連接請求,耗 費 CPU 和內存資源。SYN 攻擊除了能影響主機外,還可以危害路由器、防火墻等網絡系統,事 實上 SYN 攻擊并不管目標是什么系統, 只要這些系統打開 TCP 服務就可以實施。
二、防范:
檢測 SYN 攻擊 檢測 SYN 攻擊非常的方便,當你在服務器上看到大量的半連接狀態時,特別是源 IP 地址 是隨機的,基本上可以斷定這是一次 SYN 攻擊。
SYN 攻擊防范技術主要有兩大類,一類是通過防火 墻、路由器等過濾網關防護,另一類是通過加固 TCP/IP 協議棧防范.但必須清楚的是,SYN 攻 擊不能完全被阻止,我們所做的是盡可能的減輕 SYN 攻擊的危害,除非將 TCP 協議重新設計。
1、過濾網關防護
■網關超時設置:網關超時參數設置不宜過小也不宜過 大,超時參數設置過小會影響正常的通訊,設置太大,又會影響防范 SYN 攻擊的效果,必須根 據所處的網絡應用環境來設置此參數
■SYN 網關:SYN 網關收到客戶端的 SYN 包時,直接轉發給服務器;SYN 網關收到服務 器的 SYN/ACK 包后,將該包轉發給客戶端,同時以客戶端的名義給服務器發 ACK 確認包。此 時服務器由半連接狀態進入連接狀態。當客戶端確認包到達時,如果有數據則轉發,否則丟棄。 事實上,服務器除了維持半連接隊列外,還要有一個連接隊列,如果發生 SYN 攻擊時,將使連 接隊列數目增加, 但一般服務器所能承受的連接數量比半連接數量大得多, 所以這種方法能有效 地減輕對服務器的攻擊。
■SYN 代理:當客戶端 SYN 包到達過濾網關時,SYN 代理并不轉發 SYN 包,而是以服務 器的名義主動回復 SYN/ACK 包給客戶,如果收到客戶的 ACK 包,表明這是正常的訪問,此時 防火墻向服務器發送 ACK 包并完成三次握手。 SYN 代理事實上代替了服務器去處理 SYN 攻擊, 此時要求過濾網關自身具有很強的防范 SYN 攻擊能力。
2、加固 tcp/ip 協議棧
防范 SYN 攻擊的另一項主要技術是調整 tcp/ip 協議棧,修改 tcp 協議實現。主要方法有 S ynAttackProtect 保護機制、SYN cookies 技術、增加最大半連接和縮短超時時間等。tcp/ip 協議棧的調整可能會引起某些功能的受限, 管理員應該在進行充分了解和測試的前提下進行此項 工作。
總結
- 上一篇: 钉钉直播最全教程电脑钉钉如何直播
- 下一篇: 朱砂莲的功效与作用 朱砂莲的副作用_中药