• 軟體損壞資料救援
    誤分割、誤格式化、誤ghost、駭客攻擊、PQ調整失敗等...
  • 硬體損壞資料救援
    電路板芯片燒壞,不認碟、碟體書寫錯誤等...
  • 伺服器資料救援
    磁碟陣列RAID0 、RAID1、RAID1+0、NAS、SAN 、JBO
  • 筆電資料救援
    東芝、日立、邁拓、三星、富士通、昆騰、筆記型等...
  • RAID資料救援
    對RAID0、RAID1、RAID1E、RAID5E、RAID6等救援...
  • 硬碟資料救援
    IDE、SCSI、S-ATA介面的IBM、易拓,昆騰硬碟,移動硬碟...
目前位置: 首頁 > 新聞中心 > 儲存資訊

專家為您支招 如何防止局域網內ARP欺騙

【賽迪網-IT技術報道】本文對於ARP欺騙,提出幾點加強安全防範的措施。環境是主機或者網關是基於Linux/BSD的。

一、理論前提

本著「不冤枉好人,不放過一個壞人的原則」,先說說我的一些想法和理論依據。首先,大家肯定發送ARP欺騙包肯定是一個惡毒的程序自動發送的,正常的TCP/IP網絡是不會有這樣的錯誤包發送的。這就假設,如果犯罪嫌疑人沒有啟動這個破壞程序的時候,網絡環境是正常的,或者說網絡的ARP環境是正常的,如果我們能在犯罪嫌疑人啟動這個犯罪程序的第一時間,一開始就發現了他的犯罪活動,那麼就是人贓俱在,不可抵賴了,因為剛才提到,前面網絡正常的時候證據是可信和可依靠的。好,接下來我們談論如何在第一時間發現他的犯罪活動。

ARP欺騙的原理如下:

假設這樣一個網絡,一個Hub接了3台機器

HostA HostB HostC 其中

A的地址為:IP:192.168.10.1 MAC: AA-AA-AA-AA-AA-AA

B的地址為:IP:192.168.10.2 MAC: BB-BB-BB-BB-BB-BB

C的地址為:IP:192.168.10.3 MAC: CC-CC-CC-CC-CC-CC

正常情況下 C:/arp -a

Interface: 192.168.10.1 on Interface 0x1000003

Internet Address Physical Address Type

192.168.10.3 CC-CC-CC-CC-CC-CC dynamic

現在假設HostB開始了罪惡的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地址,沒有和犯罪分子B相關的證據,哈哈,這樣犯罪分子豈不樂死了。

現在A機器的ARP緩存更新了:

C:/>arp -a

Interface: 192.168.10.1 on Interface 0x1000003

Internet Address Physical Address Type

192.168.10.3 DD-DD-DD-DD-DD-DD dynamic

這可不是小事。局域網的網絡流通可不是根據IP地址進行,而是按照MAC地址進行傳輸。現在192.168.10.3的MAC地址在A上被改變成一個本不存在的MAC地址。現在A開始Ping 192.168.10.3,網卡遞交的MAC地址是DD-DD-DD-DD-DD-DD,結果是什麼呢?網絡不通,A根本不能Ping通C!!

所以,局域網中一台機器,反覆向其他機器,特別是向網關,發送這樣無效假冒的ARP應答信息包,NND,嚴重的網絡堵塞就開始了!網吧管理員的噩夢開始了。我的目標和任務,就是第一時間,抓住他。不過從剛才的表述好像犯罪分子完美的利用了以太網的缺陷,掩蓋了自己的罪行。但其實,以上方法也有留下了蛛絲馬跡。儘管,ARP資料包沒有留下HostB的地址,但是,承載這個ARP包的ethernet幀卻包含了HostB的源地址。而且,正常情況下ethernet資料幀中,幀頭中的MAC源地址/目標地址應該和幀資料包中ARP信息配對,這樣的ARP包才算是正確的。如果不正確,肯定是假冒的包,可以提醒!但如果匹配的話,也不一定代表正確,說不定偽造者也考慮到了這一步,而偽造出符合格式要求,但內容假冒的ARP資料包。不過這樣也沒關係,只要網關這裡擁有本網段所有MAC地址的網卡資料庫,如果和Mac資料庫中資料不匹配也是假冒的ARP資料包。也能提醒犯罪分子動手了。

二、防範措施

1. 建立DHCP伺服器(建議建在網關上,因為DHCP不佔用多少CPU,而且ARP欺騙攻擊一般總是先攻擊網關,我們就是要讓他先攻擊網關,因為網關這裡有監控程序的,網關地址建議選擇192.168.10.2 ,把192.168.10.1留空,如果犯罪程序愚蠢的話讓他去攻擊空地址吧),另外所有客戶機的IP地址及其相關主機信息,只能由網關這裡取得,網關這裡開通DHCP服務,但是要給每個網卡,綁定固定唯一IP地址。一定要保持網內的機器IP/MAC一一對應的關係。這樣客戶機雖然是DHCP取地址,但每次開機的IP地址都是一樣的。

2. 建立MAC資料庫,把網吧內所有網卡的MAC地址記錄下來,每個MAC和IP、地理位置統統裝入資料庫,以便及時查詢備案。

3. 網關機器關閉ARP動態刷新的過程,使用靜態路郵,這樣的話,即使犯罪嫌疑人使用ARP欺騙攻擊網關的話,這樣對網關也是沒有用的,確保主機安全。

網關建立靜態IP/MAC捆綁的方法是:建立/etc/ethers文件,其中包含正確的IP/MAC對應關係,格式如下:

192.168.2.32 08:00:4E:B0:24:47

然後再/etc/rc.d/rc.local最後添加:

arp -f 生效即可

4. 網關監聽網絡安全。網關上面使用TCPDUMP程序截取每個ARP程序包,弄一個腳本分析軟體分析這些ARP協議。ARP欺騙攻擊的包一般有以下兩個特點,滿足之一可視為攻擊包報警:第一以太網資料包頭的源地址、目標地址和ARP資料包的協議地址不匹配。或者,ARP資料包的發送和目標地址不在自己網絡網卡MAC資料庫內,或者與自己網絡MAC資料庫 MAC/IP 不匹配。這些統統第一時間報警,查這些資料包(以太網資料包)的源地址(也有可能偽造),就大致知道那台機器在發起攻擊了。

5. 偷偷摸摸的走到那台機器,看看使用人是否故意,還是被任放了什麼木馬程序陷害的。如果後者,不聲不響的找個借口支開他,拔掉網線(不關機,特別要看看Win98里的計劃任務),看看機器的當前使用記錄和運行情況,確定是否是在攻擊。

(

加入好友line@vga9721w
線上客服
@hd119