查看服務(wù)器是否被DDOS攻擊的方法

2022-10-06    分類: 網(wǎng)站建設(shè)

常見流量攻擊

服務(wù)器的攻擊分為四類,cc攻擊、syn攻擊、udp攻擊、tcp洪水攻擊。那么當(dāng)被攻擊時會出現(xiàn)哪些癥狀呢,我們是如何來判斷服務(wù)器是否被攻擊,屬于哪種攻擊類型?

第一種類型:CC類攻擊
CC攻擊是DDoS(分布式拒絕服務(wù))的一種,這種一種比DDOS流氓行為更具有技術(shù)含量的一種攻擊方式,CC攻擊完全模擬正常訪問行為,沒有虛假IP,也沒有大的流量異常,但一樣會造成您的服務(wù)器無法正常連接,一條ADSL的普通用戶發(fā)起的CC攻擊就可以干掉一臺高性能的服務(wù)器。

服務(wù)器唄CC攻擊時,會出現(xiàn)80端口關(guān)閉的現(xiàn)象,即出現(xiàn)丟包和高延遲的現(xiàn)象, 因為80端口被大量的垃圾數(shù)據(jù)堵塞導(dǎo)致正常的連接被中止??梢酝ㄟ^在CMD命令窗口輸入命令 netstat -an 來查看,如果看到類似如下大量顯示雷同的連接記錄基本就可以被CC攻擊了:
……
TCP 192.168.1.3:80 192.168.1.6:2205 SYN_RECEIVED 4

A.網(wǎng)站出現(xiàn)service unavailable提示

B.CPU占用率很高C.網(wǎng)絡(luò)連接狀態(tài):netstat –na,若觀察到大量的ESTABLISHED的連接狀態(tài)

單個IP高達幾十條甚至上百條

D.外部無法打開網(wǎng)站,軟重啟后短期內(nèi)恢復(fù)正常,幾分鐘后又無法訪問。

CC類攻擊檢測

第一條命令:tcpdump -s0 -A -n -i any | grep -o -E '(GET|POST|HEAD) .*'

正常的輸出結(jié)果類似于這樣POST /ajax/validator.php HTTP/1.1

第二種類型:SYN類攻擊

A.CPU占用很高B.網(wǎng)絡(luò)連接狀態(tài):netstat –na,若觀察到

大量的SYN_RECEIVED的連接狀態(tài) SYN類攻擊檢測netstat -na 顯示所有活動的網(wǎng)絡(luò)連接netstat -an | grep :80 | sort 顯示所有80端口的網(wǎng)絡(luò)連接并排序。80端口為http端口netstat -n -p | grep SYN_REC | wc -l 查看當(dāng)前有多少活動的SYNC_REC連接,最好值小于5.netstat -n -p | grep SYN_REC | sort -u 列出所有連接過的IP地址netstat -n -p | grep SYN_REC | awk ‘{print $5}’ | awk -F: ‘{print $1}’ 列出所有發(fā)送SYN_REC連接節(jié)點的IP地址netstat -ntu | awk ‘{print $5}’ | cut -d: -f1 | sort | uniq -c | sort -n使用netstat命令計算每個主機連接到本機的連接數(shù)netstat -anp | grep ‘tcp|udp’ | awk ‘{print $5}’ | cut -d: -f1 | sort | uniq -c | sort -n 列出所有連接到本機的udp或者tcp連接的數(shù)量netstat -ntu | grep ESTAB | awk ‘{print $5}’ | cut -d: -f1 | sort | uniq -c | sort -nr 檢查ESTABLISHED 連接并且列出每個IP地址的連接數(shù)量Netstat -plan|grep :80| awk {‘print $5’} | cut -d: -f1 | sort | uniq -c | sort -nk 1 列出所有連接到本機80

查看服務(wù)器是否被DDOS攻擊的方法端口的IP地址和其他連接數(shù)  

1、利用netstat 工具來檢測查看SYN連接netstat -n -p -t |wc -

