29.極具破壞力的DDoS:淺析其攻擊及防御

一、DDoS的概念

1.什么是“DDoS”?

DDoS:Distributed Denial of Service(分布式拒絕服務)攻擊指借助于客戶/服務器技術,將多個計算機聯合起來作為攻擊平臺,對一個或多個目標發動DDoS攻擊,從而成倍地提高拒絕服務攻擊的威力。通常,攻擊者使用一個偷竊賬號將DDoS主控程序安裝在一個計算機上,控制大批量的肉雞發動攻擊。

2.什么是“拒絕服務”攻擊?

可以簡單理解為:讓一個公開網站無法訪問。要達到這個目的的方法也很簡單:不斷地提出服務請求,讓合法用戶的請求無法及時處理。

3.什么是“分布式”?

隨著網絡發展,很多大型企業具備較強的服務提供能力,所以應付單個請求的攻擊已經不是問題。于是攻擊者就組織很多同伙,同時提出服務請求,直到服務無法訪問,這就叫“分布式”。但在現實中,一般的攻擊者無法組織各地伙伴協同“作戰”,所以會使用“僵尸網絡”來控制N多計算機進行攻擊。

4.什么是“僵尸網絡”?

僵尸網絡是數量龐大的僵尸程序(Bot)通過一定方式組合,出于惡意目的,采用一對多的方式進行控制的大型網絡,也可以說是一種復合性攻擊方式。因為僵尸主機的數量很大而且分布廣泛,所以危害程度和防御難度都很大。

二、DDoS的攻擊方式

分布式拒絕服務攻擊的精髓是:利用分布式的客戶端,向目標發起大量看上去合法的請求,消耗或者占用大量資源,從而達到拒絕服務的目的。其主要攻擊方法有4種:

1.攻擊帶寬

跟大城市的交通堵塞情況一樣,大家都該清楚,當網絡數據包的數量達到或者超過上限的時候,會出現網絡擁堵、響應緩慢的情況。DDoS就是利用這個原理,發送大量網絡數據包,占滿被攻擊目標的全部帶寬,從而造成正常請求失效,達到拒絕服務的目的。

攻擊者可以使用ICMP洪水攻擊(即發送大量ICMP相關報文)、或者UDP洪水攻擊(即發送用戶數據報協議的大包或小包),使用偽造源IP地址方式進行隱匿,并對網絡造成擁堵,使服務器響應速度變慢等。

但是這種直接方式通常依靠受控主機本身的網絡性能,所以效果不是很好,還容易被查到攻擊源頭。于是反射攻擊出現,攻擊者使用特殊的數據包,也就是IP地址指向作為反射器的服務器,源IP地址被偽造成攻擊目標的IP,反射器接收到數據包的時候就會將響應數據發送給被攻擊目標,耗盡目標網絡的帶寬資源。

2.攻擊系統

創建TCP連接需要客戶端與服務器進行三次交互,也就是常說的“三次握手”。這個信息通常被保存在連接表結構中,但是表的大小有限,所以當超過了存儲量,服務器就無法創建新的TCP連接了。

攻擊者利用這一點,用受控主機建立大量惡意的TCP連接,占滿被攻擊目標的連接表,使其無法接受新的TCP連接請求。如果攻擊者發送了大量的TCP SYN報文,使服務器在短時間內產生大量的半開連接,連接表也會被很快占滿,導致無法建立新的TCP連接,這種SYN洪水攻擊的方式是攻擊者比較常用的。

3.攻擊應用

由于DNS和Web服務的廣泛性和重要性,這兩種服務就成為了消耗應用資源的分布式拒絕服務攻擊的主要目標。

比如向DNS服務器發送大量查詢請求,從而達到拒絕服務的效果,如果每一個DNS解析請求所查詢的域名都是不同的,那么就能有效避開服務器緩存的解析記錄,達到更好的資源消耗效果。當DNS服務的可用性受到威脅,互聯網上大量的設備都會受到影響而無法正常使用。

近些年,Web技術發展非常迅速,如果攻擊者利用大量的受控主機不斷地向Web服務器惡意發送大量HTTP請求,要求Web服務器處理,就會完全占用服務器資源,讓正常用戶的Web訪問請求得不到處理,導致拒絕服務。一旦Web服務受到這種攻擊,就會對其承載的業務造成致命的影響。

4.混合攻擊

在實際的生活中,攻擊者并不關心自己使用的哪種攻擊方法管用,只要能夠達到目的,一般就會發動其所有的攻擊手段,盡其所能地展開攻勢。對于被攻擊目標來說,需要面對不同的協議、不同資源的分布式拒絕服務攻擊,分析、響應和處理的成本就會大大增加。

隨著僵尸網絡向著小型化的趨勢發展,為降低攻擊成本,有效隱藏攻擊源,躲避安全設備,保證攻擊效果,針對應用層的小流量慢速攻擊已逐步發展壯大起來。因此,從另一個角度來說,DDoS攻擊目前主要是兩個方面:UDP及反射式大流量高速攻擊、多協議小流量及慢速攻擊。

三、DDoS的防御

DDoS攻擊只是手段,最終目的是利益。未來網絡戰爭將會出現更加廣泛、頻繁、精準的攻擊,當這些來臨的時候,我們應該如何應對?

1.設置高性能設備

要使網絡設備不成為瓶頸,選擇路由器、交換機、硬件防火墻等設備的時候就要盡量選用知名度高、口碑好的產品。若和網絡提供商有協議,當大量攻擊發生的時候請他們在網絡接點處做一下流量限制來對抗某些種類的DDoS攻擊是非常有效的。

2.提高網絡帶寬

網絡帶寬直接決定了抗受攻擊的能力,假若僅僅有10M帶寬的話,無論采取什么措施都很難對抗現在的SYN Flood攻擊。所以,最好選擇100M或者更高的帶寬。

3.不要忘記升級

在有網絡帶寬保證的前提下,請盡量提升硬件配置,要有效對抗每秒10萬個SYN攻擊包;而且最好可以進行優化資源使用,提高web server 的負載能力。

4.異常流量的清洗

通過DDoS硬件防火墻對異常流量的清洗過濾,通過數據包的規則過濾、數據流指紋檢測過濾及數據包內容定制過濾等頂尖技術能準確判斷外來訪問流量是否正常,從而進一步將異常流量禁止過濾。

5.考慮把網站做成靜態頁面

把網站盡可能做成靜態頁面,不僅能大大提高抗攻擊能力,還能給黑客入侵帶來不少麻煩。最好在需要調用數據庫的腳本中,拒絕使用代理的訪問,經驗表明,使用代理訪問你網站,其80%屬于惡意行為。

6.分布式集群防御

這是目前網絡安全界防御大規模DDoS攻擊的最有效辦法。分布式集群防御的特點是在每個節點服務器配置多個IP地址,并且每個節點能承受不低于10G的DDoS攻擊。如果一個節點受攻擊無法提供服務,系統將會根據優先級設置自動切換另一個節點,并將攻擊者的數據包全部返回發送點,使攻擊源成為癱瘓狀態,從更深層次的安全防護角度去影響企業的安全執行決策。

就DDoS防御方面來說,目前主要是兩個方面,大流量攻擊可以交給運營商及云端清洗,小流量攻擊可以在企業本地進行設備防護,這個分界點根據行業及業務特性的不同會有所差異,大概的量級應該在百兆BPS左右。相關的緩解與治理,有興趣的童鞋可以看看鮑旭華的《破壞之王》,會有不小的啟示。

轉載于:https://www.cnblogs.com/bmjoker/p/9487847.html

? ? 有服務器需求請加QQ1911624872咨詢

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容