ARP及ARP攻击

来源:互联网 发布:ubuntu卸载wine 编辑:程序博客网 时间:2024/04/30 03:10

ARP协议是“Address Resolution Protocol”(地址解析协议)的缩写。在局域网中,网络中实际传输的是“帧”,帧里面是有目标主机的MAC地址的。在以太网中,一个主机要和另一个主机进行直接通信,必须要知道目标主机的MAC地址。但这个目标MAC地址是如何获得的呢?它就是通过地址解析协议获得的。所谓“地址解析”就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。

 

工作原理:在每台安装有TCP/IP协议的电脑里都有一个ARP缓存表,表里的IP地址与MAC地址是一一对应的。以主机A(192.168.1.5)向主机B(192.168.1.1)发送数据为例。当发送数据时,主机A会在自己的ARP缓存表中寻找是否有目标IP地址。如果找到了,也就知道了目标MAC地址,直接把目标MAC地址写入帧里面发送就可以了;如果在ARP缓存表中没有找到目标IP地址,主机A就会在网络上发送一个广播,A主机MAC地址是“主机A的MAC地址”,这表示向同一网段内的所有主机发出这样的询问:“我是192.168.1.5,我的硬件地址是"主机A的MAC地址".请问IP地址为192.168.1.1的MAC地址是什么?”网络上其他主机并不响应ARP询问,只有主机B接收到这个帧时,才向主机A做出这样的回应:“192.168.1.1的MAC地址是00-aa-00-62-c6-09”。这样,主机A就知道了主机B的MAC地址,它就可以向主机B发送信息了。同时A和B还同时都更新了自己的ARP缓存表(因为A在询问的时候把自己的IP和MAC地址一起告诉了B),下次A再向主机B或者B向A发送信息时,直接从各自的ARP缓存表里查找就可以了。ARP缓存表采用了老化机制(即设置了生存时间TTL),在一段时间内(一般15到20分钟)如果表中的某一行没有使用,就会被删除,这样可以大大减少ARP缓存表的长度,加快查询速度。

 

常用命令:在命令提示符下,输入“arp -a”就可以查看ARP缓存表中的内容了,用“arp -d”命令可以删除ARP表中某一行的内容;用“arp -s”可以手动在ARP表中指定IP地址与MAC地址的对应。

显示和修改“地址解析协议”(ARP) 所使用的到以太网的 IP 或令牌环物理地址翻译表。该命令只有在安装了 TCP/IP 协议之后才可用。
    arp -a [inet_addr] [-N 
    arp -d inet_addr 
    arp -s inet_addr ether_addr 
    参数
    -a
    通过询问 TCP/IP 显示当前 ARP 项。如果指定了 inet_addr,则只显示指定计算机的 IP 和物理地址。
    -g
    与 -a 相同。
    inet_addr
    以加点的十进制标记指定 IP 地址。
    -N
    显示由 if_addr 指定的网络界面 ARP 项。
    if_addr
    指定需要修改其地址转换表接口的 IP 地址(如果有的话)。如果不存在,将使用第一个可适用的接口。
    -d
    删除由 inet_addr 指定的项。
    -s
    在 ARP 缓存中添加项,将 IP 地址 inet_addr 和物理地址 ether_addr 关联。物理地址由以连字符分隔的6 个十六进制字节给定。使用带点的十进制标记指定 IP 地址。项是永久性的,即在超时到期后项自动从缓存删除。
    ether_addr
    指定物理地址。

 

ARP攻击:

(1)、ARP攻击就是通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞,攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP缓存中的IP-MAC条目,造成网络中断或中间人攻击。过程如下:

   1) H1发ping。H1先发送ARP request查询H2的MAC,洪泛后被黑客偷听到H1的MAC地址。

2) H2收到ping, 要发echo给H1, 得发ARP request查询H1的MAC, 洪泛后被黑客偷听到H2地址。

3) 黑客发动攻击,冒充H1发送ARP reply给H2。H2收到后,上了当,把ARP表中H1的MAC 改为黑客的MAC..

4) H1 发送第二个ping,H2发送的echo被交换机转发到黑客, 而H1, H2豪不知情。

 

(2)、ARP欺骗木马的中毒现象表现为:使用局域网时会突然掉线,过一段时间后又会恢复正常。比如客户端状态频频变红,用户频繁断网,IE浏览器频繁出错,以及一些常用软件出现故障等。如果局域网中是通过身份认证上网的,会突然出现可认证,但不能上网的现象(无法ping通网关),重启机器或在MS-DOS窗口下运行命令arp -d后,又可恢复上网。
ARP欺骗木马只需成功感染一台电脑,就可能导致整个局域网都无法上网,严重的甚至可能带来整个网络的瘫痪。该木马发作时除了会导致同一局域网内的其他用户上网出现时断时续的现象外,还会窃取用户密码。如盗取QQ密码、盗取各种网络游戏密码和账号去做金钱交易,盗窃网上银行账号来做非法交易活动等,这是木马的惯用伎俩,给用户造成了很大的不便和巨大的经济损失
 

 

常用的防范方法:
   目前ARP系列的攻击方式和手段多种多样,因此还没有一个绝对全面有效的防范方法。从实践经验看最为有效的防范方法即打全Windows的补丁、正确配置和使用网络防火墙、安装防病毒软件并及时更新病毒库。对于Windows补丁不仅仅打到SP2(XP)或SP4(2000),其后出现的所有安全更新也都必须及时打全才能最大限度的防范病毒和木马的袭击。此外,正确使用U盘等移动存储设备,防止通过校外计算机传播病毒和木马。
下面介绍防范ARP攻击的几种常用方法:
   1、静态绑定
将IP和MAC静态绑定,在网内把主机和网关都做IP和MAC绑定。
欺骗是通过ARP的动态实时的规则欺骗内网机器,所以我们把ARP全部设置为静态可以解决对内网PC的欺骗,同时在网关也要进行IP和MAC的静态绑定,这样双向绑定才比较保险。缺点是每台电脑需绑定,且重启后任需绑定,工作量较大,虽说绑定可以通过批处理文件来实现,但也比较麻烦。
   2、使用防护软件
目前关于ARP类的防护软件出的比较多了,我校常用的一款软件是彩影软件的ARP防火墙,目前最新版本是V4.0.2版。
 
ARP防火墙采用系统内核层拦截技术和主动防御技术,包含六大功能模块可解决大部分欺骗、ARP攻击带来的问题,从而保证通讯安全(保障通讯数据不被网管软件/恶意软件监听和控制)、保证网络畅通。

   3、具有ARP防护功能的网络设备
由于ARP形式的攻击而引发的网络问题是目前网络管理,特别是局域网管理中最让人头疼的攻击,他的攻击技术含量低,随便一个人都可以通过攻击软件来完成ARP欺骗攻击,同时防范ARP形式的攻击也没有什么特别有效的方法。目前只能通过被动的亡羊补牢形式的措施了,本文介绍的方法希望对大家有所帮助。

原创粉丝点击