網(wǎng)絡(luò)攻擊及防范之拒絕服務(wù)攻擊SYN Flood
1)SYN Flood
SYN是TCP協(xié)議中的一個(gè)標(biāo)記位,稱為同步序號(hào),用于發(fā)起TCP會(huì)話的三次握手過程。 三次握手是建立一次TCP會(huì)話前的協(xié)商過程,請(qǐng)求通訊的客戶機(jī)要與服務(wù)器建立TCP會(huì)話前,客戶機(jī)需要向服務(wù)器發(fā)出一個(gè)SYN被標(biāo)記的數(shù)據(jù)包,這是連接請(qǐng)求。胡艮務(wù)器收到后,需要回應(yīng)一個(gè)ACI標(biāo)記的數(shù)據(jù)包對(duì)此請(qǐng)求的確認(rèn),同時(shí),為了實(shí)現(xiàn)雙工的會(huì)話,服務(wù)器也需要發(fā)送自己的連接請(qǐng)求。服務(wù)器對(duì)客戶機(jī)請(qǐng)求的應(yīng)答和建立連接請(qǐng)求通常在一個(gè)數(shù)據(jù)包中(AC K/SYN都標(biāo)記)。客戶機(jī)對(duì)服務(wù)器的連接請(qǐng)求進(jìn)行ACK確認(rèn)后,三次握手過程完成,TCP會(huì)話被建立起來。
SYN Floocl攻擊通過偽造帶有虛假源地址的SYN包,使目標(biāo)主機(jī)發(fā)送的ACK/SYN包得不到確認(rèn)。一般情況下,目標(biāo)主機(jī)會(huì)等一段時(shí)間后才會(huì)放棄這個(gè)連接,在這個(gè)等待的過程中, 會(huì)占用一個(gè)連接。系統(tǒng)所能支持的連接數(shù)是有限的,因此當(dāng)大量的洪水一般的虛假SYN包同時(shí)發(fā)送到目標(biāo)主機(jī)時(shí),目標(biāo)主機(jī)上就會(huì)有大量的連接請(qǐng)求等待確認(rèn),當(dāng)這些未釋放的連接請(qǐng)求數(shù)量超過目標(biāo)主機(jī)所支持的并發(fā)連接數(shù)量時(shí),其他正常的連接請(qǐng)求由于連接耗盡,就不能被目標(biāo)主機(jī)接受,從而形成拒絕服務(wù)。