天天看點

找出區域網路中的ARP欺騙

原創文章,轉載請保留以下資訊

作者:ipist (ipist#126.com) 

來源:[url]http://www.51cto.com[/url]

    最近發現還有不少朋友深受ARP欺騙的困擾,在這裡簡單寫上幾句,便于大家理

解ARP欺騙,解決ARP欺騙。

    ARP欺騙僅存在于區域網路中,區域網路是依賴MAC位址作為源位址、目的位址來傳

輸資料幀的。由于網絡層通過IP位址傳輸資料包,是以在區域網路傳輸資料過程中需

要将IP位址轉為對應的MAC位址用于資料幀傳輸,負責這項工作的就是ARP協定。在

IP位址轉MAC位址時首先查找本機的ARP緩存,如果找不到請求的目标IP對應的MAC地

址,則廣播ARP request包請求解析該IP對應的MAC位址,區域網路中所有的裝置均能

收到到該廣播包,當某裝置發現該包的目的IP是自己時,便發送ARP reply包回答對

方自己的MAC位址。區域網路中每一個ARP包(無論request、還是reply),都包含源

IP位址、源MAC位址、目的IP位址、目的MAC位址。改變源IP位址、源MAC位址或目的

IP位址、目的MAC位址間的對應關系也就實作了ARP欺騙。而在區域網路中任意構造一

個ARP包都可以更新PC端腁RP緩存。這樣就導緻區域網路ARP欺騙很容易實作,檢查

ARP欺騙存在的關鍵也就在于檢查ARP緩存中的IP-MAC對應關系是否正确。

    實際網絡中存在多樣的欺騙方式,但都是通過廣播精心構造的ARP包來修改PC端

ARP緩存中的IP-MAC對應關系,隻是選擇了修改“源IP位址、源MAC位址、目的IP地

址、目的MAC位址”其中某項實作欺騙目的。

1、PC端:

   如果是windows系統在cmd模式下,執行arp-a,顯示目前系統ARP快取記錄,檢查緩

存中的IP-MAC對應關系是否正确,正常情況下IP-MAC是一一對應的。另外可先使用

arp-d清除目前ARP快取記錄,再開始觀察是否存在ARP欺騙的情況。

   如果是unix/linux用戶端,使用/etc/arp -a檢查ARP緩存資訊。

2、網絡裝置端:

   通過show arp指令檢測ARP緩存資訊。

    如果某MAC位址對應多個IP位址,則說明該MAC位址的PC正在廣播ARP欺騙包(如

果某裝置存在多IP位址,這種情況是正常的)。另一種惡意欺騙是該MAC位址在局域

網中根本就不存在。

    還有個比較簡單的方法,裝個sniffer監聽網絡中所有ARP包,由于ARP欺騙往往

使用廣播形式傳播,即使在交換機環境下也明顯能監聽到某PC端正在狂發ARP包。

    下面簡單介紹一下ARP欺騙解決方案:

1、PC端,增加IP-MAC綁定,不讓區域網路中的ARP包輕易修改自己的ARP緩存。

2、網關、路由器端,同PC端一樣增加IP-MAC綁定。

3、如果是可網管型交換機,可以在交換機中實作IP-MAC綁定。

   據觀察現在的ARP欺騙,往往都是在網關(路由器)與PC端之間實作欺騙,可以

在交換機上設定隻允許接網關(路由器)的交換機口允許發送源IP為網關(路由器

)IP的資料幀;設定隻允許接網關(路由器)的交換機口允許發送源MAC為網關(路

由器)MAC的資料幀。這樣可以有效防止PC端被ARP欺騙,但在網關(路由器)端,

還必須進行IP-MAC一一綁定以防網關(路由器)被欺騙。

    本人不善言辭,寫的比較亂,不知道大家能否看明白,如有疑問,非常樂意共同

探讨,感謝光臨寒舍。

   本文轉自ipist 51CTO部落格,原文連結:http://blog.51cto.com/ipist/11356,如需轉載請自行聯系原作者

繼續閱讀