Dolphin,ChinaBJ,20131122
本文檔是檢驗自己學習TCP/IP協議卷1:協議中關於ARP協議的學習情況。本文檔包含以下四部分:1、簡述ARP協議;2、ARP的分組格式;3、ARP Spoofing 實驗 4、應用及防禦方法。
1.簡述ARP協議
ARP(Address Resolution Protocol)地址解析協議。兩臺主機相互通信過程中,在網絡層上,是用32位的IP地址進行尋址;在數據鏈路層上,是通過48位的以太網地址來確定目的接口。ARP協議是提供IP地址到MAC地址的動態映射。
1.1 ARP的工作原理
兩臺主機進行通信時,主機A向主機B發送一個數據報文,在數據報文發送出去之前,主機A先在本地查看ARP緩存表,查看數據報文中目的IP地址相對應的MAC地址;若ARP緩存表中沒有對應的記錄,則主機A先發送一個廣播包,詢問這個IP的MAC地址是多少;對應IP的主機,也就是這裏的主機B收到這個請求包之後,會給主機A發送一個ARP迴應包,告訴它主機B的MAC地址;主機A收到這個迴應包之後,便將該條IP-MAC記錄添加進ARP緩存表中。在這個表中,每條動態添加的記錄有效期爲20分鐘,而靜態添加的記錄則爲永久。
2.ARP的分組格式
圖1 ARP分組格式圖
圖2 ARP抓包信息
以太網頭部中的前兩個字段以太網目的地址和以太網源地址都是填入16進制的地址。
幀類型對於APR來說是0x0806,這是固定的值;
硬件類型表示硬件地址的類型,值爲1表示以太網地址。協議類型字段表示要映射的協議地址類型,值爲0x0800的類型爲IP地址;
硬件地址長度與協議地址長度,以字節爲單位;
操作碼,1表示ARP請求,2表示ARP應答;
接下來的四個字段相信大家都很熟悉了,我就不做解釋了。大家可以通過圖2的抓包信息詳細瞭解ARP的數據包。圖2的抓包信息是用wireshark工具的抓包結果。
3.ARP Spoofing 實驗
ARP Spoofing實驗帶有一定的***性,在此僅用於研究ARP協議,請勿亂用。該部分實驗包括以下四個部分:1、實驗環境 2、實驗步驟 3、實驗結果 4、結論
第1章
第2章
第3章
3.1 實驗環境
硬件:主機兩臺,一臺路由器
操作系統:WIN 7 和WIN XP
工具:XCAP v0.4.7、Wiresharkv1.10.3
主機名 | IP地址 | MAC地址 |
hostA | 172.16.16.10 | 00-CC-22-BB-66-EE |
hostB | 172.16.16.102 | 00:0C:29:BA:6C:E3 |
gw | 172.16.16.1 | 78-AA-00-BB-33-EE |
表1
3.2 實驗步驟
1、用wireshark工具抓包
我們可以先用wireshark這個工具抓包,觀察ARP數據包中每個字段的值,哪些是固定的,哪些是可變的,然後再構造我們需要的ARP包。如圖3,是我們的抓包結果。
圖3 wireshark抓包信息
2、構造ARP數據包
我們用XCAP這個工具來構造我們的ARP數據包。
序號 | 類型 | 源IP | 源MAC | 目的IP | 目的MAC | 操作碼 |
1 | ARP請求包 | 172.16.16.1 | AA-AA-AA-AA-AA-AA | 172.16.16.102 | FF-FF-FF-FF-FF-FF | 1 |
2 | ARP迴應包 | 172.16.16.1 | AA-AA-AA-AA-AA-AA | 172.16.16.102 | 00:0C:29:BA:6C:E3 | 2 |
表2
3、查看ARP緩存表
在windows系列操作系統中,點擊開始→運行→輸入cmd→輸入arp -a 命令查看。如圖4所示爲主機B的ARP緩存表。
圖4 主機B的ARP緩存表
4、發送ARP欺騙包
用XCAP發送我們已經構造好的ARP欺騙包。
5、再次查看ARP緩存表
用XCAP發送ARP欺騙包,發送一段時間之後,再次回到主機B查看ARP緩存,看網關的MAC地址是否已經被成功篡改。
3.3 實驗結果
圖5 第一組ARP測試結果
圖6 第二組ARP測試結果
從以上結果可以看出,第一組構造的ARP欺騙包並沒有發生作用,而第二組ARP欺騙包則成功篡改了主機B上的IP-MAC地址記錄,將網關的MAC地址成功篡改爲AA:AA:AA:AA:AA:AA 。當主機B接收到ARP迴應包時,就會對自己的ARP緩存表進行更新,而不會管這個迴應包是否是僞造的。
3.4 結論
主機收到ARP的迴應包就會更新自己的ARP緩存表,而沒有判斷這個迴應包是否是僞造的,從而導致可以利用發送ARP迴應包進行ARP欺騙***。
4.應用及防禦方法
第4章
4.1 應用
關於ARP***,常見的應用有以下幾個:
1、盜號***首先運行ARP***,使你與遊戲斷開連接,在你重新連接的時候,採用鍵盤記錄器或者其他方法將你的遊戲帳號,密碼給記錄下來,併發送到指定的服務器上,從而盜取你的虛擬財產;
2、網管軟件限制未經許可接入網絡的主機與Internet相連。
3、進行信息嗅探,將目標的MAC地址更改爲自己的MAC地址,從而捕獲發往該目標主機的信息,進行信息收集。
4、進行“Man in the middle”***。
還有很多方面的應用,在此就不多說了。
4.2 防禦
1、將常用的IP地址進行MAC綁定,即配置靜態MAC,可用命令,arp -s 來完成;
2、安裝ARP防火牆;
3、清除ARP緩存表(arp -d ),此方法治標不治本;
4、安裝殺毒軟件,定期更新病毒庫,定期查殺病毒。