【摘 要】在局域網中,通過ARP協議能完成IP地址轉換為第二層物理地址(即MAC地址)。通過偽造IP地址和MAC地址實現ARP欺騙,能夠在網絡中產生大量的ARP通信量使網絡阻塞。可見ARP協議對網絡安全具有重要的意義。
【關鍵詞】ARP協議;ARP欺騙;ARP防范
一、ARP協議概述
ARP協議是“Address Resolution Protocol”(地址解析協議)的縮寫。所謂“地址解析”就是主機在發送數據包前將目標主機IP地址轉換成目標主機MAC地址的過程。在局域網中,一臺主機要和另一臺主機進行通信,必須要知道目標主機的IP地址,但是最終負責在局域網中傳送數據的網卡等物理設備是不識別IP地址的,只能識別其硬件地址即MAC地址。MAC地址是48位的,通常表示為12個16進制數,每2個16進制數之間用“——”或者冒號隔開,如:00-0C-76-2F-E5-EA就是一個MAC地址。每一塊網卡都有其全球唯一的MAC地址,網卡之間發送數據,只能根據對方網卡的MAC地址進行發送,這時就需要一個將高層數據包中的IP地址轉換成低層MAC地址的協議,而這個重要的任務將由ARP協議完成。
二、ARP工作原理
首先,每臺主機都會在自己的ARP緩沖區(ARP Cache)中建立一個ARP列表,以表示IP地址和MAC地址的對應關系。當源主機需要將一個數據包要發送到目的主機時,會首先檢查自己ARP列表中是否存在該IP地址對應的MAC地址,如果有﹐就直接將數據包發送到這個MAC地址;如果沒有,就向本地網段發起一個ARP請求的廣播包,查詢此目的主機對應的MAC地址。此ARP請求數據包里包括源主機的IP地址、硬件地址、以及目的主機的IP地址。網絡中所有的主機收到這個ARP請求后,會檢查數據包中的目的IP是否和自己的IP地址一致。如果不相同就忽略此數據包;如果相同,該主機首先將發送端的MAC地址和IP地址添加到自己的ARP列表中,如果ARP表中已經存在該IP的信息,則將其覆蓋,然后給源主機發送一個ARP響應數據包,告訴對方自己是它需要查找的MAC地址;源主機收到這個ARP響應數據包后,將得到的目的主機的IP地址和MAC地址添加到自己的ARP列表中,并利用此信息開始數據的傳輸。如果源主機一直沒有收到ARP響應數據包,表示ARP查詢失敗。
三、ARP欺騙概述
(1)ARP欺騙原理的分類。從影響網絡連接通暢的方式來看,ARP欺騙分為二種,一種是對路由器ARP表的欺騙;另一種是對內網PC的網關欺騙。第一種ARP欺騙的原理是——截獲網關數據。它通知路由器一系列錯誤的內網MAC地址,并按照一定的頻率不斷進行,使真實的地址信息無法通過更新保存在路由器中,結果路由器的所有數據只能發送給錯誤的MAC地址,造成正常PC無法收到信息。第二種ARP欺騙的原理是——偽造網關。它的原理是建立假網關,讓被它欺騙的PC向假網關發數據,而不是通過正常的路由器途徑上網。在PC看來,就是上不了網了——網絡掉線了。(2)ARP欺騙新的表現形式。現在又新出現了一種ARP病毒,與以前的一樣的是,該類ARP病毒也是向全網發送偽造的ARP欺騙廣播,自身偽裝成網關。但區別是,它著重的不是對網絡游戲數據包的解密,而是對于HTTP請求訪問的修改。還是以上面的局域網環境舉例,如果局域網中一臺電腦B要請求某個網站頁面,如想請求www.sina.com.cn這個網頁,這臺電腦會先向網關發送HTTP請求,說:“我想登陸www.sina.com.cn網頁,請你將這個網頁下載下來,并發送給我?!边@樣,網關就會將www.sina.com.cn頁面下載下來,并發送給B電腦。這時,如果A這臺電腦通過向全網發送偽造的ARP欺騙廣播,自身偽裝成網關,成為一臺ARP中毒電腦的話,這樣當B電腦請求WEB網頁時,A電腦先是“好心好意”地將這個頁面下載下來,然后發送給B電腦,但是它在返回給B電腦時,會向其中插入惡意網址連接!該惡意網址連接會利用MS06-014和MS07-017等多種系統漏洞,向B電腦種植木馬病毒!同樣,如果C電腦也是請求WEB頁面訪問,A電腦同樣也會給C電腦返回帶毒的網頁,這樣,如果一個局域網中存在這樣的ARP病毒電腦的話,頃刻間,整個網段的電腦將會全部中毒!
四、關于ARP欺騙的防范對策與建議
(1)找到感染ARP病毒的機器。在電腦上ping一下網關的IP 地址,然后使用ARP-a 的命令看得到的網關對應的MAC 地址是否與實際情況相符,如不符,可去查找與該MAC 地址對應的電腦。(2)IP地址和MAC地址綁定。ARP-S 可在MS-DOS窗口下運行以下命令:ARP -S手工綁定網關IP和網關MAC。靜態綁定,就可以盡可能的減少攻擊了。(3)給系統打上安全補丁。在全網的電腦都打上MS06-014和MS07-017這兩個補丁,包括所有的客戶端和服務器,以免感染網頁木馬。(4)利用殺毒軟件。部署網絡版的殺毒軟件,定期升級病毒庫,定期全網殺毒;使用防火墻連續監控網絡。注意有使用SNMP的情況下,ARP的欺騙有可能導致陷阱包丟失。