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