linux下防范ARP欺骗攻击

      前两天家里的网断断续续,发现有人在用arp欺骗,其实真正碰到有人在攻击的几率不大,大部分原因都是有人在用win下的诸如“P2P终结者”这样的软件导致的。再怎么bs那人也是没有用的,问题还是要解决,win下倒是好办,现成的软件多的是 ,linux下面就要自己动手了^^。

      arp欺骗的原理不多述,基本就是利用发 送假的arp数据包,冒充网关。一般在网上通讯的时候网关的IP和MAC的绑定是放在arp 缓存里面的,假的arp包就会刷新这个缓存,导致本该发送到网关的数据包发到了欺骗 者那里。解决的办法就是静态arp。

      假设网关的IP是192.168.0.1,我们要 先得到网关的正确MAC,先ping一下网关:

ping 192.168.0.1

      然后运行arp查看arp缓存中的网关MAC:

localhost~$ arpAddress       HWtype  HWaddress        Flags Mask   

Interface192.168.0.1   ether  00:12:34:56:78:9A    C             eth0

      这里得到的网关MAC假定 为00:12:34:56:78:9A,C代表这个绑定是保存在缓冲里的,我们要做的就是把这个IP和 MAC静态的绑定在一起,首先建立/etc/ethers文件,输入以下内容:

192.168.0.1 00:12:34:56:78:9A

      保存退出,之后便是应 用这个静态绑定:

localhost~$ arp -f

      再运行arp查看:

localhost~$ arpAddress       HWtype  HWaddress        Flags Mask   

Interface192.168.0.1   ether  00:12:34:56:78:9A    CM            eth0

      多了个M,表示静态网关 ,OK收工~

      另外,如果你不会和局域网内的用户通讯的话,那么可以干脆 把arp解析关掉,假定你的网卡是eth0,那么可以运行:

localhost~$ ifconfig eth0 -arp

      这样对付那些终结者软件就可以了,但是真的有人想攻击的话,这样还是不够的,因为攻击者还可以欺骗网关,解决的办法就是在网关和 局域网内机器上做双向绑定,原理方法同上,一般网吧里面也是这样做的。