1. 程式人生 > >DDOS***詳解

DDOS***詳解

Ddos的***方式有很多種,最基本的Dos***就是利用合理的服務請求來佔用過多的服務資源,從而使合法使用者無法得到服務的響應。

在資訊保安的三要素——“保密性”、“完整性”和“可用性”中,DoS(Denial of Service),即拒絕服務***,針對的目標正是“可用性”。該***方式利用目標系統網路服務功能缺陷或者直接消耗其系統資源,使得該目標系統無法提供正常的服務。

DDos***

Ddos的***方式有很多種,最基本的Dos***就是利用合理的服務請求來佔用過多的服務資源,從而使合法使用者無法得到服務的響應。單一的DoS***一般是採用一對一方式的,當***目標CPU速度低、記憶體小或者網路頻寬小等等各項指標不高的效能,它的效果是明顯的。隨著計算機與網路技術的發展,計算機的處理能力迅速增長,記憶體大大增加,同時也出現了千兆級別的網路,這使得DoS***的困難程度加大了-目標對惡意***包的"消化能力"加強了不少。這時候分散式的拒絕服務***手段(DDoS)就應運而生了。DDoS就是利用更多的傀儡機來發起進攻,以比從前更大的規模來進攻受害者。

一、***方式

  1. Synflood
    該***以多個隨機的源主機地址向目的主機發送SYN包,而在收到目的主機的SYN ACK後並不迴應,這樣,目的主機就為這些源主機建立了大量的連線佇列,而且由於沒有收到ACK一直維護著這些佇列,造成了資源的大量消耗,最終導致拒絕服務。

  2. Smurf
    該***向一個子網的廣播地址發一個帶有特定請求(如ICMP迴應請求)的包,並且將源地址偽裝成想要***的主機地址。子網上所有主機都回應廣播包請求而向被***主機發包,使該主機受到***。

  3. Land-based
    ***者將一個包的源地址和目的地址都設定為目標主機的地址,然後將該包通過IP欺騙的方式傳送給被***主機,這種包可以造成被***主機因試圖與自己建立連線而陷入死迴圈,從而很大程度地降低了系統性能。

  4. Ping of Death
    根據TCP/IP的規範,一個包的長度最大為65536位元組。儘管一個包的長度不能超過65536位元組,但是一個包分成的多個片段的疊加卻能做到。當一個主機收到了長度大於65536位元組的包時,就是受到了Ping of Death***,該***會造成主機的宕機。

  5. Teardrop
    IP資料包在網路傳遞時,資料包可以分成更小的片段。***者可以通過傳送兩段(或者更多)資料包來實現TearDrop***。第一個包的偏移量為0,長度為N,第二個包的偏移量小於N。為了合併這些資料段,TCP/IP堆疊會分配超乎尋常的巨大資源,從而造成系統資源的缺乏甚至機器的重新啟動。

  6. PingSweep
    使用ICMP Echo輪詢多個主機。

  7. Pingflood
    該***在短時間內向目的主機發送大量ping包,造成網路堵塞或主機資源耗盡。

二、防禦方法

  1. 按***流量規模分類
    (1) 較小流量:
    小於1000Mbps,且在伺服器硬體與應用接受範圍之內,並不影響業務的: 利用iptables或者DDoS防護應用實現軟體層防護。
    (2) 大型流量:
    大於1000Mbps,但在DDoS清洗裝置效能範圍之內,且小於機房出口,可能影響相同機房的其他業務的:利用iptables或者DDoS防護應用實現軟體層防護,或者在機房出口裝置直接配置黑洞等防護策略,或者同時切換域名,將對外服務IP修改為高負載Proxy叢集外網IP,或者CDN高仿IP,或者公有云DDoS閘道器IP,由其代理到RealServer;或者直接接入DDoS清洗裝置。
    (3) 超大規模流量:
    在DDoS清洗裝置效能範圍之外,但在機房出口效能之內,可能影響相同機房的其他業務,或者大於機房出口,已經影響相同機房的所有業務或大部分業務的:聯絡運營商檢查分組限流配置部署情況並觀察業務恢復情況。

  2. 按***流量協議分類
    (1) syn/fin/ack等tcp協議包:
    設定預警閥值和響應閥值,前者開始報警,後者開始處理,根據流量大小和影響程度調整防護策略和防護手段,逐步升級。
    (2) UDP/DNS query等UDP協議包:
    對於大部分遊戲業務來說,都是TCP協議的,所以可以根據業務協議制定一份TCP協議白名單,如果遇到大量UDP請求,可以不經產品確認或者延遲跟產品確認,直接在系統層面/HPPS或者清洗裝置上丟棄UDP包。
    (3) http flood/CC等需要跟資料庫互動的***:
    這種一般會導致資料庫或者webserver負載很高或者連線數過高,在限流或者清洗流量後可能需要重啟服務才能釋放連線數,因此更傾向在系統資源能夠支撐的情況下調大支援的連線數。相對來說,這種***防護難度較大,對防護裝置效能消耗很大。
    (4) 其他:
    icmp包可以直接丟棄,先在機房出口以下各個層面做丟棄或者限流策略。現在這種***已經很少見,對業務破壞力有限。