查看服務(wù)器是否被DDOS攻擊的方法

l

防護SYN類攻擊措施

防范也主要從兩方面入手,一是sysctl的自身的關(guān)于syn方面的配置,二是防火墻策略上。sysctl -w net.ipv4.tcp_syncookies=1 # tcp syncookie,默認(rèn)關(guān)閉sysctl -w net.ipv4.tcp_max_syn_backlog=1280 # syn隊列,默認(rèn)1024,》 1280可能工作不穩(wěn)定,需要修改內(nèi)核源碼參數(shù)sysctl -w net.ipv4.tcp_synack_retries=2 # syn-ack握手狀態(tài)重試次數(shù),默認(rèn)5,遭受syn-flood攻擊時改為1或2sysctl -w net.ipv4.tcp_syn_retries=2 # 外向syn握手重試次數(shù),默認(rèn)

4

通過下列命令查看。[root@localhost nginx]# sysctl -a|grep synnet.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_recv = 60net.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_sent = 120net.ipv4.tcp_max_syn_backlog = 1024net.ipv4.tcp_syncookies = 1net.ipv4.tcp_synack_retries = 5net.ipv4.tcp_syn_retries = 5fs.quota.syncs =

查看服務(wù)器是否被DDOS攻擊的方法25

如未受到攻擊,上面的參數(shù)不建議修改。據(jù)說有增加主機的不穩(wěn)定性的風(fēng)險。

第三種類型:UDP類攻擊

A.觀察網(wǎng)卡狀況 每秒接受大量的數(shù)據(jù)包

B.網(wǎng)絡(luò)狀態(tài):netstat –na TCP信息正常

UDP類攻擊檢測

檢測udp端口檢測端口是否打開:nc -zuv ip 端口服務(wù)器監(jiān)聽端口:nc -l -u ip 端口(可以發(fā)送和接受信息)客戶端檢測端口:nc -u ip 端口(可以發(fā)送和接受信息)查看監(jiān)聽的tup端口:ss -ant查看監(jiān)聽的udp端口:ss -anu查看所有協(xié)議端口:ss -

查看服務(wù)器是否被DDOS攻擊的方法ano查看服務(wù)器是否被DDOS攻擊的方法

第四種類型:TCP洪水攻擊

A.CPU占用很高B.netstat –na,若觀察到大量的ESTABLISHED的連接狀態(tài) 單個IP高達幾十條甚至上百條,屬于正常。

查看TCP端口連接數(shù)查看網(wǎng)絡(luò)連接總數(shù)# netstat -an |wc -l查看某個特定ip的連接數(shù)# netstat -an |grep 8.8.8.8 |wc -l查看連接數(shù)等待time_wait狀態(tài)連接數(shù)# netstat -an |grep TIME_WAIT|wc -l查看建立穩(wěn)定連接數(shù)量# netstat -an |grep ESTABLISHED |wc -l查看不同狀態(tài)的連接數(shù)# netstat -an | awk '/^tcp/ {++y[$NF]} END {for(w in y) print w, y[w]}'查看每個ip跟服務(wù)器建立的連接數(shù)# netstat -nat|awk '{print$5}'|awk -F : '{print$1}'|sort|uniq -c|sort -rn(PS:正則解析:顯示第5列,-F : 以:分割,顯示列,sort 排序,uniq -c統(tǒng)計排序過程中的重復(fù)行,sort -rn 按純數(shù)字進行逆序排序)查看每個ip建立的ESTABLISHED/TIME_OUT狀態(tài)的連接數(shù)# netstat -nat|grep ESTABLISHED|awk '{print$5}'|awk -F : '{print$1}'|sort|uniq -c|sort -

rn

以下是我自己用VPS測試的結(jié)果:root:~# netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n1 114.226.9.xx1 174.129.237.xx1 58.60.118.xx1 Address1 servers)2 118.26.131.xx3 123.125.1.

