B 192.168.16.2 bb-bb-bb-bb-bb-bb
C 192.168.16.3 cc-cc-cc-cc-cc-cc
D 192.168.16.4 dd-dd-dd-dd-dd-dd

      我們以主機A(192.168.16.1)向主機B(192.168.16.2)發(fā)送數(shù)據(jù)為例。當發(fā)送數(shù)據(jù)時,主機A會在自己的ARP緩存表中尋找是否有目標IP地址。如果找到了,也就知道了目標MAC地址,直接把目標MAC地址寫入幀里面發(fā)送就可以了;如果在ARP緩存表中沒有找到相對應的IP地址,主機A就會在網(wǎng)絡上發(fā)送一個廣播,目標MAC地址是“FF.FF.FF.FF.FF.FF”,這表示向同一網(wǎng)段內的所有主機發(fā)出這樣的詢問:“192.168.16.2的MAC地址是什么?”網(wǎng)絡上其他主機并不響應ARP詢問,只有主機B接收到這個幀時,才向主機A做出這樣的回應:

      “192.168.16.2的MAC地址是bb-bb-bb-bb-bb-bb”。這樣,主機A就知道了主機B的MAC地址,它就可以向主機B發(fā)送信息了。同時它還更新了自己的ARP緩存表,下次再向主機B發(fā)送信息時,直接從ARP緩存表里查找就可以了。ARP緩存表采用了老化機制,在一段時間內如果表中的某一行沒有使用,就會被刪除,這樣可以大大減少ARP緩存表的長度,加快查詢速度。

      從上面可以看出,ARP協(xié)議的基礎就是信任局域網(wǎng)內所有的人,那么就很容易實現(xiàn)在以太網(wǎng)上的ARP欺騙。對目標A進行欺騙,A去Ping主機C卻發(fā)送到了DD-DD-DD-DD-DD-DD這個地址上。如果進行欺騙的時候,把C的MAC地址騙為DD-DD-DD-DD-DD-DD,于是A發(fā)送到C上的數(shù)據(jù)包都變成發(fā)送給D的了。這不正好是D能夠接收到A發(fā)送的數(shù)據(jù)包了么,嗅探成功。

      A對這個變化一點都沒有意識到,但是接下來的事情就讓A產生了懷疑。因為A和C連接不上了。D對接收到A發(fā)送給C的數(shù)據(jù)包可沒有轉交給C。

      做“man in the middle”,進行ARP重定向。打開D的IP轉發(fā)功能,A發(fā)送過來的數(shù)據(jù)包,轉發(fā)給C,好比一個路由器一樣。不過,假如D發(fā)送ICMP重定向的話就中斷了整個計劃。

      D直接進行整個包的修改轉發(fā),捕獲到A發(fā)送給C的數(shù)據(jù)包,全部進行修改后再轉發(fā)給C,而C接收到的數(shù)據(jù)包完全認為是從A發(fā)送來的。不過,C發(fā)送的數(shù)據(jù)包又直接傳遞給A,倘若再次進行對C的ARP欺騙。現(xiàn)在D就完全成為A與C的中間橋梁了,對于A和C之間的通訊就可以了如指掌了。

      【故障現(xiàn)象】

      當局域網(wǎng)內某臺主機運行ARP欺騙的木馬程序時,會欺騙局域網(wǎng)內所有主機和路由器,讓所有上網(wǎng)的流量必須經過病毒主機。其他用戶原來直接通過路由器上網(wǎng)現(xiàn)在轉由通過病毒主機上網(wǎng),切換的時候用戶會斷一次線。

      切換到病毒主機上網(wǎng)后,如果用戶已經登陸了傳奇服務器,那么病毒主機就會經常偽造斷線的假像,那么用戶就得重新登錄傳奇服務器,這樣病毒主機就可以盜號了。

      由于ARP欺騙的木馬程序發(fā)作的時候會發(fā)出大量的數(shù)據(jù)包導致局域網(wǎng)通訊擁塞以及其自身處理能力的限制,用戶會感覺上網(wǎng)速度越來越慢。當ARP欺騙的木馬程序停止運行時,用戶會恢復從路由器上網(wǎng),切換過程中用戶會再斷一次線。

      【防范方法】

      以下為網(wǎng)吧試驗得出結論:

      A、B、C、D四種類型客戶機XP系統(tǒng)皆適合使用,2K系統(tǒng)ARP -S無效,可以使用虛擬網(wǎng)關!

      A–代理服務器共享上網(wǎng)方式(采用雙向綁定)

      雙向綁定分為兩部分

      1、網(wǎng)關(假設網(wǎng)關IP為192.168.0.1 ,MAC為00-01-02-01-02-01)上綁定下面所有客戶機的IP+MAC

      例:做一個批處理放在代理服務器的啟動里面,大概內容如下

@echo off
arp -s 192.168.0.2 00-02-54-44-58-87
arp -s 192.168.0.3 65-5d-88-88-88-96
arp -s 192.168.0.4 55-54-df-dg-54-08

      有幾臺客戶機就加幾條相應IP和MAC綁定

      2、客戶機(綁定網(wǎng)關的IP+MAC)

      例:做一個批處理放在客戶機的啟動里面,大概內容如下

@echo off
arp -s 192.168.0.1 00-01-02-01-02-01

      B–代理服務器共享上網(wǎng)方式(采用虛擬網(wǎng)關)

      虛擬網(wǎng)關部分

      客戶機(假設客戶機默認網(wǎng)關IP為192.168.0.1 ),后來因中了ARP欺騙,把代理服務器的IP更改為192.168.0.254,客戶機本地連接里的網(wǎng)關依然保持為192.168.0.1

      例:做一個批處理放在客戶機的啟動里面,大概內容如下444444444444444

@echo off
route delete 0.0.0.0


route add 0.0.0.0 mask 0.0.0.0 192.168.0.254 metric 1


route change 0.0.0.0 mask 0.0.0.0 192.168.0.254 metric 1


exit

      C–路由器共享上網(wǎng)方式(采用雙向綁定)PS:路由本身支持ARP協(xié)議,以下舉某種路由的綁定方式

      雙向綁定分為兩部分

      1、網(wǎng)關(假設網(wǎng)關IP為192.168.0.1 ,MAC為00-01-02-01-02-01)上綁定下面所有客戶機的IP+MAC

      例:進入路由里面,進入調試模式,大概內容如下

arp 192.168.0.2 0002.5444.5887 arpa
arp 192.168.0.3 655d.8888.8896 arpa
arp 192.168.0.4 5554.dfdg.5408 arpa

      有幾臺客戶機就加幾條相應IP和MAC綁定

      2、客戶機(綁定網(wǎng)關的IP+MAC)

      例:做一個批處理放在客戶機的啟動里面,大概內容如下66666666666666666

@echo off
arp -s 192.168.0.1 00-01-02-01-02-01

      D–路由器共享上網(wǎng)方式(采用虛擬網(wǎng)關)

      虛擬網(wǎng)關部分

      客戶機(假設客戶機默認網(wǎng)關IP為192.168.0.1 ),后來因中了ARP欺騙,把路由器的IP更改為192.168.0.254,客戶機本地連接里的網(wǎng)關依然保持為192.168.0.1

      例:做一個批處理放在客戶機的啟動里面,大概內容如下

@echo off
route delete 0.0.0.0


route add 0.0.0.0 mask 0.0.0.0 192.168.0.254 metric 1


route change 0.0.0.0 mask 0.0.0.0 192.168.0.254 metric 1


exit

分享到

yajing

相關推薦