如何防御網站被ddos攻擊 首先要了解什么是流量攻擊
什么是DDOS流量攻擊?我們大多數(shù)人第一眼看到這個DDOS就覺得是英文的,有點難度,畢竟是國外的,其實簡單通俗來講,DDOS攻擊是利用帶寬的流量來攻擊服務器以及網站。
舉個例子,服務器目前帶寬是100M,突然從外邊來了200M的帶寬流量進來,那么服務器根本承載不了這個200M的帶寬流量,服務器的網絡瞬間就會癱瘓,導致服務器無法連接,甚至導致服務器里的網站都無法打開,因為200M的帶寬流量,已經占滿了整個服務器的100M帶寬。
再舉一個更貼切于生活的例子:一家飯店,正常情況下最多能承載100個人吃飯,因為同行競爭,對面飯店老板雇傭了200個社會小混混去飯店吃飯,導致飯店滿客,無法再接納正常的客人來飯店吃飯了。這就是DDOS攻擊,利用流量去占滿服務器的帶寬,導致沒有多余的帶寬來提供用戶的網站訪問。
DDOS流量攻擊分很多種,有UDP-flood流量攻擊,TCP-flood流量攻擊,ICMP-flood流量攻擊TCP/UPD/ICMP分片式流量攻擊,SYN-flood流量攻擊,ACK-flood流量攻擊,zeroWindow攻擊,SSL-flood攻擊,SSLkeyrenego攻擊,DNS反射性放大流量攻擊,NTS反射,NTP反射,SNMP反射,SSDP反射,Chargen反射。
43b152471c6a4de7857afea82ef41a0a.jpeg
UDP-flood是屬于UDP協(xié)議中的一種流量攻擊,攻擊特征是偽造大量的真實IP并發(fā)送小數(shù)量的數(shù)據(jù)包對要攻擊的服務器進行發(fā)送,只要服務器開啟UDP的端口就會受到流量攻擊。如何防御這種流量攻擊,對UDP的包數(shù)據(jù)大小進行設置,嚴格把控發(fā)送的數(shù)據(jù)包大小,超過一定值的數(shù)據(jù)包進行丟棄,再一個防御的方法是只有建立了TCP鏈接的IP,才能發(fā)送UDP包,否則直接屏蔽該IP。
ICMP是利用ICMP協(xié)議對服務器進行PING的攻擊,放大icmp的長度,以及數(shù)據(jù)包的字節(jié)對服務器進行攻擊。TCP-flood攻擊是一種使用tcp三次握手協(xié)議的一種方式來進行的攻擊,攻擊特種是偽造大量的真實IP去連接要攻擊的服務器,導致服務器無法承載更多的TCP連接而導致服務器癱瘓。
SYN-Flood是利用SYN協(xié)議,客戶端協(xié)議上發(fā)送SYN數(shù)據(jù),服務器接收到并響應SYN以及ACK反映,攻擊者利用這個方式去模擬大量的客戶連接發(fā)送數(shù)據(jù)包,導致服務器癱瘓。
ACK-Flood的攻擊跟上面這個SYN的攻擊差不多,都是同樣采用發(fā)送數(shù)據(jù)包到服務器端去,攻擊者利用ACK數(shù)據(jù)包進行攻擊,只要服務器接受ACK的包,那么就會造成ACK連接過多導致服務器資源耗盡,服務器沒有多余的資源來接收ACK的包,服務器就無法打開了。
SSL-Flood是利用客戶端不斷的與SSL通道握手,SSL的資源比普通的用戶訪問HTTP網站消耗的資源還要多,會多出幾十倍,配置低的服務器根本無法承載SSL的多次請求與握手,導致服務器的CPU占用到百分之90,沒有多余的CPU去處理用戶的訪問。SSL流量攻擊如何防御:禁用Renegotiating的安全機制來防御大量的SSL流量攻擊。
反射放大性流量攻擊
反射性的攻擊,不管是DNS反射還是NTP反射,都是使用的UDP協(xié)議攻擊,UDP協(xié)議里訪問用戶發(fā)送請求的數(shù)據(jù)包到服務器,服務器再反饋給用戶端,那么用戶端發(fā)送到服務器里的請求數(shù)據(jù)包里,用戶的IP可以進行偽造,可以偽造成服務器的IP,服務器IP發(fā)送數(shù)據(jù)包到服務器IP里,這樣就造成了反射攻擊。
DNS反射攻擊也是一樣的道理,利用DNS服務器的解析進行攻擊,偽造要攻擊的服務器IP,進行DNS查詢,并查詢到DNS服務器里,DNS服務器返回數(shù)據(jù)包到要攻擊的服務器IP中去,一來一去
形成了反射流量攻擊。