百科解釋
TCP SYN Flood是一種常見,而且有效的遠(yuǎn)端(遠(yuǎn)程)拒絕服務(wù)(Denial of Service)攻擊方式,它透過一定的操作破壞TCP三次握手建立正常連接,占用并耗費系統(tǒng)資源,使得提供TCP服務(wù)的主機系統(tǒng)無法正常工作。由于TCP SYN Flood是透過網(wǎng)路底層對服務(wù)器Server進行攻擊的,它可以在任意改變自己的網(wǎng)路IP地址的同時,不被網(wǎng)路上的其他設(shè)備所識別,這樣就給防范網(wǎng)路犯罪部門追查犯罪來源造成很大的困難。在國內(nèi)內(nèi)外的網(wǎng)站中,這種攻擊屢見不鮮。在一個拍賣網(wǎng)站上,曾經(jīng)有犯罪分子利用這種手段,在低價位時阻止其他用戶繼續(xù)對商品拍賣,干擾拍賣過程的正常運作。 如何判斷? 一般情況下,可以一些簡單步驟進行檢查,來判斷系統(tǒng)是否正在遭受TCP SYN Flood攻擊。 1、 服務(wù)端無法提供正常的TCP服務(wù)。連接請求被拒絕或超時。 2、透過 netstat -an 命令檢查系統(tǒng),發(fā)現(xiàn)有大量的SYN_RECV連接狀態(tài)。 檢查服務(wù)器鏈接,SYN_RECV狀態(tài)最高時有200多個,訪問服務(wù)器網(wǎng)頁特別慢,甚至超時,所以基本判定是SYN_RECV攻擊。 解決方法: 這個攻擊的解決方法如下: 1,增加未完成連接隊列(q0)的最大長度。 echo 1280>/proc/sys/net/ipv4/tcp_max_syn_backlog 2, 啟動SYN_cookie。 echo 1>/proc/sys/net/ipv4/tcp_syncookies 這些是被動的方法,治標(biāo)不治本。而且加大了服務(wù)器的負(fù)擔(dān),但是可以避免被拒絕攻擊(只是減緩) 治本的方法是在防火墻上做手腳。但是現(xiàn)在能在一定程度上防住syn flood攻擊的防火墻都不便宜。并且把這個命令加入"/etc/rc.d/rc.local"文件中 如果對 /proc/sys/net/ipv4 下的配置文件進行解釋,可以參閱 LinuxAid技術(shù)站的文章。查看本文全文也可以參閱。 關(guān)于 syn cookies, 請參閱 <> http://cr.yp.to/syncookies.html 也許 使用mod_limitipconn.c來限制apache的并發(fā)數(shù) 也會有一定的幫助。 2. iptables的設(shè)置,引用自CU 防止同步包洪水(Sync Flood) # iptables -A FORWARD -p tcp --syn -m limit --limit 1/s -j ACCEPT 也有人寫作 #iptables -A INPUT -p tcp --syn -m limit --limit 1/s -j ACCEPT --limit 1/s 限制syn并發(fā)數(shù)每秒1次,可以根據(jù)自己的需要修改 防止各種端口掃描 # iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT Ping洪水攻擊(Ping of Death) # iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
移動通信網(wǎng) | 通信人才網(wǎng) | 更新日志 | 團隊博客 | 免責(zé)聲明 | 關(guān)于詞典 | 幫助