網(wǎng)站如何應(yīng)對緩解DDOS攻擊
DDOS(Distributed Denial of Service)攻擊就是分布式拒絕服務(wù),這種攻擊將多臺計算機聯(lián)合起來作為攻擊平臺,通過遠程連接利用惡意程序,對一個或多個目標(biāo)發(fā)起攻擊,其目的是消耗目標(biāo)服務(wù)器性能或網(wǎng)絡(luò)帶寬,從而造成服務(wù)器無法正常地提供服務(wù)。
網(wǎng)站常見攻擊方式
通常應(yīng)用層攻擊完全模擬用戶請求,類似于各種搜索引擎和爬蟲一樣,這些攻擊行為和正常的業(yè)務(wù)并沒有嚴格的邊界,難以辨別。
Web服務(wù)中一些資源消耗較大的事務(wù)和頁面。例如,Web應(yīng)用中的分頁和分表,如果控制頁面的參數(shù)過大,頻繁的翻頁將會占用較多的Web服務(wù)資源。尤其在高并發(fā)頻繁調(diào)用的情況下,類似這樣的事務(wù)就成了早期CC攻擊的目標(biāo)。
由于現(xiàn)在的攻擊大都是混合型的,因此模擬用戶行為的頻繁操作都可以被認為是CC攻擊。例如,各種刷票軟件對網(wǎng)站的訪問,從某種程度上來說就是CC攻擊。
CC攻擊瞄準的是Web應(yīng)用的后端業(yè)務(wù),除了導(dǎo)致拒絕服務(wù)外,還會直接影響Web應(yīng)用的功能和性能,包括Web響應(yīng)時間、數(shù)據(jù)庫服務(wù)、磁盤讀寫等。
DDOS攻擊的多種途徑
拒絕服務(wù)曾經(jīng)是一種非常簡單的攻擊方式。有些人開始在他們的電腦上運行PING命令,鎖定目標(biāo)地址,讓其高速運轉(zhuǎn),試圖向另一端發(fā)送洪水般的ICMP請求指令或者數(shù)據(jù)包。當(dāng)然,因為這邊發(fā)送速度的改變,攻擊者需要一個比對方站點更大的帶寬。首先,他們會搬到有大型主機的地方,類似有大學(xué)服務(wù)器或者教研所那樣的大型帶寬的地方,然后從這里發(fā)出攻擊。但現(xiàn)代的僵尸網(wǎng)絡(luò)在任何情況下幾乎都能使用,相對來說它的操作更簡單,使攻擊完全分布開來,顯得更加隱蔽。
事實上,因為惡意軟件的制造者,僵尸網(wǎng)絡(luò)的運營已經(jīng)成為了一條鮮明的產(chǎn)業(yè)鏈。實際他們已經(jīng)開始出租那些肉機,并且按小時收費。如果有人想要搞垮一個網(wǎng)站,只要給這些攻擊者付夠錢,然后就會有成千上萬的僵尸電腦去攻擊那個網(wǎng)站。一臺受感染的電腦或許無法把一個站點搞垮,但若是有10000臺以上的電腦同時發(fā)送請求,它們會將把未受保護的服務(wù)器"塞滿"。
如何判斷是否已遭受DDoS攻擊
出現(xiàn)以下情況時,您的業(yè)務(wù)可能已遭受DDoS攻擊:
網(wǎng)絡(luò)和設(shè)備正常的情況下,服務(wù)器突然出現(xiàn)連接斷開、訪問卡頓、用戶掉線等情況。
服務(wù)器CPU或內(nèi)存占用率出現(xiàn)明顯增長。
網(wǎng)絡(luò)出方向或入方向流量出現(xiàn)明顯增長。
您的業(yè)務(wù)網(wǎng)站或應(yīng)用程序突然出現(xiàn)大量的未知訪問。
登錄服務(wù)器失敗或者登錄過慢。
如何保護你的網(wǎng)絡(luò)
正如你所見,DDOS攻擊五花八門,防不勝防,當(dāng)你想建立一個防御系統(tǒng)對抗DDOS的時候,你需要掌握這些攻擊的變異形態(tài)。
最笨的防御方法,就是花大價錢買更大的帶寬。拒絕服務(wù)就像個游戲一樣。如果你使用10000個系統(tǒng)發(fā)送1Mbps的流量,那就意味著你輸送給你的服務(wù)器每秒鐘10Gb的數(shù)據(jù)流量。這就會造成擁堵。這種情況下,同樣的規(guī)則適用于正常的冗余。這時,你就需要更多的服務(wù)器,遍布各地的數(shù)據(jù)中心,和更好的負載均衡服務(wù)了。將流量分散到多個服務(wù)器上,幫助你進行流量均衡,更大的帶寬能夠幫你應(yīng)對各種大流量的問題。但現(xiàn)代的DDOS攻擊越來越瘋狂,需要的帶寬越來越大,你的財政狀況根本不允許你投入更多的資金。另外,絕大多數(shù)的時候,你的網(wǎng)站并不是主要攻擊目標(biāo),很多管理員都忘了這一點。
網(wǎng)絡(luò)中最關(guān)鍵的一塊就是DNS服務(wù)器。將DNS解析器處于開放狀態(tài)這是絕對不可取的,你應(yīng)當(dāng)把它鎖定,從而減少一部分攻擊風(fēng)險。但這樣做了以后,我們的服務(wù)器就安全了嗎?答案當(dāng)然是否定的,即使你的網(wǎng)站,沒有一個可以鏈接到你的DNS服務(wù)器,幫你解析域名,這同樣是非常糟糕的事情。大多數(shù)完成注冊的域名需要兩個DNS服務(wù)器,但這遠遠不夠。你要確保你的DNS服務(wù)器以及你的網(wǎng)站和其他資源都處于負載均衡的保護狀態(tài)下。你也可以使用一些公司提供的冗余DNS。比如,有很多人使用內(nèi)容分發(fā)網(wǎng)絡(luò)(分布式的狀態(tài))給客戶發(fā)送文件,這是一種很好的抵御DDOS攻擊的方法。若你需要,也有很多公司提供了這種增強DNS的保護措施。
若是你自己管理你的網(wǎng)絡(luò)和數(shù)據(jù),那么就需要著重保護你的網(wǎng)絡(luò)層,要進行很多配置。首先確保你所有的路由器都能夠屏蔽垃圾數(shù)據(jù)包,剔除掉一些不用的協(xié)議,比如ICMP這種的。然后設(shè)置好防火墻。很顯然,你的網(wǎng)站永遠不會讓隨機DNS服務(wù)器進行訪問,所以沒有必要允許UDP 53端口的數(shù)據(jù)包通過你的服務(wù)器。此外,你可以讓你的供應(yīng)商幫你進行一些邊界網(wǎng)絡(luò)的設(shè)置,阻止一些沒用的流量,保證你能夠得到一個最大的最通暢的帶寬。很多網(wǎng)絡(luò)供應(yīng)商都給企業(yè)提供這種服務(wù),你可以與其網(wǎng)絡(luò)運營中心聯(lián)系,讓他們幫你優(yōu)化流量,幫你監(jiān)測一下你是否到了攻擊。
最后,你還得想想如何在這些攻擊到達你網(wǎng)站前就將它們攔截住。例如,現(xiàn)代網(wǎng)站應(yīng)用了許多動態(tài)資源。在受到攻擊的時候其實帶寬是比較容易掌控的,但最終往往受到損失的是數(shù)據(jù)庫或是你運行的腳本程序。你可以考慮使用緩存服務(wù)器提供盡可能多的靜態(tài)內(nèi)容,還要快速用靜態(tài)資源取代動態(tài)資源并確保檢測系統(tǒng)正常運行。
最糟糕的一種情況就是你的網(wǎng)絡(luò)或站點完全癱瘓了,你應(yīng)該在攻擊剛剛開始的時候就做好預(yù)備方案。因為攻擊一旦開始,想要從源頭阻止DDOS是非常困難的。最后,你應(yīng)該好好琢磨琢磨如何讓你的基礎(chǔ)建設(shè)更加合理與安全,并且要著重注意你的網(wǎng)絡(luò)設(shè)置。這些都是非常重要的。
DDoS攻擊是業(yè)內(nèi)公認的行業(yè)公敵,DDoS攻擊不僅影響被攻擊者,同時也會對服務(wù)商網(wǎng)絡(luò)的穩(wěn)定性造成影響,從而對處于同一網(wǎng)絡(luò)下的其他用戶業(yè)務(wù)也會造成損失。
相關(guān)熱詞搜索: 網(wǎng)站,如何,應(yīng)對,緩解,DDOS攻擊