秦文義
(齊魯工業(yè)大學金融學院,山東 濟南 250100)
發(fā)生ARP攻擊時可能出現(xiàn)的現(xiàn)象有:
1.1 網速時快時慢,極其不穩(wěn)定,計算機和交換機重啟后網速能恢復正常
1.2 局域網內頻繁性區(qū)域或整體掉線,web服務器不能正常訪問
1.3 網上銀行、游戲及QQ賬號的頻繁丟失
1.4 ping外網出現(xiàn)長時間延遲,甚至大量丟包,而ping內網其它ip地址則比較暢通
1.5 單機通過光纖外ping暢通
ARP(Address Resolution Protocol)即地址解析協(xié)議,是根據 IP地址獲取物理地址的一個TCP/IP協(xié)議。其功能是:主機將ARP請求廣播到網絡上的所有主機,并接收返回消息,確定目標IP地址的物理地址,同時將IP地址和硬件地址存入本機ARP緩存中,下次請求時直接查詢ARP緩存,當查詢不到目標計算機mac地址的時候才發(fā)廣播查詢。在局域網所有的計算機都是可信的情況下,它是十分高效的,大大的減少了網內目標地址的查詢,從而減少了網絡流量,提高了效率。同時Arp協(xié)議也是一種無狀態(tài)的協(xié)議,存在嚴重的漏洞。因為它從不檢查收到數據包是不是自己請求過的應答包,也不管應答包是不是合法的,只要目標地址和自己的mac相同便接收,并對請求作出回答。
計算機會不斷刷新ARP表以確保ARP表的有效性,所以當網絡中存在欺騙包時,會被輕而易舉的接收,并將欺騙包的ip、mac地址刷新到ARP表中。
Arp攻擊主要分為以下幾類:
3.1 網關仿冒
攻擊者或病毒發(fā)送偽造的網關arp報文,把同網段內其他終端的網關mac重定向到錯誤的mac地址,導致其它用戶不能正常上網。
3.2 欺騙網關
攻擊者發(fā)送mac和ip地址對應關系給網關,導致網關和終端用戶無法通訊。
3.3 攻擊者發(fā)送錯誤的終端用戶/服務器的IP+MAC的對應關系給受害的終端用戶,導致同網段內兩個終端用戶之間無法正常通信。
3.4 ARP 泛洪攻擊
攻擊者偽造大量不同ARP報文在同網段內進行廣播,導致網關ARP表項被占滿,合法用戶的ARP表項無法正常學習,導致合法用戶無法正常訪問外網。
3.5 其他高級ARP攻擊,如網絡終結者攻擊等。
防止ARP攻擊是一向比較繁瑣的工作,通常的做法有以下幾種:
4.1 ARP防火墻
現(xiàn)在幾乎所有的計算機防火墻軟件都有類似的功能,例如360安全衛(wèi)士,金山衛(wèi)士,瑞星等,只要開啟相應功能即可。終端安裝arp防火墻是現(xiàn)在比較通俗的辦法。
4.2 修改系統(tǒng)拒收ICMP重定向報文關閉icmp協(xié)議
為了應對不同網段的攻擊,我們可以關閉icmp路由重定向協(xié)議,可以將以下文本復制到文本文件,并將該文本重命名為”.reg”,雙擊該文件,將該文件導入注冊表即可。
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetSer-
vicesTCPIPParamtersInterfaces]
"PerformRouterDiscovery"=dword:00000000
4.3 網內ip、mac地址雙向綁定
由于內網可能涉及到的計算機數量會比較大,雙向綁定ip、mac工作量介乎無法完成,同時由于計算機重啟后,arp路由表會被清除,需要重新建立,所以可以考慮使用批處理來解決,并且把運行的文件加入到開機運行中,便能夠很好地解決這個問題。以下代碼可供參考(假設已知內網網關ip、mac地址):
@echo off
if"%1"=="h"goto begin
start mshta vbscript:createobject("wscript.shell").run("""%~nx0""h",0)
(window.close)&&exit
:begin
if not exist%0"%USERPROFILE%「開始」菜單 程序 啟動 "copy
%0"%USERPROFILE%「開始」菜單程序啟動 "
arp-d
ipconfig/all>ipconfig.txt
arp-s網關ip網關mac
for/f"tokens=15"%%i in('find"IP Address"ipconfig.txt')do set ip=%
%i
for/f"tokens=12"%%i in ('find"Physical Address"ipconfig.txt')do set
mac=%%i
arp-s%ip%%mac%
del ipconfig.txt
del arp.txt
exit
只要將以上代碼以文本文件保存,并將文本擴展名重命名為“.bat”,放到C盤根目錄運行一次即可。
4.4 刪除ARP攻擊需要的文件npptools.Dll
4.5 網絡入口做安全設定
在接入internet網的防火墻或三層交換機做好網內靜態(tài)mac地址ip地址綁定等安全策略。
找到并消除內網ARP攻擊源頭是網管最緊迫的工作,以下為攻擊源查找的幾種方法。
5.1 利用命令查找
可以利用ARP命令查看本地ARP緩存,看一下網關mac和ip對應關系,找到網關的ip、mac對應項,檢查網關mac地址,如網關被篡改,利用“nbtscan-r 192.168.1.0/24”(假設網段為 192.168.1.*)掃描網段,找出假冒網關的真實ip地址;如果攻擊之前保存有ip、mac地址對應表,可以通過mac地址直接查找相應的ip。
也可以利用tracert命令,跟蹤一個外網地址,網關是192.168.1.1,如果命令第一跳為192.168.1.89,則第一跳ip即攻擊源(假定內網無二次路由)。
5.2 網卡模式檢測
Arp攻擊源的網卡狀態(tài)會處于混雜模式,在這種模式下,他能夠接收任何經過它的數據包,通過掃描網卡狀態(tài)可以查找網內多個攻擊源、定向攻擊源等。相應的軟件有:聚生網管等
5.3 利用流量檢測軟件進行數據包流量分析
對于網內的ARP泛洪攻擊等也可以進行抓包及流量分析確定攻擊源,當某個ip頻繁向外發(fā)送大量廣播包,流量是其他ip流量的一倍以上,可以確定為疑似攻擊源,相應軟件如sniffer等。
了解ARP攻擊原理并利用各種手段消除攻擊源是網管員面臨的難題,所以我們要時刻研究關注和交流相關技術發(fā)展及防御技術的手段,以免更高級的攻擊給我們造成不必要的損失。
[1]張金榮,劉曉輝.網管天下:網絡管理工具實用詳解[M].3 版.ISBN:9787121148057,電子工業(yè)出版社.
[2]張媛媛,侯建濤.ARP攻擊和ARP欺騙的原理及其解決方案[M].煤炭技術出版社,2010,29(11).