ARP協議對網絡安全具有重要的意義,今天小編就分享一篇關于ARP故障以及解決的方法給大家吧!感興趣的朋友跟小編一起來了解一下吧!
ARP 協議是"Address Resolution Protocol"(地址解析協議)的縮寫。在局域網中,網絡中實際傳輸的是"幀",幀里面是有目標主機的MAC地址的。在以太網中,一個主機要和另一個 主機進行直接通信,必須要知道目標主機的MAC地址。但這個目標MAC地址是如何獲得的呢?它就是通過地址解析協議獲得的。所謂"地址解析"就是主機在發 送幀前將目標IP地址轉換成目標MAC地址的過程。ARP協議的基本功能就是通過目標設備的IP地址,查詢目標設備的MAC地址,以保證通信的順利進行。
每臺安裝有TCP/IP協議的電腦里都有一個ARP緩存表,表里的IP地址與MAC地址是一一對應的,如下表所示。
主機 IP地址 MAC地址
A 192.168.16.1 aa-aa-aa-aa-aa-aa
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)發送數據為例。當發送數據時,主機A會在自己的ARP緩存 表中尋找是否有目標IP地址。如果找到了,也就知道了目標MAC地址,直接把目標MAC地址寫入幀里面發送就可以了;如果在ARP緩存表中沒有找到相對應 的IP地址,主機A就會在網絡上發送一個廣播,目標MAC地址是"FF.FF.FF.FF.FF.FF",這表示向同一網段內的所有主機發出這樣的詢 問:"192.168.16.2的MAC地址是什么?"網絡上其他主機并不響應ARP詢問,只有主機B接收到這個幀時,才向主機A做出這樣的回 應:"192.168.16.2的MAC地址是bb-bb-bb-bb-bb-bb".這樣,主機A就知道了主機B的MAC地址,它就可以向主機B發送信 息了。同時它還更新了自己的ARP緩存表,下次再向主機B發送信息時,直接從ARP緩存表里查找就可以了。ARP緩存表采用了老化機制,在一段時間內如果 表中的某一行沒有使用,就會被刪除,這樣可以大大減少ARP緩存表的長度,加快查詢速度。
從上面可以看出,ARP協議的基礎就是信任局域網內所 有的人,那么就很容易實現在以太網上的ARP欺騙。對目標A進行欺騙,A去Ping主機C卻發送到了DD-DD-DD-DD-DD-DD這個地址上。如果 進行欺騙的時候,把C的MAC地址騙為DD-DD-DD-DD-DD-DD,于是A發送到C上的數據包都變成發送給D的了。這不正好是D能夠接收到A發送 的數據包了么,嗅探成功。
A對這個變化一點都沒有意識到,但是接下來的事情就讓A產生了懷疑。因為A和C連接不上了。D對接收到A發送給C的數據包可沒有轉交給C.
做"man in the middle",進行ARP重定向。打開D的IP轉發功能,A發送過來的數據包,轉發給C,好比一個路由器一樣。不過,假如D發送ICMP重定向的話就中斷了整個計劃。
D 直接進行整個包的修改轉發,捕獲到A發送給C的數據包,全部進行修改后再轉發給C,而C接收到的數據包完全認為是從A發送來的。不過,C發送的數據包又直 接傳遞給A,倘若再次進行對C的ARP欺騙?,F在D就完全成為A與C的中間橋梁了,對于A和C之間的通訊就可以了如指掌了。
【故障現象】
當局域網內某臺主機運行ARP欺騙的木馬程序時,會欺騙局域網內所有主機和路由器,讓所有上網的流量必須經過病毒主機。其他用戶原來直接通過路由器上網現在轉由通過病毒主機上網,切換的時候用戶會斷一次線。
切換到病毒主機上網后,如果用戶已經登陸了傳奇服務器,那么病毒主機就會經常偽造斷線的假像,那么用戶就得重新登錄傳奇服務器,這樣病毒主機就可以盜號了。
由于ARP欺騙的木馬程序發作的時候會發出大量的數據包導致局域網通訊擁塞以及其自身處理能力的限制,用戶會感覺上網速度越來越慢。當ARP欺騙的木馬程序停止運行時,用戶會恢復從路由器上網,切換過程中用戶會再斷一次線。
【HiPER用戶快速發現ARP欺騙木馬】
在路由器的"系統歷史記錄"中看到大量如下的信息(440以后的路由器軟件版本中才有此提示):
MAC Chged 10.128.103.124
MAC Old 00:01:6c:36:d1:7f
MAC New 00:05:5d:60:c7:18
這個消息代表了用戶的MAC地址發生了變化,在ARP欺騙木馬開始運行的時候,局域網所有主機的MAC地址更新為病毒主機的MAC地址(即所有信息的MAC New地址都一致為病毒主機的MAC地址),同時在路由器的"用戶統計"中看到所有用戶的MAC地址信息都一樣。
如果是在路由器的"系統歷史記錄"中看到大量MAC Old地址都一致,則說明局域網內曾經出現過ARP欺騙(ARP欺騙的木馬程序停止運行時,主機在路由器上恢復其真實的MAC地址)。
【在局域網內查找病毒主機】
在上面我們已經知道了使用ARP欺騙木馬的主機的MAC地址,那么我們就可以使用NBTSCAN(最新nbtscan下載地址:http://www.inetcat.net/software/nbtscan.html,點擊Download NBTscan binaries for Win32 )工具來快速查找它。
NBTSCAN可以取到PC的真實IP地址和MAC地址,如果有"傳奇木馬"在做怪,可以找到裝有木馬的PC的IP/和MAC地址。
命令:"nbtscan -r 192.168.16.0/24"(搜索整個192.168.16.0/24網段, 即
192.168.16.1-192.168.16.254); 或"nbtscan 192.168.16.25-137"搜索192.168.16.25-137 網段,即192.168.16.25-192.168.16.137.輸出結果第一列是IP地址,最后一列是MAC地址。
NBTSCAN的使用范例:
假設查找一臺MAC地址為"000d870d585f"的病毒主機。
1)將壓縮包中的nbtscan.exe 和cygwin1.dll解壓縮放到c:/下。
2)在Windows開始-運行-打開,輸入cmd(windows98輸入"command"),在出現的DOS窗口中輸入:C:/nbtscan -r 192.168.16.1/24(這里需要根據用戶實際網段輸入),回車。
C:/Documents and Settings/ALAN>C:/nbtscan -r 192.168.16.1/24
Warning: -r option not supported underWindows. Running without it.
Doing NBT name scan for addresses from 192.168.16.1/24
IP address NetBIOS Name Server User MAC address
----------------------------------------------
192.168.16.0 Sendto failed: Cannot assign requested address
192.168.16.50 SERVER 00-e0-4c-4d-96-c6
192.168.16.111 LLF ADMINISTRATOR 00-22-55-66-77-88
192.168.16.121 UTT-HIPER 00-0d-87-26-7d-78
192.168.16.175 JC 00-07-95-e0-7c-d7
192.168.16.223 test123 test123 00-0d-87-0d-58-5f
3)通過查詢IP--MAC對應表,查出"000d870d585f"的病毒主機的IP地址為"192.168.16.223".
以上就是ARP故障以及解決的方法了,更多相關內容請繼續關注武林技術頻道。
新聞熱點
疑難解答