Linux下防御arp攻击策略

2009/5/27 来源:www.arpun.com 作者:小白

1./*找出ARP攻击的机器*/

获取同一网段下所有机器MAC地址的办法

        

机房有机器中毒, 发arp包, 通过arpspoof虽然可以解决, 也可以找到中毒机器的mac地址, 但在机房设备不足的情况下, 很难查到mac地址对应的 IP。 然后我们可以通过一个循环, 使用arping来对整个子网下面的机器发一个包, 这样就可以在arp下面查看到相应的mac缓存, 进而得到对应的IP 地址。

代码:#!/bin/sh

#感谢作者:吴洪声

for ((i = 1; i < 254; i++))

do

arping -I eth0 60.191.82.$i -c 1

done

arp -a > mac_table

脚本跑完后, 查看当前目录生成的mac_table。

#arp -a 查找你中毒时网关的MAC地址, 并记录下来在mac_table里寻找到相对应的机器, 仍后就可以找出那台机器感染了ARP病毒。

2./*使用arpspoof抵御ARP攻击*/

#提供方案原创者:yk103,在此表示感谢!

先安装libnet

http://www.packetfactory.net/libnet/dist/libnet.tar.gz

tar -xvzf libnet.tar.gz

cd libnet

./configure

make

make install

安装arpoison

http://www.arpoison.net/arpoison-0.6.tar.gz

tar -xvzf arpoison-0.6.tar.gz

cd arpoison

gcc arpoison.c /usr/lib/libnet.a -o arpoison

mv arpoison /usr/sbin

编写arpDefend.sh脚本.

代码:#!/bin/sh

#arpDefend.sh

#yk103

#网关mac地址

GATEWAY_MAC=00:11:22:33:44:55

#目的mac地址

DEST_MAC=ff:ff:ff:ff:ff:ff

#目的ip地址(网段广播地址)

DEST_IP=60.191.82.254

#本地网卡接口

INTERFACE=eth0

#$INTERFACE的mac地址

MY_MAC=00:30:48:33:F0:BA

#$INTERFACE的ip地址

MY_IP=60.191.82.247

#在本机建立静态ip/mac入口 $DEST_IP--$GATEWAY_MAC

arp -s $DEST_IP $GATEWAY_MAC

#发送arp reply ,使$DEST_IP更新$MY_IP的mac地址为$MY_MAC

arpoison -i $INTERFACE -d $DEST_IP -s $MY_IP -t $DEST_MAC -r $MY_MAC 1>/dev/null &

网友评论
评论(...
全部评论