SYN Flood攻擊早在1996年就被發現,但至今仍然顯示出強大的生命力。很多操作系統,甚至防火墻、路由器都無法有效地防御這種攻擊,而且由于它可以方便地偽造源地址,追查起來非常困難。它的數據包特征通常是,源發送了大量的SYN包,并且缺少三次握手的最后一步握手ACK回復。 SYN Flood攻擊原理 例如,攻擊者首先偽造地址對服務器發起SYN請求(我可以建立連接嗎?),服務器就會回應一個ACK+SYN(可以+請確認)。而真實的IP會認為,我沒有發送請求,不作回應。服務器沒有收到回應,會重試3-5次并且等待一個SYN Time(一般30秒-2分鐘)后,丟棄這個連接。 如果攻擊者大量發送這種偽造源地址的SYN請求,服務器端將會消耗非常多的資源來處理這種半連接,保存遍歷會消耗非常多的CPU時間和內存,何況還要不斷對這個列表中的IP進行SYN+ACK的重試。最后的結果是服務器無暇理睬正常的連接請求—拒絕服務。在服務器上用netstat –an命令查看SYN_RECV狀態的話,就可以看到: 如果我們抓包來看:ACK回應情況 可以看到大量的SYN包沒有ACK回應。 SYN Flood攻擊防護 目前市面上有些防火墻具有SYN Proxy功能,這種方法一般是定每秒通過指定對象(目標地址和端口、僅目標地址或僅源地址)的SYN片段數的閥值,當來自相同源地址或發往相同目標地址的SYN片段數達到這些閥值之一時,防火墻就開始截取連接請求和代理回復SYN/ACK片段,并將不完全的連接請求存儲到連接隊列中直到連接完成或請求超時。當防火墻中代理連接的隊列被填滿時,防火墻拒絕來自相同安全區域(zone)中所有地址的新SYN片段,避免網絡主機遭受不完整的三次握手的攻擊。但是,這種方法在攻擊流量較大的時候,連接出現較大的延遲,網絡的負載較高,很多情況下反而成為整個網絡的瓶頸;? Random Drop:隨機丟包的方式雖然可以減輕服務器的負載,但是正常連接的成功率也會降低很多;? 特征匹配:IPS上會常用的手段,在攻擊發生的當時統計攻擊報文的特征,定義特征庫,例如過濾不帶TCP Options 的syn 包等; 早期攻擊工具(例如synkiller,xdos,hgod等)通常是發送64字節的TCP SYN報文,而主機操作系統在發起TCP連接請求時發送SYN 報文是大于64字節的。因此可以在關鍵節點上設置策略過濾64字節的TCP SYN報文,某些宣傳具有防護SYN Flood攻擊的產品就是這么做的。隨著工具的改進,發出的TCP SYN 報文完全模擬常見的通用操作系統,并且IP頭和TCP頭的字段完全隨機,這時就無法在設備上根據特定的規則來過濾攻擊報文。這時就需要根據經驗判斷IP 包頭里TTL值不合理的數據包并阻斷,但這種手工的方法成本高、效率低。 圖是某攻擊工具屬性設置。SYN Cookie攻擊設置。 SYN Cookie:就是給每一個請求連接的IP地址分配一個Cookie,如果短時間內連續受到某個IP的重復SYN報文,就認定是受到了攻擊,以后從這個IP地址來的包會被丟棄。但SYN Cookie依賴于對方使用真實的IP地址,如果攻擊者利用SOCK_RAW隨機改寫IP報文中的源地址,這個方法就沒效果了。 商業產品的防護算法 syn cookie/syn proxy類防護算法:這種算法對所有的syn包均主動回應,探測發起syn包的源IP地址是否真實存在;如果該IP地址真實存在,則該IP會回應防護設備的探測包,從而建立TCP連接;大多數的國內外抗拒絕服務產品采用此類算法。 safereset算法:此算法對所有的syn包均主動回應,探測包特意構造錯誤的字段,真實存在的IP地址會發送rst包給防護設備,然后發起第2次連接,從而建立TCP連接;部分國外產品采用了這樣的防護算法。? syn重傳算法:該算法利用了TCP/IP協議的重傳特性,來自某個源IP的第一個syn包到達時被直接丟棄并記錄狀態,在該源IP的第2個syn包到達時進行驗證,然后放行。 綜合防護算法:結合了以上算法的優點,并引入了IP信譽機制。當來自某個源IP的第一個syn包到達時,如果該IP的信譽值較高,則采用syncookie算法;而對于信譽值較低的源IP,則基于協議棧行為模式,如果syn包得到驗證,則對該連接進入syncookie校驗,一旦該IP的連接得到驗證則提高其信譽值。有些設備還采用了表結構來存放協議棧行為模式特征值,大大減少了存儲量。 以上就是SYN Flood攻擊原理與防護的全部內容,希望對大家的學習有所幫助。 |
免責聲明:本站部分文章和圖片均來自用戶投稿和網絡收集,旨在傳播知識,文章和圖片版權歸原作者及原出處所有,僅供學習與參考,請勿用于商業用途,如果損害了您的權利,請聯系我們及時修正或刪除。謝謝!
始終以前瞻性的眼光聚焦站長、創業、互聯網等領域,為您提供最新最全的互聯網資訊,幫助站長轉型升級,為互聯網創業者提供更加優質的創業信息和品牌營銷服務,與站長一起進步!讓互聯網創業者不再孤獨!
掃一掃,關注站長網微信