DDos***种类,原理,简单预防
?
DDoS***基礎(chǔ)
DDoS(Distributed Denial of service,分布式拒絕服務(wù))***的主要目的是讓指定目標(biāo)無法提供正常服務(wù),甚至從互聯(lián)網(wǎng)上消失,是目前最強大、最難防御的***之一。
DDos 主要分類:
SYN Flood***,DNS Query Flood***,HTTP Flood ***
?
1 ?SYN Flood***
SYN Flood***利用了TCP三次握手的缺陷,能夠以較小代價使目標(biāo)服務(wù)器無法響應(yīng),且難以追查,
三次握手過程如下:
1 客戶端發(fā)送一個包含SYN標(biāo)志的TCP報文,報文會指明客戶端端口以及TCP連接的初始序號。
2 服務(wù)器收到報文后,會返回一個SYN+ACK報文給客戶端,表示客戶端的請求已經(jīng)被服務(wù)器接收,同時TCP初始化序號自動加一
3 客戶端也會返回一個確認(rèn)報文ACK 給服務(wù)器,同樣TCP序列號也自動加一
這樣tcp 連接就建立完成了。
***原理:
擊者偽裝大量的IP地址給服務(wù)器發(fā)送SYN報文,由于偽造的IP地址幾乎不可能存在,也就幾乎沒有設(shè)備會給服務(wù)器返回任何應(yīng)答了。因此,服務(wù)器將會維持一個龐大的等待列表,不停的重試發(fā)送SYN+ACK報文,同時占用著大量的資源無法釋放。更關(guān)鍵的是,被***服務(wù)器的SYN_RECV隊列被惡意的數(shù)據(jù)包占滿,不再接受新的SYN請求,合法用戶無法完成三次握手建立起TCP連接。也就是說,這個服務(wù)器被SYN Flood拒絕服務(wù)了。
預(yù)防:
SYN Flood***大量消耗服務(wù)器的CPU、內(nèi)存資源,并占滿SYN等待隊列。相應(yīng)的,我們修改內(nèi)核參數(shù)即可有效緩解。主要參數(shù)如下:
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 8192
net.ipv4.tcp_synack_retries = 2
分別為啟用SYN Cookie、設(shè)置SYN最大隊列長度以及設(shè)置SYN+ACK最大重試次數(shù)
?
2 DNS Query Flood***
***原理:
DNS Query Flood就是***者操縱大量傀儡機器,對目標(biāo)發(fā)起海量的域名查詢請求
預(yù)防:
DNS***防御也有類似HTTP的防御手段,第一方案是緩存。其次是重發(fā),可以是直接丟棄DNS報文導(dǎo)致UDP層面的請求重發(fā),可以是返回特殊響應(yīng)強制要求客戶端使用TCP協(xié)議重發(fā)DNS查詢請求。
特殊的,對于授權(quán)域DNS的保護(hù),設(shè)備會在業(yè)務(wù)正常時期提取收到的DNS域名列表和ISP DNS IP列表備用,在***時,非此列表的請求一律丟棄,大幅降低性能壓力。對于域名,實行同樣的域名白名單機制,非白名單中的域名解析請求,做丟棄處理。
?
3 HTTP Flood ***
***原理:
***者并不需要控制大批的傀儡機,取而代之的是通過端口掃描程序在互聯(lián)網(wǎng)上尋找匿名的HTTP代理或者SOCKS代理,***者通過匿名代理對***目標(biāo)發(fā)起HTTP請求。匿名代理是一種比較豐富的資源,花幾天時間獲取上午的代理并不是難事,因此***容易發(fā)起而且可以長期高強度的持續(xù)。
預(yù)防:
1 HTTP Flood***防御主要通過緩存的方式進(jìn)行,盡量由設(shè)備的緩存直接返回結(jié)果來保護(hù)后端業(yè)務(wù)。大型的互聯(lián)網(wǎng)企業(yè),會有龐大的CDN節(jié)點緩存內(nèi)容。
2 javascript跳轉(zhuǎn)人機識別方案
當(dāng)清洗設(shè)備截獲到HTTP請求時,返回一段特殊Javascript代碼,正常用戶的瀏覽器會處理并正常跳轉(zhuǎn)不影響使用,而***程序會***到空處。
轉(zhuǎn)載于:https://blog.51cto.com/lubing/1059717
總結(jié)
以上是生活随笔為你收集整理的DDos***种类,原理,简单预防的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux 系统 rpm安装ipvsad
- 下一篇: The RSpec Book笔记《一》初