IP地址對(duì)于網(wǎng)絡(luò)用戶來說就相當(dāng)于網(wǎng)絡(luò)用戶的門牌號(hào)碼,而所謂的IP地址欺騙就是攻擊者假冒他人IP地址,發(fā)送數(shù)據(jù)包。因?yàn)镮P協(xié)議不對(duì)數(shù)據(jù)包中的IP地址進(jìn)行認(rèn)證,因此任何人不經(jīng)授權(quán)就可以偽造IP包的源地址。那么如何進(jìn)行IP地址欺騙呢?實(shí)現(xiàn)IP地址欺騙的過程中應(yīng)該注意哪些問題呢?
IP地址欺騙
IP包一旦從網(wǎng)絡(luò)中發(fā)送出去,源IP地址就幾乎不用,僅在中間路由器因某種原因丟棄它或到達(dá)目標(biāo)端后,才被使用。這使得一個(gè)主機(jī)可以使用別的主機(jī)的IP地址發(fā)送IP包,只要它能把這類IP包放到網(wǎng)絡(luò)上就可以。因而,如果攻擊者把自己的主機(jī)偽裝成被目標(biāo)主機(jī)信任的好友主機(jī),即把發(fā)送的IP包中的源IP地址改成被信任的友好主機(jī)的IP地址,利用主機(jī)間的信任關(guān)系和這種信任關(guān)系的實(shí)際認(rèn)證中存在的脆弱性(只通過IP確認(rèn)),就可以對(duì)信任主機(jī)進(jìn)行攻擊。注意其中所說的信任關(guān)系是指一個(gè)被授權(quán)的主機(jī)可以對(duì)信任主機(jī)進(jìn)行方便的訪問。例如Unix中的所有的R*命令都采用信任主機(jī)方案,所以一個(gè)攻擊主機(jī)把自己的IP改為被信任主機(jī)的IP,就可以連接到信任主機(jī),并能利用R*命令開后門達(dá)到攻擊的目的。
想要實(shí)現(xiàn)IP地址欺騙要注意以下兩個(gè)問題:
1.因?yàn)檫h(yuǎn)程主機(jī)只向偽造的IP地址發(fā)送應(yīng)答信號(hào),攻擊者不可能收到遠(yuǎn)程主機(jī)發(fā)出的信息,即用C主機(jī)假冒B主機(jī)IP,連接遠(yuǎn)程主機(jī)A,A主機(jī)只向B主機(jī)發(fā)送應(yīng)答信號(hào),C主機(jī)無法收到;
2.要在攻擊者和被攻擊者之間建立連接,攻擊者需要使用正確的TCP序列號(hào)。
攻擊者使用IP地址欺騙的目的主要有兩種:
1.只想隱藏自身的IP地址或偽造源IP和目的IP相同的不正常包,而并不關(guān)心是否能收到目標(biāo)主機(jī)的應(yīng)答,例如IP包碎片、Land攻擊等;
2.偽裝成被目標(biāo)主機(jī)信任的友好主機(jī)得到非授權(quán)的服務(wù)。解決辦法:目前最理想的方法是使用防火墻,防火墻決定是否允許外部的IP數(shù)據(jù)包進(jìn)入局域網(wǎng),對(duì)來自外部的IP數(shù)據(jù)包進(jìn)行檢驗(yàn)。假如來自外部的數(shù)據(jù)包聲稱有內(nèi)部地址,它一定是欺騙包。如果數(shù)據(jù)包的IP地址不是防火墻內(nèi)的任何子網(wǎng),它就不能離開防火墻。
相關(guān)閱讀