DDoS和CC攻擊原理(上)
0、前言
本主題研究DDoS和CC的實現原理以及其具體的實現方法,并對如何檢測和防護進行說明。文章一共分為(上)(中)(下)三篇。
1、DDoS 基本原理
DDoS(DDoS:Distributed Denial of Service)分布式拒絕服務攻擊,就是讓多臺計算機聯合起來對目標發動拒絕服務攻擊。
那么什么又是拒絕服務攻擊(DoS)呢?拒絕服務攻擊即是攻擊者想辦法讓目標機器停止提供服務的攻擊。比如說把對方網頁服務搞癱瘓,讓對方網站訪問不了。

2、分類
2.1 按攻擊源報文類型

2.2 按攻擊對象

3、易攻擊的風險點

4、攻擊思路
一般是先抓包再攻擊,抓包抓到一條請求后,一直用這條請求攻擊你,請求的時間是不會變的(正常用戶的請求,是會根據手機時間去拿到一條當前時間的)然后使用N多個IP模擬正常玩家行為不停向后臺服務器發送各種操作請求,導致后臺處理不過來,服務器CPU負載過高。高防對這種攻擊無效,因為這些都會被高防認定為正常玩家行為。
處理方法:
1、把攻擊IP及時提取出來封禁掉。影響:同一基站發出的IP相同,可能導致正常的用戶通過這個基站請求也被封禁。
2、后臺做校驗:客服端每次請求服務器,都會帶一個時間過來,收到請求后根據時間判斷這條請求是否超時,超時則丟掉不處理。影響:有些用戶的手機時間跟服務器時間相差過大,導致請求被丟棄。
注:做防御策略,需要確定是在哪步被攻擊,如果是其他方式,原理也相同,用某個會變的參數去做key來校驗即可。PS:記得做用戶分級,可以減少高防費用。
5、DoS攻擊
5.1 Ping of Death攻擊
IP報文的最大長度是65535個字節,那么去除IP首部的20個字節和ICMP首部的8個字節,實際數據部分長度最大為:65507個字節。所謂的尺寸超大的ICMP報文就是指數據部分長度超過65507個字節的ICMP報文。
Ping of Death攻擊原理是攻擊者A向受害者B發送一些尺寸超大的ICMP報文對其進行攻擊(對于有些路由器或系統,在接收到一個這樣的報文后,由于處理不當,會造成系統崩潰、死機或重啟)。
5.2 WinNuke攻擊
NetBIOS 作為一種基本的網絡資源訪問接口,廣泛的應用于文件共享,打印共享,進程間通信(IPC),以及不同操作系統之間的數據交換。一般情況下,NetBIOS 是運行在 LLC2 鏈路協議之上的,是一種基于組播的網絡訪問接口。為了在 TCP/IP 協議棧上實現 NetBIOS,RFC 規定了一系列交互標準,以及幾個常用的 TCP/UDP 端口,如下。
A). 139:NetBIOS 會話服務的 TCP 端口;
B). 137:NetBIOS 名字服務的 UDP 端口;
C). 136:NetBIOS 數據報服務的 UDP 端口。
Windows 操作系統實現了 NetBIOS over TCP/IP 功能,并開放了 139 端口。
WinNuke攻擊原理是利用了 WINDOWS 操作系統的一個漏洞,向139 端口發送一些攜帶 TCP 帶外(OOB)數據報文,但這些攻擊報文與正常攜帶 OOB 數據報文不同的是,其指針字段與數據的實際位置不符,即存在重疊, WINDOWS 操作系統在處理這些數據的時候,就會崩潰。
5.3 Teardrop攻擊
Teardrop是基于UDP的病態分片數據包的攻擊方法,其工作原理是向被攻擊者發送多個分片的IP包(IP分片數據包中包括該分片數據包屬于哪個數據包以及在數據包中的位置等信息),某些操作系統收到含有重疊偏移的偽造分片數據包時將會出現系統崩潰、重啟等現象。(利用UDP包重組時重疊偏移(假設數據包中第二片IP包的偏移量小于第一片結束的位移,而且算上第二片IP包的Data,也未超過第一片的尾部,這就是重疊現象。)的漏洞對系統主機發動拒絕服務攻擊,最終導致主機宕機;對于Windows系統會導致藍屏死機,并顯示STOP 0x0000000A錯誤。)

6、小結
本文主要描述了DDoS的概念,下一篇將詳細描述各種DDoS和CC的手法。
聲明:文章內容均來自互聯網,并且僅是對攻擊原理進行理論性描述,未具體提供任何可用于直接進行攻擊實現的手段,目的是為了進行學習交流,請讀者們潔身自好,不要嘗試利用,以免誤入歧途。