萬盛學電腦網

 萬盛學電腦網 >> 病毒防治 >> 網吧ARP欺騙原理及危害

網吧ARP欺騙原理及危害

  網吧是最常見的局域網,相信很多讀者都曾經到網吧上網沖浪。不過在使用過程中是否出現過別人可以正常上網而自己卻無法訪問任何頁面和網絡信息的情況呢?雖然造成這種現象的情況有很多,但是目前最常見的就是ARP欺騙了,很多黑客工具甚至是病毒都是通過ARP欺騙來實現對主機進行攻擊和阻止本機訪問任何網絡信息的目的,今天筆者就為各位介紹ARP欺騙的原理及危害,讓我們對這個攻擊方式有一個清晰的了解。

  一、什麼是ARP協議?

  ARP協議是“Address Resolution Protocol”(地址解析協議)的縮寫。在局域網中,網絡中實際傳輸的是“幀”,幀裡面是有目標主機的MAC地址的。在以太網中,一個主機要和另一個主機進行直接通信,必須要知道目標主機的MAC地址。但這個目標MAC地址是如何獲得的呢?它就是通過地址解析協議獲得的。所謂“地址解析”就是主機在發送幀前將目標IP地址轉換成目標MAC地址的過程。ARP協議的基本功能就是通過目標設備的IP地址,查詢目標設備的MAC地址,以保證通信的順利進行。所以說從某種意義上講ARP協議是工作在更低於IP協議的協議層。這也是為什麼ARP欺騙更能夠讓人在神不知鬼不覺的情況下出現網絡故障,他的危害更加隱蔽。

  二、ARP欺騙的原理:

  首先我們可以肯定一點的就是發送ARP欺騙包是通過一個惡毒的程序自動發送的,正常的TCP/IP網絡是不會有這樣的錯誤包發送的,而人工發送又比較麻煩。也就是說當黑客沒有運行這個惡毒程序的話,網絡上通信應該是一切正常的,保留在各個連接網絡計算機上的ARP緩存表也應該是正確的,只有程序啟動開始發送錯誤ARP信息以及ARP欺騙包時才會讓某些計算機訪問網絡出現問題。接下來我們來闡述下ARP欺騙的原理。

  第一步:假設這樣一個網絡,一個Hub或交換機連接了3台機器,依次是計算機A,B,C。

  A的地址為:IP:192.168.1.1 MAC: AA-AA-AA-AA-AA-AA B的地址為:IP:192.168.1.2 MAC: BB-BB-BB-BB-BB-BB C的地址為:IP:192.168.1.3 MAC: CC-CC-CC-CC-CC-CC

  第二步:正常情況下在A計算機上運行ARP -A查詢ARP緩存表應該出現如下信息。

  Interface: 192.168.1.1 on Interface 0x1000003 Internet Address Physical Address Type 192.168.1.3 CC-CC-CC-CC-CC-CC dynamic

  第三步:在計算機B上運行ARP欺騙程序,來發送ARP欺騙包。

  B向A發送一個自己偽造的ARP應答,而這個應答中的數據為發送方IP地址是192.168.10.3(C的IP地址),MAC地址是DD-DD-DD-DD-DD-DD(C的MAC地址本來應該是CC-CC-CC-CC-CC-CC,這裡被偽造了)。當A接收到B偽造的ARP應答,就會更新本地的ARP緩存(A可不知道被偽造了)。而且A不知道其實是從B發送過來的,A這裡只有192.168.10.3(C的IP地址)和無效的DD-DD-DD-DD-DD-DD mac地址。

  第四步:欺騙完畢我們在A計算機上運行ARP -A來查詢ARP緩存信息。你會發現原來正確的信息現在已經出現了錯誤。

  Interface: 192.168.1.1 on Interface 0x1000003 Internet Address Physical Address Type 192.168.1.3 DD-DD-DD-DD-DD-DD dynamic

  從上面的介紹我們可以清楚的明白原來網絡中傳輸數據包最後都是要根據MAC地址信息的,也就是說雖然我們日常通訊都是通過IP地址,但是最後還是需要通過ARP協議進行地址轉換,將IP地址變為MAC地址。而上面例子中在計算機A上的關於計算機C的MAC地址已經錯誤了,所以即使以後從A計算機訪問C計算機這個192.168.1.3這個地址也會被ARP協議錯誤的解析成MAC地址為DD-DD-DD-DD-DD-DD的。

  問題也會隨著ARP欺騙包針對網關而變本加厲,當局域網中一台機器,反復向其他機器,特別是向網關,發送這樣無效假冒的ARP應答信息包時,嚴重的網絡堵塞就會開始。由於網關MAC地址錯誤,所以從網絡中計算機發來的數據無法正常發到網關,自然無法正常上網。這就造成了無法訪問外網的問題,另外由於很多時候網關還控制著我們的局域網LAN上網,所以這時我們的LAN訪問也就出現問題了。

  三、ARP欺騙的危害:

  前面也提到了ARP欺騙可以造成內部網絡的混亂,讓某些被欺騙的計算機無法正常訪問內外網,讓網關無法和客戶端正常通信。實際上他的危害還不僅僅如此,一般來說IP地址的沖突我們可以通過多種方法和手段來避免,而ARP協議工作在更低層,隱蔽性更高。系統並不會判斷ARP緩存的正確與否,無法像IP地址沖突那樣給出提示。而且很多黑客工具例如網絡剪刀手等,可以隨時發送ARP欺騙數據包和ARP恢復數據包,這樣就可以實現在一台普通計算機上通過發送ARP數據包的方法來控制網絡中任何一台計算機的上網與否,甚至還可以直接對網關進行攻擊,讓所有連接網絡的計算機都無法正常上網。這點在以前是不可能的,因為普通計算機沒有管理權限來控制網關,而現在卻成為可能,所以說ARP欺騙的危害是巨大的,而且非常難對付,非法用戶和惡意用戶可以隨時發送ARP欺騙和恢復數據包,這樣就增加了網絡管理員查找真凶的難度。那麼難道就沒有辦法來阻止ARP欺騙問題的發生嗎?下篇文章筆者將就這些內容進行講解,讓我們真真正正的和ARP欺騙說再見。

copyright © 萬盛學電腦網 all rights reserved