查看服務(wù)器是否被DDOS攻擊的方法x

每個IP幾個、十幾個或幾十個連接數(shù)都還算比較正常,如果像上面成百上千肯定就不正常了。

上述所講到的判斷分析,讓我們能準(zhǔn)確的判斷存在的問題是什么,怎么第一時間來解決問題。讓我們能更好的維護我們的網(wǎng)站安全。 TCP洪水攻擊檢測# tail -f /var/log/messagesApr 18 11:21:56 web5 kernel: possible SYN flooding on port 80. Sending cookies

.

檢查連接數(shù)增多,并且SYN_RECV 連接特別多:檢查連接數(shù)增多,并且SYN_RECV 連接特別多:# netstat -n awk '/^tcp/ { S[$NF]} END {for(a in S) print a, S[a]}'TIME_WAIT 16855CLOSE_WAIT 21SYN_SENT 99FIN_WAIT1

229

根據(jù)經(jīng)驗,正常時檢查連接數(shù)如下:# netstat -n awk

查看服務(wù)器是否被DDOS攻擊的方法'/^tcp/ { S[$NF]} END {for(a in S) print a, S[a]}'

根據(jù)netstat查看到的對方IP特征:# netstat -

查看服務(wù)器是否被DDOS攻擊的方法na grep SYN_RECV more

以下配置,第一段參數(shù)是最重要的,第二段參數(shù)是輔助的,其余參數(shù)是其他作用的:# vi /etc/sysctl.confnet.ipv4.tcp_synack_retries=0#半連接隊列長度net.ipv4.tcp_max_syn_backlog=200000#系統(tǒng)允許的文件句柄的大數(shù)目,因為連接需要占用文件句柄fs.file-max=819200#用來應(yīng)對突發(fā)的大并發(fā)connect 請求net.core.somaxconn=65536#大的TCP 數(shù)據(jù)接收緩沖(字節(jié))net.core.rmem_max=1024123000#大的TCP 數(shù)據(jù)發(fā)送緩沖(字節(jié))net.core.wmem_max=16777216#網(wǎng)絡(luò)設(shè)備接收數(shù)據(jù)包的速率比內(nèi)核處理這些包的速率快時,允許送到隊列的數(shù)據(jù)包的大數(shù)目net.core.netdev_max_backlog=165536#本機主動連接其他機器時的端口分配范圍net.ipv4.ip_local_port_range=

1000065535

使配置生效:# sysctl -p注意,以下參數(shù)面對外網(wǎng)時,不要打開。因為副作用很明顯,具體原因請google,如果已打開請顯式改為0,然后執(zhí)行sysctl -p關(guān)閉。因為經(jīng)過試驗,大量TIME_WAIT狀態(tài)的連接對系統(tǒng)沒太大影響:#當(dāng)出現(xiàn) 半連接 隊列溢出時向?qū)Ψ桨l(fā)送syncookies,調(diào)大 半連接 隊列后沒必要net.ipv4.tcp_syncookies=0#TIME_WAIT狀態(tài)的連接重用功能net.ipv4.tcp_tw_reuse=0#時間戳選項,與前面net.ipv4.tcp_tw_reuse參數(shù)配合net.ipv4.tcp_timestamps=0#TIME_WAIT狀態(tài)的連接回收功能net.ipv4.tcp_tw_recycle=0

防御TCP洪水攻擊方法通過調(diào)整tcp參數(shù)來防范DDOS攻擊

sysctl -a | grep syn 看到:SYN相關(guān)的配置 net.ipv4.tcp_max_syn_backlog = 1024

net.ipv4.tcp_syncookies = 0

net.ipv4.tcp_synack_retries = 5

