BAT批處理解決ARP***

   現在局域網中感染ARP病毒的情況比較多,清理和防範都比較困難,給不少的網絡管理員造成了很多的困擾。下面就是個人在處理這個問題的一些經驗,同時也在網上翻閱了不少的參考資料。

 ARP病毒的症狀
 有時候無法正常上網,有時候有好了,包括訪問網上鄰居也是如此,拷貝文件無法完成,出現錯誤;局域網內的ARP包爆增,使用ARP查詢的時候會發現不正常的MAC地址,或者是錯誤的MAC地址對應,還有就是一個MAC地址對應多個IP的情況也會有出現。
 ARP***的原理
 ARP欺騙***的包一般有以下兩個特點,滿足之一可視爲***包報警:第一以太網數據包頭的源地址、目標地址和ARP數據包的協議地址不匹配。或者,ARP數據包的發送和目標地址不在自己網絡網卡MAC數據庫內,或者與自己網絡MAC數據庫MAC/IP不匹配。這些統統第一時間報警,查這些數據包(以太網數據包)的源地址(也有可能僞造),就大致知道那臺機器在發起***了。現在有網絡管理工具比如網絡執法官、P2P終結者也會使用同樣的方式來僞裝成網關,欺騙客戶端對網關的訪問,也就是會獲取發到網關的流量,從而實現網絡流量管理和網絡監控等功能,同時也會對網絡管理帶來潛在的危害,就是可以很容易的獲取用戶的密碼等相關信息。
處理的辦法:
寫個腳本提供大家參考,解決局域網內部的APR***
  c:
   cd\
   if exist ipconfig.txt del ipconfig.txt
   ipconfig /all >c:\ipconfig.txt //獲取本地MAC地址
   if exist GateMac.txt del GateMac.txt
   arp -a %GateIP% >c:\GateMac.txt
   for /f "skip=3 tokens=2"%%H in(GateMac.txt)do set GateMac=%%H //獲取出口路由(即網關)的MAc地址
   if exist GateIP.txt del GateIP.txt
   find "Default Gateway" ipconfig.txt >c:\GateIP.txt
   for /f "skip=2 tokens=13"%%G in (GateIP.txt) do set GateIP=%%G
   echo set Ws= Wscript.Createobject("Wscript.Shell") >c:\banding.vbs
   echo count =0>>banding.vbs
   echo for each ps in getobject("winmgmts:\\.\root\cimv2:win32_process").instances_>>banding.vbs
   
   間隔6秒重新將網關的IP地址與MAC地址進行綁定
   echo if ps.name="wscript.exe" then count=count+1>>banding.vbs
   echo if count >2 then wscript.quit>>banding.vbs
   echo i=1 >>banding.vbs
   echo for i= 1 to 5>>banding.vbs
   echo i=i-1>>banding.vbs
   echo Wscript.sleep(1000*60*0.1)每6秒鐘綁定一次 >>banding.vbs
   echo ws.run "arp-d",0>>banding.vbs
   echo ws.run "arp -s %GateIP% %GateMac%",0>>banding.vbs
   echo next >>banding.vbs
 
 
   清除ARP緩存,重新將本機的Ip地址與MAC地址進行綁定
   
    c:
    cd \
    start banding.vbs
    del /f /q GateMac.txt
    del /f /q ipconfig.txt
    del /f /q GateIP.txt
    copy banding.vbs c:\ windows\system32
    echo Windows Registry Editor Version 5.00 >c:\arp.reg
    echo.>>arp.reg
    echo [HKEY_LOC AL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]>>arp.reg
    echo "arptom"="c:\\windows\\system32\\banding.vbs">>arp.reg
    regedit -is arp.reg
    del /f /q arp.reg
    del /f /q banding.vbs
    exit
 
 把這些代碼複製放入記事本,後綴名保存爲.bat
 適合各種環境
 
 
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章