解決ARP欺騙和攻擊的方法

拾荒者

在局域網中,通信前必須通過ARP協議來完成IP地址轉換為第二層物理地址(即MAC地址)。ARP協議對網絡安全具有重要的意義。通過偽造IP地址和MAC地址實現ARP欺騙,對網絡的正常傳輸和安全都是一個很嚴峻的考驗。
“又掉線了?。?!”每當聽到客戶的抱怨聲一片響起,網管員就坐立不安。其實,此起彼伏的瞬間掉線或大面積的斷網大都是ARP欺騙在作怪。ARP欺騙攻擊已經成了破壞網吧經營的罪魁禍首,是網吧老板和網管員的心腹大患。
目前知道的帶有ARP欺騙功能的軟件有“QQ第六感”、“網絡執法官”、“P2P終結者”、“網吧傳奇殺手”等,這些軟件中,有些是人為手工操作來破壞網絡的,有些是做為病毒或者木馬出現,使用者可能根本不知道它的存在,所以更加擴大了ARP攻擊的殺傷力。
從影響網絡連接通暢的方式來看,ARP欺騙有兩種攻擊可能,一種是對路由器ARP表的欺騙;另一種是對內網電腦ARP表的欺騙,當然也可能兩種攻擊同時進行。不管理怎么樣,欺騙發送后,電腦和路由器之間發送的數據可能就被送到錯誤的MAC地址上,從表面上來看,就是“上不了網”,“訪問不了路由器”,“路由器死機了”,因為一重啟路由器,ARP表會重建,如果ARP攻擊不是一直存在,就會表現為網絡正常,所以網吧業主會更加確定是路由器“死機”了,而不會想到其他原因。為此,寬帶路由器背了不少“黑鍋”,但實際上應該ARP協議本身的問題。好了,其他話就不多說,讓我們來看看如何來防止ARP的欺騙吧。
上面也已經說了,欺騙形式有欺騙路由器ARP表和欺騙電腦ARP兩種,我們的防護當然也是兩個方面的,首先在路由器上進行設置,來防止路由器的ARP表被惡意的ARP數據包更改;其次,我們也會在電腦上進行一下設置,來防止電腦的ARP表受惡意更改。兩個方面的設置都是必須的,不然,如果您只設置了路由器的防止ARP欺騙功能而沒有設置電腦,電腦被欺騙后就不會把數據包發送到路由器上,而是發送到一個錯誤的地方,當然無法上網和訪問路由器了。
一、設置前準備
當使用了防止ARP欺騙功能(IP和MAC綁定功能)后,最好是不要使用動態IP,因為電腦可能獲取到和IP與MAC綁定條目不同的IP,這時候可能會無法上網,通過下面的步驟來避免這一情況發生吧。
1.把路由器的DHCP功能關閉:打開路由器管理界面,“DHCP服務器”->“DHCP服務”,把狀態由默認的“啟用”更改為“不啟用”,保存并重啟路由器。
2.給電腦手工指定IP地址、網關、DNS服務器地址,如果您不是很清楚當地的DNS地址,可以咨詢您的網絡服務商。
二、設置路由器防止ARP欺騙
目前這一功能只有在R480T的最新Beta版升級程序中有,公測正常后會在所有企業級路由器上增加這一功能。打開路由器的管理界面可以看到如下的左側窗口:
可以看到比之前的版本多出了“IP與MAC綁定”的功能,這個功能除了可以實現IP和MAC綁定外,還可以實現防止ARP欺騙功能。
打開“靜態ARP綁定設置”窗口如下:
注意,默認情況下ARP綁定功能是關閉,請選中啟用后,點擊保存來啟用。
打開“ARP映射表”窗口如下:
這是路由器動態學習到的ARP表,可以看到狀態這一欄顯示為“未綁定”。如果確認這一個動態學習的表沒有錯誤,也就是說當時不存在arp欺騙的情況下(如果網絡是正常運行的,而且不同的IP對應的MAC地址不一樣,一般是沒有錯誤的),我們把這一個表進行綁定,并且保存為靜態表,這樣路由器重啟后這些條目都會存在,達到一勞永逸的效果。
點擊“全部綁定”,可以看到下面界面:
可以看到狀態中已經為已綁定,這時候,路由器已經具備了防止ARP欺騙的功能,上面的示范中只有三個條目,如果您的電腦多,操作過程也是類似的。有些條目如果沒有添加,也可以下次補充上去。除了這種利用動態學習到的ARP表來導入外,也可以使用手工添加的方式,只要知道電腦的MAC地址,手工添加相應條目就可。
為了讓下一次路由器重新啟動后這些條目仍然存在,我們點擊了“全部導入”,然后再次打開“靜態ARP綁定設置”窗口:
可以看到靜態條目已經添加,而且在綁定這一欄已經打上勾,表示啟用相應條目的綁定。到此,我們已經成功設置路由器來防止192.168.1.111、192.168.1.112、222.77.77.1這三個IP受ARP欺騙的攻擊,如果有更多的電腦,只是條目數不同,設置過程當然是一樣的,不是很難吧?
三、設置電腦防止ARP欺騙
路由器已經設置了防止ARP欺騙功能,接下來我們就來設置電腦的防止ARP欺騙了。微軟的操作系統中都帶有ARP這一命令行程序,我們可以在windows的命令行界面來使用它。打開windows的命令行提示符如下:
通過“arp-s +路由器IP如192.168.1.1+路由器的MAC地址”這一條命令來實現對路由器的ARP條目的靜態綁定,可以看到在arp -a 命令的輸出中,已經有了我們剛才添加的條目,Type類型為static表示是靜態添加的。至此,我們也已經設置了電腦的靜態ARP條目,這樣電腦發送到路由器的數據包就不會發送到錯誤的地方去了。
怎么知道路由器的MAC地址是多少呢?可以打開路由器的管理界面,進入“網絡參數”->“LAN口設置”:
LAN口的MAC地址就是電腦的網關的MAC地址。
細心的人可能已經發現了,如果使用上面的方法,電腦每次在重啟后都需要輸入上面的命令來實現防止ARP欺騙,有沒有更簡單的方法自動來完成,不用手工輸入呢?有!
我們可以新建一個批處理文件如static_arp.bat,注意后綴名為bat。編輯它,在里面加入我們剛才的命令:
保存就可以了,以后可以通過雙擊它來執行這條命令,還可以把它放置到系統的啟動目錄下來實現啟動時自己執行。打開電腦“開始”->“程序”,雙擊“啟動”打開啟動的文件夾目錄,把剛才建立的static_arp.bat復制到里面去:
好了,以后電腦每次啟動時就會自己執行arp –s命令了,網吧網管和老板終于可以好好休息一下,不再受到ARP攻擊的干擾
站內更新:2020-07-09 10:43
山西快乐十分开奖 今天