net.ipv4.tcp_syn_retries = 5tcp_max_syn_backlog是SYN隊列的長度,tcp_syncookies是一個開關(guān),是否打開SYN Cookie 功能,該功能可以防止部分SYN攻擊。tcp_synack_retries和tcp_syn_retries定義SYN 的重試次數(shù)。加大SYN隊列長度可以容納更多等待連接的網(wǎng)絡(luò)連接數(shù),打開SYN Cookie功能可以阻止部分 SYN攻擊,降低重試次數(shù)也有一定效果。

調(diào)整上述設(shè)置的方法是:

增加SYN隊列長度到2048:sysctl -w net.ipv4.tcp_max_syn_backlog=

2048

打開SYN COOKIE功能:sysctl -w net.ipv4.tcp_syncookies=

1

降低重試次數(shù):sysctl -w net.ipv4.tcp_synack_retries=3sysctl -w net.ipv4.tcp_syn_retries=

3

為了系統(tǒng)重啟動時保持上述配置,可將上述命令加入到/etc/rc.d/rc.local文件中。

防止同步包洪水(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

擴展 問題1:解決time_wait連接數(shù)大量問題

查詢到time_wait連接數(shù)過多情況下,調(diào)整內(nèi)核參數(shù):/etc/sysctl.conf# vim /etc/sysctl.conf添加以下配置文件:net.ipv4.tcp_syncookies = 1net.ipv4.tcp_tw_reuse = 1net.ipv4.tcp_tw_recycle = 1net.ipv4.tcp_fin_timeout = 300讓配置生效# /sbin/sysctl -p參數(shù)詳解:1.net.ipv4.tcp_syncookies = 1 表示開啟 syn cookies 。當(dāng)出現(xiàn) syn 等待隊列溢出時,啟用 cookies 來處理,可防范少量 syn ***,默認(rèn)為 0 ,表示關(guān)閉; 2.net.ipv4.tcp_tw_reuse = 1 表示開啟重用。允許將 time-wait sockets 重新用于新的 tcp 連接,默認(rèn)為 0 ,表示關(guān)閉;3.net.ipv4.tcp_tw_recycle = 1 表示開啟 tcp 連接中 time-wait sockets 的快速回收,默認(rèn)為 0 ,表示關(guān)閉。4.net.ipv4.

tcp_fin_timeout 修改系靳默認(rèn)的 timeout 時間

如果以上配置調(diào)優(yōu)后性能還不理想,可繼續(xù)修改一下配置:# vim /etc/sysctl.confnet.ipv4.tcp_keepalive_time = 1200 #表示當(dāng)keepalive起用的時候,TCP發(fā)送keepalive消息的頻度。缺省是2小時,改為20分鐘。net.ipv4.ip_local_port_range = 1024 65000 #表示用于向外連接的端口范圍。缺省情況下很?。?2768到61000,改為1024到65000。net.ipv4.tcp_max_syn_backlog = 8192 #表示SYN隊列的長度,默認(rèn)為1024,加大隊列長度為8192,可以容納更多等待連接的網(wǎng)絡(luò)連接數(shù)。net.ipv4.tcp_max_tw_buckets = 5000 #表示系統(tǒng)同時保持TIME_WAIT套接字的大數(shù)量,如果超過這個數(shù)字,TIME_WAIT套接字將立刻被清除并打印警告信息。默認(rèn)為180000,改為5000

。對于Apache、Nginx等服務(wù)器,上幾行的參數(shù)可以很好地減少TIME_WAIT套接字?jǐn)?shù)量,但是對于 Squid,效果卻不大。此項參數(shù)可以控制TIME_WAIT套接字的大數(shù)量,避免Squid服務(wù)器被大量的TIME_WAIT套接字拖死。 問題2:ESTABLISHED連接數(shù)過大問題

怎么解決請求結(jié)束后依然存在大量ESTABLISHED沒有被釋放

初步推斷是tomcat服務(wù)器回收session時出了問題,這個一般都跟服務(wù)器的Timeout設(shè)置有聯(lián)系。

查看tomcat的配置文件 server.xmlCopy<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" />****

*

檢查配置得出20000毫秒的時候acceptCount=”100” ,明顯不合理,大連接數(shù)也太小了吧。

