ARP病毒入侵網路

2023-01-19 14:45:04 字數 4580 閱讀 4188

【故障原因】

區域網內有人使用arp欺騙的木馬程式(比如:傳奇盜號的軟體,某些傳奇外掛程式中也被惡意載入了此程式)。

【故障原理】

要了解故障原理,我們先來了解一下arp協議。

在區域網中,通過arp協議來完成ip位址轉換為第二層實體地址(即mac位址)的。arp協議對網路安全具有重要的意義。通過偽造ip位址和mac位址實現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位址是「這表示向同一網段內的所有主機發出這樣的詢問:

「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欺騙。現在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可以取到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)將壓縮包中的 和解壓縮放到c:下。

2)在windows開始—執行—開啟,輸入cmd(windows98輸入「command」),在出現的dos視窗中輸入:c:

nbtscan -r 192.168.16.1/24(這裡需要根據使用者實際網段輸入),回車。

c:documents and settingsalan>c:

btscan -r 192.168.16.1/24

warning: -r option not supported under windows. 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」。

【解決思路】

1、不要把你的網路安全信任關係建立在ip基礎上或mac基礎上,(rarp同樣存在欺騙的問題),理想的關係應該建立在ip+mac基礎上。

2、設定靜態的mac-->ip對應表,不要讓主機重新整理你設定好的轉換表。

3、除非很有必要,否則停止使用arp,將arp做為永久條目儲存在對應表中。

4、使用arp伺服器。通過該伺服器查詢自己的arp轉換表來響應其他機器的arp廣播。確保這台arp伺服器不被黑。

5、使用""proxy""**ip的傳輸。

6、使用硬體遮蔽主機。設定好你的路由,確保ip位址能到達合法的路徑。(靜態配置路由arp條目),注意,使用交換集線器和網橋無法阻止arp欺騙。

7、管理員定期用響應的ip包中獲得乙個rarp請求,然後檢查arp響應的真實性。

8、管理員定期輪詢,檢查主機上的arp快取。

9、使用防火牆連續監控網路。注意有使用snmp的情況下,arp的欺騙有可能導致陷阱包丟失。

【hiper使用者的解決方案】

建議使用者採用雙向繫結的方法解決並且防止arp欺騙。

1、在pc上繫結路由器的ip和mac位址:

1)首先,獲得路由器的內網的mac位址(例如hiper閘道器位址192.168.16.254的mac位址為0022aa0022aa區域網埠mac位址》)。

2)編寫乙個批處理檔案內容如下:

@echo off

arp -d

arp -s 192.168.16.254 00-22-aa-00-22-aa

將檔案中的閘道器ip位址和mac位址更改為您自己的閘道器ip位址和mac位址即可。

將這個批處理軟體拖到「windows--開始--程式--啟動」中。

ARP協議分析

杜垠萱完成時間 2010 年4 月10日 實驗目的 分析arp address resolution protocol 報文首部格式 分析arp 協議在同一網段內和不同網段間的解析過程 實驗內容 1.在本機上分別執行ping 172.16.52.1 命令和ping 命令,並用wireshark 軟體...

ARP攻擊原理

我們大家都知道,在區域網中,一台主機要和另一台主機進行通訊,必須要知道目標主機的ip位址,但是最終負責在區域網中傳送資料的網絡卡等物理裝置是不識別ip位址的,只能識別其硬體位址即mac位址。mac位址是48位的,通常表示為12個16進製制數,每2個16進製制數之間用 或者冒號隔開,如 00 0b 2...

ARP協議原理分析

arp,全稱address resolution protocol,中文名為位址解析協議,它工作在資料鏈路層,在本層和硬體介面聯絡,同時對上層提供服務。ip資料報常通過乙太網傳送,乙太網裝置並不識別32位ip位址,它們是以48位乙太網位址傳輸乙太網資料報。因此,必須把ip目的位址轉換成乙太網目的位址...