网络通信 频道

集锦:如何防范ARP攻击

  【IT168 资讯】【故障现象】

  局域网不停的中断,电脑主机掉线,上网速度速度慢等现象。

  【故障原因】

  局域网内有人使用ARP欺骗的木马程序或者管理软件(比如:传奇盗号的软件,被加载了木马的网游外挂,网络执法官,网络剪刀手等)。如小A在某处上网,其在网络上下载了"网络执法官"这个软件,其通过非常简单的手段就可以扫描到网络中的所有主机,如下图

  小A和小B曾经有过冲突,小A决定让小B掉线,且永远无法上网,其双击小B所在的电脑项,在弹出的对话框中选择"禁止该网卡与网络连接",确定后小B的电脑就断线了。

  更有甚者,小A决定让网络中所有的人掉线,其只需要选中所有电脑,设置一个统一动作,就可以让网络中所有人全部掉线。

  【故障原理】

  在局域网中,通过ARP协议来完成IP地址转换为第二层物理地址(即MAC地址)的。ARP协议对网络安全具有重要的意义。通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞。

  在局域网中,两台网络设备要互相通信,必须要互相知道对方的物理地址,也就是MAC地址。IP地址和MAC地址的关系就像A和B两栋楼中的两处居民小李和小张的关系。假设小李住在A楼,小张住在B楼,小李要和小张隔着楼谈话,小李必须在A楼处大喊小张的名字(MAC地址)后,双方才能谈话。否则小李大喊B楼(IP地址),是无法进行谈话的。而小李和小张之间的在谈话之前的联系,就是通过ARP协议来完成。

  ARP协议是"Address Resolution Protocol"(地址解析协议)的缩写。所谓"地址解析"就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。

  每台安装有TCP/IP协议的电脑里都有一个ARP缓存表,表里的IP地址与MAC地址是一一对应的,如下表所示。

  我们以主机A(192.168.16.1)向主机B(192.168.16.2)发送数据为例。当发送数据时,主机A会在自己的ARP缓存表中寻找是否有目标IP地址。如果找到了,也就知道了目标MAC地址,直接把目标MAC地址写入帧里面发送就可以了;如果在ARP缓存表中没有找到相对应的IP地址,主机A就会在网络上发送一个广播,目标MAC地址是"FF.FF.FF.FF.FF.FF",这表示向同一网段内的所有主机发出这样的询问:"192.168.16.2的MAC地址是什么?"网络上其他主机并不响应ARP询问,只有主机B接收到这个帧时,才向主机A做出这样的回应:"192.168.16.2的MAC地址是bb-bb-bb-bb-bb-bb"。这样,主机A就知道了主机B的MAC地址,它就可以向主机B发送信息了。同时它还更新了自己的ARP缓存表,下次再向主机B发送信息时,直接从ARP缓存表里查找就可以了。ARP缓存表采用了老化机制,在一段时间内如果表中的某一行没有使用,就会被删除,这样可以大大减少ARP缓存表的长度,加快查询速度。

  从上面可以看出,ARP协议的基础就是信任局域网内所有的人,那么就很容易实现在以太网上的ARP欺骗。对目标A进行欺骗,A去Ping主机C却发送到了DD-DD-DD-DD-DD-DD这个地址上。如果进行欺骗的时候,把C的MAC地址骗为DD-DD-DD-DD-DD-DD,于是A发送到C上的数据包都变成发送给D的了。这不正好是D能够接收到A发送的数据包了么,嗅探成功。

  A对这个变化一点都没有意识到,但是接下来的事情就让A产生了怀疑。因为A和C连接不上了。D对接收到A发送给C的数据包可没有转交给C。

  这是,如果在D上做"man in the middle",进行ARP重定向。打开D的IP转发功能,A发送过来的数据包,转发给C,好比一个路由器一样。不过,假如D发送ICMP重定向的话就中断了整个计划。

  D直接进行整个包的修改转发,捕获到A发送给C的数据包,全部进行修改后再转发给C,而C接收到的数据包完全认为是从A发送来的。不过,C发送的数据包又直接传递给A,倘若再次进行对C的ARP欺骗。现在D就完全成为A与C的中间桥梁了,对于A和C之间的通讯就可以了如指掌了。

  【解决思路】

  由于ARP协议的缺陷,导致任一台主机在收到ARP包时,没有任何验证就更新自己的ARP缓存,在ARP欺骗发生的时候,更是会发生随意更改自己的网关的IP+MAC的指向,从而导致了掉线的发生。

  解决的思路就是,摒弃这种动态更新ARP缓存的方式,改用由管理员静态指定的方式。在一个局域网中要实现正常的上网行为,就必须要保证两个方面通信正常,(1)主机(电脑)上的指向本地网关的IP+MAC正确;(2)网关(通常是路由)上,指向本地电脑的IP+MAC正确。根据上面两个原则,我们就可以保证所有主机和路由器的通信正常,就可以防止被欺骗而引起掉线。解决方案就是要做双向绑定;在本地所有电脑上绑定路由器的IP+MAC地址;在网关(路由器)上绑定所有电脑的IP+MAC地址。

  1、如何在路由器上绑定所有主机(电脑)的IP+MAC地址;通常的,在路由器上绑定所有的主机的IP+MAC地址比较简单,艾泰科技甚至提供出了一键绑定所有主机IP+MAC地址的功能,只需要点击"全部绑定"就可以一次性绑定所有电脑的IP+MAC地址,如下图:

  2、如何在主机上绑定网关(路由器)的IP+MAC地址;

  1)首先,获得路由器的内网的MAC地址(例如HiPER网关地址192.168.16.254的MAC地址为0022aa0022aa)。

  2)打开记事本,编写一个批处理文件rarp.bat,保存后缀名为.bat,内容如下:

  @echo off

  arp -d

  arp -s 192.168.16.254 00-22-aa-00-22-aa

  注意:将文件中的网关IP地址和MAC地址更改为您自己的网关IP地址和MAC地址。

  3)将这个批处理软件拖到"windows--开始--程序--启动"中,保证Windows每次开机都可以执行这个批处理文件。

  3、做完上面两个步骤后,双向绑定就已经完成了。但是在实际中发现,在电脑上绑定网关(路由器)的IP+MAC地址后,有一些变种的ARP欺骗病毒会将电脑上的绑定会删除掉,只删掉一台电脑的绑定后还无关紧要,但当这种病毒在局域网中开始蔓延,感染了大部分主机(电脑)的时候,上述做的双向绑定实质上已经失效了。此时在局域网中依旧会出现大面积的掉线情况,针对此种情况,我们推荐用户采用下面的方法对步骤2进行增强:

  1)跳过上述步骤2

  2)安装AntiARP防火墙单机版,下载地址:http://www.antiarp.com/download.htm 。该软件为了防止主机(电脑)上的静态绑定被删除,会每隔一个时间段自动检查,如果发现被删除会重新进行绑定。

  3)在网关的IP/MAC处,手动设置网关的IP地址和MAC地址,输入你局域网的网关的IP+MAC地址,确定,如下图:

  4)保持该软件随电脑启动而启动,即可。

  4、如何查看当前主机的静态绑定是否生效。

  在命令行中输入arp -a,如果对应的静态绑定的类型(Type)为static,说明已经生效;如果类型(Type)为dynamic,则说明绑定没有生效。如下图:

  【双向静态绑定的问题】

  通过上述步骤的操作,可以完成在一个普通的局域网中应对ARP欺骗的防御体系。但是所有的主机(电脑)上绑定网关的IP+MAC地址就并非易事,假设在一个200台电脑的网络中,网络管理员就会不停的来回在200台电脑上奔波,费时费力,对网络管理员的忍耐力绝对是个考验。针对这种情况,艾泰科技提出了另外一种解决思路:网关(路由器)定时定向的向局域网广播正确的网关(路由器)IP+MAC信息,来防止局域网发生的欺骗。采用此种方法,网络管理员只需要做两个步骤,5分钟轻松搞定:

  1) 网关(路由器)上一键绑定所有主机(电脑)的IP+MAC地址;

  2) 开启网关(路由器)上的主动防御arp攻击的功能,如下图;

  【网吧环境下的ARP欺骗解决思路】

  1、一般网吧网络环境有以下几个特点:

  (1)、所有电脑的主机都是固定IP地址。

  (2)、路由器上没有开启DHCP功能。

  (3)、网吧主机的数量稳定性较高,不会出现像酒店环境下的新的主机不断带入和流出网络的情况。

  2、艾泰科技网吧环境下解决ARP攻击的方法:

  方法一、做双向绑定

  (1) 一键绑定所有主机的IP+MAC地址;

  (2) 在主机(电脑)上绑定网关(路由器)的IP+MAC地址;

  安装AntiARP防火墙单机版,下载地址:http://www.antiarp.com/download.htm 。在网关的IP/MAC处,手动设置网关的IP地址和MAC地址,输入你局域网的网关的IP+MAC地址。保持该软件随电脑启动而启动,即可。如下图:

  方法二、

  1) 网关(路由器)上一键绑定所有主机(电脑)的IP+MAC地址;

  2) 开启网关(路由器)上的主动防御arp攻击的功能;

  【中小企业环境下的ARP欺骗解决思路】

  1、一般中小企业网络环境有以下几个特点:

  (1)、所有电脑的主机存在固定IP地址和动态DHCP分配IP地址的混杂情况。

  (2)、路由器上开启了DHCP功能。

  (3)、中小企业网络内的主机的数量稳定性较高,不会出现像酒店环境下的新的主机不断带入和流出网络的情况。

  2、艾泰科技中小企业环境下解决ARP攻击的方法:

  方法一、双向绑定

  (1)、网关(路由器)上绑定动态主机的IP+MAC地址;针对DHCP动态分配IP地址的主机,网络管理员事先在网关(路由器)上做好DHCP绑定,如下图,绑定后,李晓明的电脑每次动态分配得到的IP地址都是192.168.1.100。

  (2)、网关(路由器)上绑定固定IP地址主机的IP+MAC地址;

  (3)、主机(电脑)上绑定网关的IP+MAC地址

  安装AntiARP防火墙单机版,下载地址:http://www.antiarp.com/download.htm 。在网关的IP/MAC处,手动设置网关的IP地址和MAC地址,输入你局域网的网关的IP+MAC地址,确定。保持该软件随电脑启动而启动,即可。如下图:

  方法二、采用艾泰科技的动态防御功能。

  (1)、网关(路由器)上绑定动态主机的IP+MAC地址;针对DHCP动态分配IP地址的主机,网络管理员事先在网关(路由器)上做好DHCP绑定,如下图,绑定后,李晓明的电脑每次动态分配得到的IP地址都是192.168.1.100。

  (2)、网关(路由器)上绑定固定IP地址主机的IP+MAC地址;

  (3)、开启网关(路由器)的ARP欺骗防御功能。

  【酒店环境下的ARP欺骗解决思路】

  1、一般酒店网络环境有以下几个特点:

  (1)、所有电脑的主机都是动态DHCP分配。

  (2)、路由器上开启了DHCP功能。

  (3)、酒店网络内的主机的数量稳定性非常差,新的主机不断带入和原有的主机不断的流出网络的情况。

  2、酒店环境下解决ARP欺骗的难度:

  (1)、所有电脑的主机都是动态DHCP分配,且不断的有主机流进和流出。

  (2)、流进的新主机(电脑),网关(路由器)要能自动识别并进行绑定;

  (3)、流出的主机(电脑),网关(路由器)要能自动识别并自动删除已经做的静态绑定;

  3、艾泰科技酒店环境下解决ARP攻击的方法:

  方法:采用艾泰科技独有的酒店环境下ARP解决方案。

  思路:

  (1)、对流进的新主机(电脑),艾泰路由器自动识别并进行绑定;

  (2)、流出的主机(电脑),艾泰路由器自动识别并自动删除已经做的静态绑定;

  4、实施:

  (1)、打开艾泰路由器的DHCP自动识别新主机(电脑)进行IP+MAC绑定和离线主机DHCP绑定自动删除的功能;

  (2)、开启网关(路由器)的ARP欺骗防御功能。

  【其它解决ARP欺骗解决思路】

  1、 放弃现有的ARP协议,采用PPPOE拨号的方式进行代替。

  2、 在局域网中,部署安全交换机,在每个交换机端口上进行IP+MAC地址的绑定,来彻底杜绝ARP欺骗。

  【艾泰科技网吧行业产品】

  【艾泰科技企业级产品】

0
相关文章