所以進一步優(yōu)化:CopyconnectionTimeout="20000" 改為 connectionTimeout="100"acceptCount="100"改為acceptCount="5000"

DDoS攻擊防御方法

**1. 過濾不必要的服務(wù)和端口:**可以使用Inexpress、Express、Forwarding等工具來過濾不必要的服務(wù)和端口,即在路由器上過濾假IP。比如Cisco公司的CEF(Cisco Express Forwarding)可以針對封包Source IP和Routing Table做比較,并加以過濾。只開放服務(wù)端口成為目前很多服務(wù)器的流行做法,例如WWW服務(wù)器那么只開放80而將其他所有端口關(guān)閉或在防火墻上做阻止策略。 **2. 異常流量的清洗過濾:**通過DDOS硬件防火墻對異常流量的清洗過濾,通過數(shù)據(jù)包的規(guī)則過濾、數(shù)據(jù)流指紋檢測過濾、及數(shù)據(jù)包內(nèi)容定制過濾等頂尖技術(shù)能準(zhǔn)確判斷外來訪問流量是否正常,進一步將異常流量禁止過濾。單臺負(fù)載每秒可防御800-927萬個syn攻擊包。

**3. 分布式集群防御:**這是目前網(wǎng)絡(luò)安全界防御大規(guī)模DDOS攻擊的最有效辦法。分布式集群防御的特點是在每個節(jié)點服務(wù)器配置多個IP地址(負(fù)載均衡),并且每個節(jié)點能承受不低于10G的DDOS攻擊,如一個節(jié)點受攻擊無法提供服務(wù),系統(tǒng)將會根據(jù)優(yōu)先級設(shè)置自動切換另一個節(jié)點,并將攻擊者的數(shù)據(jù)包全部返回發(fā)送點,使攻擊源成為癱瘓狀態(tài),從更為深度的安全防護角度去影響企業(yè)的安全執(zhí)行決策。

**4. 高防智能DNS解析:**高智能DNS解析系統(tǒng)與DDOS防御系統(tǒng)的好結(jié)合,為企業(yè)提供對抗新興安全威脅的超級檢測功能。它顛覆了傳統(tǒng)一個域名對應(yīng)一個鏡像的做法,智能根據(jù)用戶的上網(wǎng)路線將DNS解析請求解析到用戶所屬網(wǎng)絡(luò)的服務(wù)器。同時智能DNS解析系統(tǒng)還有宕機檢測功能,隨時可將癱瘓的服務(wù)器IP智能更換成正常服務(wù)器IP,為企業(yè)的網(wǎng)絡(luò)保持一個永不宕機的服務(wù)狀態(tài)。

參考鏈接 :

https://www.cnblogs.com/mydomain/archive/2013/05/14/3079002.html

https://www.cnblogs.com/hello-sky/p/11598954.html

五種簡單CC攻擊解決方案 http://www.anxinidc.com/faq/anquan/126.html

linux檢測及防止DDOS攻擊的技巧(2) http://www.xitongzhijia.net/xtjc/20150608/50328_2.html

TCP洪水攻擊(DDOS)診斷與防護http://blog.sina.com.cn/s/blog_6f82cb740101j7z0.html

服務(wù)器被ddos攻擊?分析如何防止DDOS攻擊? :https://blog.csdn.net/weixin_34407348/article/details/86013716?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-10.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-10.nonecase

DDos攻擊的常見方法及防御方法 https://www.cnblogs.com/larry-luo/p/10208074.html

原文地址:https://blog.csdn.net/qq_40907977/article/details/106897732

新聞標(biāo)題:查看服務(wù)器是否被DDOS攻擊的方法
轉(zhuǎn)載來源:http://www.muchs.cn/news23/202673.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、網(wǎng)站營銷、網(wǎng)頁設(shè)計公司網(wǎng)站制作、手機網(wǎng)站建設(shè)商城網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)