ACK Flood攻擊是指攻擊者通過(guò)僵尸網(wǎng)絡(luò)向目標(biāo)服務(wù)器發(fā)送大量的ACK報(bào)文,報(bào)文帶有超大載荷引起鏈路擁塞,或者是極高速率的變?cè)醋兌丝诘恼?qǐng)求導(dǎo)致轉(zhuǎn)發(fā)的設(shè)備異常從而引起網(wǎng)絡(luò)癱瘓,或者是消耗服務(wù)器處理性能,從而使被攻擊服務(wù)器拒絕正常服務(wù)。
ACK Flooding攻擊是在TCP連接建立之后,所有的數(shù)據(jù)傳輸TCP報(bào)文都是帶有ACK標(biāo)志位的,主機(jī)在接收到一個(gè)帶有ACK標(biāo)志位的數(shù)據(jù)包的時(shí)候,需要檢查該數(shù)據(jù)包所表示的連接四元組是否存在,如果存在則檢查該數(shù)據(jù)包所表示的狀態(tài)是否合法,然后再向應(yīng)用層傳遞該數(shù)據(jù)包。如果在檢查中發(fā)現(xiàn)該數(shù)據(jù)包不合法,例如該數(shù)據(jù)包所指向的目的端口在本機(jī)并未開(kāi)放,則主機(jī)操作系統(tǒng)協(xié)議棧會(huì)回應(yīng)RST包告訴對(duì)方此端口不存在。當(dāng)發(fā)包速率很大的時(shí)候,主機(jī)操作系統(tǒng)將耗費(fèi)大量的精力接收?qǐng)?bào)文、判斷狀態(tài),同時(shí)要主動(dòng)回應(yīng)RST報(bào)文,正常的數(shù)據(jù)包就可能無(wú)法得到及時(shí)的處理。