以下是劫持過(guò)程(da為目的MAC,sa為源MAC)
1.A發(fā)送任意da=網(wǎng)關(guān).mac、sa=B.mac的數(shù)據(jù)包到網(wǎng)關(guān)。
這樣就表明b.mac對(duì)應(yīng)的是port.a,在一段時(shí)間內(nèi),交換機(jī)會(huì)把發(fā)往b.mac的數(shù)據(jù)幀全部發(fā)到a主機(jī)。這個(gè)時(shí)間一直持續(xù)到b主機(jī)發(fā)送一個(gè)數(shù)據(jù)包,或者另外一個(gè)da=網(wǎng)關(guān).mac、sa=b.mac的數(shù)據(jù)包產(chǎn)生前。
2.A 主機(jī)收到網(wǎng)關(guān)發(fā)給B的數(shù)據(jù),記錄或修改之后要轉(zhuǎn)發(fā)給B,在轉(zhuǎn)發(fā)前要
發(fā)送一個(gè)請(qǐng)求B.MAC的廣播,這個(gè)包是正常的
MAC信息為:da=FFFFFFFFFF、sa=a.mac。
這個(gè)數(shù)據(jù)幀表明了a.mac對(duì)應(yīng)port.a,同時(shí)會(huì)激發(fā)b主機(jī)響應(yīng)一個(gè)應(yīng)答包
MAC信息為:da=a.mac、sa=b.mac
這個(gè)數(shù)據(jù)幀表明了 b.mac對(duì)應(yīng)port.b
至此,對(duì)應(yīng)關(guān)系已經(jīng)恢復(fù),A主機(jī)將劫持到的數(shù)據(jù)可順利轉(zhuǎn)發(fā)至B
3. 轉(zhuǎn)發(fā)劫持到的數(shù)據(jù)到B,完成一次劫持
三、攻擊特點(diǎn)
1.由于這種攻擊方法具有時(shí)間分段特性,所以對(duì)方的流量越大,劫持頻率也越低,網(wǎng)絡(luò)越穩(wěn)定。
2.隱蔽性強(qiáng),基于1的特殊性和工作本質(zhì),可以在ARP防火墻和雙向綁定的環(huán)境中工作。
四、如何防護(hù)
高級(jí)的交換機(jī)可以采用ip+mac+port綁定,控制CAM表的自動(dòng)學(xué)習(xí)。目前尚無(wú)軟件可以防護(hù)此類攻擊
五、利用工具
1.httphijack beta 2 說(shuō)明:http會(huì)話劫持
2.ssclone 說(shuō)明:交換環(huán)境下的會(huì)話復(fù)制軟件(gmail,qqmail,sohumail…..)
3.skiller 說(shuō)明:流量控制