虚拟网关解决ARP攻击

网络技术    2009-11-29 13:26  

  今天VBS群里有人要了解ARP攻击,ARP攻击盛行于局域网,找了这个BAT,对付ARP攻击。

  网上流行一个vbs的虚拟网关,也有斯普林的程式的,这个是批处理,加开机批处理,爽到不行了!

  @echo off

  FOR /F “usebackq eol=; tokens=2 delims=:” %%I in (`ipconfig /all^|find /i “IP Address”`) do set IP=%%I

  FOR /F “usebackq eol=; tokens=2 delims=:” %%I in (`ipconfig /all^|find /i “Physical Address”`) do set MAC=%%I

  ’第一行是读取本机的IP地址,第二行是读取本机的MAC地址

  Set /a a=%RANDOM%/128

  Set /a b=%RANDOM%/128

  Set IPhead=172.16

  Set GatewayIP=%IPhead%.%a%.%b%

  ’这四行是生成一个172.16开头的随机网关IP地址

  我自己的内网网段为172.16.0.0,所以设成这样

  (若想生成192.168.1.X网段的IP,可改成如下

  Set /a a=%RANDOM%/128

  Set IPhead=192.168.1

  Set GatewayIP=%IPhead%.%a%

  若想限制生成的随机IP范围在192.168.1.100-192.168.1.255之间,可改成如下

  :start

  Set /a a=%RANDOM%/128

  IF %a% LEQ 100 goto start

  ’这样就可以限制a比100大

  ’EQU - 等于,NEQ - 不等于,LSS - 小于,LEQ - 小于或等于,GTR - 大于,GEQ - 大于或等于

  ’要限制在其他范围的话,自己改一下代码吧

  Set IPhead=192.168.1

  Set GatewayIP=%IPhead%.%a%

  Set GatewayMAC=00-0f-e2-3e-b6-66

  ’这里的是真实的网关MAC地址

  arp -d

  arp -s %IP% %MAC%“

  ’静态绑定本机IP和本机MAC地址

  arp -s %GatewayIP% %GatewayMAC%”

  ’静态绑定随机生成的网关IP和真实的网关MAC地址

  route delete 0.0.0.0

  route add 0.0.0.0 mask 0.0.0.0 %GatewayIP% metric 1

  ’删除原先的默认路由,定义默认路由指向随机生成的网关IP

  4.手动修改网内所有PC的网关地址为一个不存在的IP

  如果更换了网关设备,你只需改动Server服务器中的脚本即可,不用到每台客户机去修改

  原理简单分析:

  PART I.ARP病毒攻击手段一是向网内其它PC谎称“网关IP地址对应的MAC地址是aa-bb-cc-dd-ee-ff”;

  例:PC1骗PC2、PC3说“网关192.168.1.1的MAC地址为11-11-11-11-11-11”,192.168.1.1是PC1用IPCONFIG命令查看到的网关地址,PC2、PC3信以为真,在各自的ARP表中添加一个ARP条目“192.168.1.1 11-11-11-11-11-11”,但是PC2、PC3上网的网关地址并不是192.168.1.1,而是随机生成的那个IP地址,所以即使受骗了也不要紧,依然可以正常上网;

  ARP病毒攻击手段二是向网关谎称“PC1的MAC地址是bb-cc-dd-ee-ff-gg”,“PC2的MAC地址是cc-dd-ee-ff-gg-hh”之类;

  例:PC1骗网关地址192.168.1.1说“PC2的MAC地址为22-22-22-22-22-22”,但192.168.1.1是随便改的一个不存在的IP地址,所以不会有机器上当受骗

  PART II.默认路由里指向的网关MAC地址正确,就确保了所有发向外网的数据包可以顺利发送到真实的网关;

  总结:

  理论上说,用上面的方法去绑定所有的客户机(注意要一台不漏喔),不在路由上绑也是可以的;实践中还要等你测试过之后跟我说效果;

  有条件的话,最好在路由或者交换机里面绑定所有客户机的IP和MAC,这样ARP欺骗应该就可以完美解决的了.

在线留言

我要留言