Ddos攻擊是香港服務(wù)器托管用戶難處理的攻擊,事實(shí)上ddos攻擊其種類其實(shí)也有多種,需要具體情況具體處理,不同的情況的DDOS需要用到不同的處理解決方法,并不是靠單純的增加帶寬就能解決的。那么這些攻擊的類型和不同分別是什么呢?對(duì)此應(yīng)該要怎么處理呢?
◆網(wǎng)絡(luò)層攻擊
Syn-flood
利用TCP建立連接時(shí)3次握手的“漏洞”,通過(guò)原始套接字發(fā)送源地址虛假的SYN報(bào)文,使目標(biāo)主機(jī)永遠(yuǎn)無(wú)法完成3次握手,占滿了系統(tǒng)的協(xié)議棧隊(duì)列,資源得不到釋放,進(jìn)而拒絕服務(wù),是互聯(lián)網(wǎng)中主要的DDOS攻擊形式之一。網(wǎng)上有一些加固的方法,例如調(diào)整內(nèi)核參數(shù)的方法,可以減少等待及重試,加速資源釋放,在小流量syn-flood的情況下可以緩解,但流量稍大時(shí)完全不抵用。防御syn-flood的常見方法有:syn proxy、syn cookies、首包(次請(qǐng)求的syn包)丟棄等。
ACK-flood
對(duì)于虛假的ACK包,目標(biāo)設(shè)備會(huì)直接回復(fù)RST包丟棄連接,所以傷害值遠(yuǎn)不如syn-flood。DDOS的一種原始方式。
UDP-flood
使用原始套接字偽造大量虛假源地址的UDP包,目前以DNS協(xié)議為主。
ICMP-flood
Ping洪水,比較古老的方式。
◆應(yīng)用層攻擊
CC
ChallengeCollapsar的名字源于挑戰(zhàn)國(guó)內(nèi)知名廠商綠盟的抗DDOS設(shè)備-“黑洞”,通過(guò)botnet的傀儡主機(jī)或?qū)ふ夷涿矸?wù)器,向目標(biāo)發(fā)起大量真實(shí)的http請(qǐng)求,終消耗掉大量的并發(fā)資源,拖慢整個(gè)網(wǎng)站甚至徹底拒絕服務(wù)。
互聯(lián)網(wǎng)的架構(gòu)追求擴(kuò)展性本質(zhì)上是為了提高并發(fā)能力,各種SQL性能優(yōu)化措施:消除慢查詢、分表分庫(kù)、索引、優(yōu)化數(shù)據(jù)結(jié)構(gòu)、限制搜索頻率等本質(zhì)都是為了解決資源消耗,而CC大有反其道而行之的意味,占滿服務(wù)器并發(fā)連接數(shù),盡可能使請(qǐng)求避開緩存而直接讀數(shù)據(jù)庫(kù),讀數(shù)據(jù)庫(kù)要找消耗資源的查詢,無(wú)法利用索引,每個(gè)查詢都全表掃描,這樣就能用小的攻擊資源起到的拒絕服務(wù)效果。
互聯(lián)網(wǎng)產(chǎn)品和服務(wù)依靠數(shù)據(jù)分析來(lái)驅(qū)動(dòng)改進(jìn)和持續(xù)運(yùn)營(yíng),所以除了前端的APP、中間件和數(shù)據(jù)庫(kù)這類OLTP系統(tǒng),后面還有OLAP,從日志收集,存儲(chǔ)到數(shù)據(jù)處理和分析的大數(shù)據(jù)平臺(tái),當(dāng)CC攻擊發(fā)生時(shí),不僅OLTP的部分受到了影響,實(shí)際上CC會(huì)產(chǎn)生大量日志,直接會(huì)對(duì)后面的OLAP產(chǎn)生影響,影響包括兩個(gè)層面,一個(gè)當(dāng)日的數(shù)據(jù)統(tǒng)計(jì)完全是錯(cuò)誤的。第二個(gè)層面因CC期間訪問日志劇增也會(huì)加大后端數(shù)據(jù)處理的負(fù)擔(dān)。
CC是目前應(yīng)用層攻擊的主要手段之一,在防御上有一些方法,但不能完美解決這個(gè)問題。
DNS flood
偽造源地址的海量DNS請(qǐng)求,用于是淹沒目標(biāo)的DNS服務(wù)器。對(duì)于攻擊特定企業(yè)DNS的場(chǎng)景,可以將源地址設(shè)置為各大ISP DNS服務(wù)器的ip地址以突破白名單限制,將查詢的內(nèi)容改為針對(duì)目標(biāo)企業(yè)的域名做隨機(jī)化處理,當(dāng)查詢無(wú)法命中緩存時(shí),服務(wù)器負(fù)載會(huì)進(jìn)一步增大。
DNS不只在UDP-53提供服務(wù),同樣在TCP協(xié)議提供服務(wù),所以防御的一種思路就是將UDP的查詢強(qiáng)制轉(zhuǎn)為TCP,要求溯源,如果是假的源地址,就不再回應(yīng)。對(duì)于企業(yè)自有DNS服務(wù)器而言,正常請(qǐng)求多來(lái)自于ISP的域名遞歸解析,所以將白名單設(shè)置為ISP的DNS server列表。對(duì)于源地址偽造成ISP DNS的請(qǐng)求,可以通過(guò)TTL值進(jìn)一步判斷。
?慢速連接攻擊
針對(duì)http協(xié)議,以知名的slowloris攻擊為起源:先建立http連接,設(shè)置一個(gè)較大的content-length,每次只發(fā)送很少的字節(jié),讓服務(wù)器一直以為http頭部沒有傳輸完成,這樣的連接一多很快就會(huì)出現(xiàn)連接耗盡。
目前出現(xiàn)了一些變種,http慢速的post請(qǐng)求和慢速的read請(qǐng)求都是基于相同的原理。
DOS攻擊
有些服務(wù)器程序存在bug、漏洞,或架構(gòu)性缺陷,攻擊者可以通過(guò)構(gòu)造的畸形請(qǐng)求發(fā)送給服務(wù)器,服務(wù)器因不能正確處理惡意請(qǐng)求而陷入僵死狀態(tài),導(dǎo)致拒絕服務(wù)。例如某些版本的app服務(wù)器程序存在緩沖區(qū)溢出,漏洞可以觸發(fā)但無(wú)法得到shell,攻擊者可以改變程序執(zhí)行流程使其跳轉(zhuǎn)到空指針或無(wú)法處理的地址,用戶態(tài)的錯(cuò)誤會(huì)導(dǎo)致進(jìn)程掛起,如果錯(cuò)誤不能被內(nèi)核回收則可能使系統(tǒng)當(dāng)?shù)簟_@類問題效果也表現(xiàn)為拒絕服務(wù),但本質(zhì)上屬于漏洞,可以通過(guò)patch程序的版本解決,香港服務(wù)器托管小編認(rèn)為不屬于DDOS的范疇。