英文原义:Address Resolution Protocol
中文释义:(RFC-826)地址解析协议
局域网中,网络中实际传输的是“帧”,帧里面是有目标主机的MAC地址的。所谓“地址解析”就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址以保证通信的顺利进行。
注解:简单地说,ARP协议主要负责将局域网中的32为IP地址转换为对应的48位物理地址,即网卡的MAC地址,比如IP地址为192.168.0.1网卡MAC地址为00-03-0F-FD-1D-2B。整个转换过程是一台主机先向目标主机发送包含IP地址信息的广播数据包,即ARP请求,然后目标主机向该主机发送一个含有IP地址和MAC地址数据包,通过MAC地址两个主机就可以实现数据传输了。
应用:在安装了以太网网络适配器的计算机中都有专门的ARP缓存,包含一个或多个表,用于保存IP地址以及经过解析的MAC地址。在Windows中要查看或者修改ARP缓存中的信息,可以使用arp命令来完成,比如在Windows XP的命令提示符窗口中键入“arp -a”或“arp -g”可以查看ARP缓存中的内容;键入“arp -d IPaddress”表示删除指定的IP地址项(IPaddress表示IP地址)。arp命令的其他用法可以键入我们首先要知道以太网内主机通信是靠MAC地址来确定目标的.arp协议又称"地址解析协议",它负责通知电脑要连接的目标的地址,这里说的地址在以太网中就是MAC地址,简单说来就是通过IP地址来查询目标主机的MAC地址.一旦这个环节出错,我们就不能正常和目标主机进行通信,甚至使整个网络瘫痪.
ARP的攻击主要有以下几种方式
一.简单的欺骗攻击
这是比较常见的攻击,通过发送伪造的ARP包来欺骗路由和目标主机,让目标主机认为这是一个合法的主机.便完成了欺骗.这种欺骗多发生在同一网段内,因为路由不会把本网段的包向外转发,当然实现不同网段的攻击也有方法,便要通过ICMP协议来告诉路由器重新选择路由.
二.交换环境的嗅探
在最初的小型局域网中我们使用HUB来进行互连,这是一种广播的方式,每个包都会经过网内的每台主机,通过使用软件,就可以嗅谈到整个局域网的数据.现在的网络多是交换环境,网络内数据的传输被锁定的特定目标.既已确定的目标通信主机.在ARP欺骗的基础之上,可以把自己的主机伪造成一个中间转发站来监听两台主机之间的通信.
三.MAC Flooding
这是一个比较危险的攻击,可以溢出交换机的ARP表,使整个网络不能正常通信
四.基于ARP的DOS
这是新出现的一种攻击方式,D.O.S又称拒绝服务攻击,当大量的连接请求被发送到一台主机时,由于主机的处理能力有限,不能为正常用户提供服务,便出现拒绝服务.这个过程中如果使用ARP来隐藏自己,在被攻击主机的日志上就不会出现真实的IP.攻击的同时,也不会影响到本机.
防护方法:
1.IP+MAC访问控制.
单纯依靠IP或MAC来建立信任关系是不安全,理想的安全关系建立在IP+MAC的基础上.这也是我们校园网上网必须绑定IP和MAC的原因之一.
2.静态ARP缓存表.
每台主机都有一个临时存放IP-MAC的对应表ARP攻击就通过更改这个缓存来达到欺骗的目的,使用静态的ARP来绑定正确的MAC是一个有效的方法.在命令行下使用arp -a可以查看当前的ARP缓存表.以下是本机的ARP表
C:\Documents and Settings\cnqing>arp -a
Interface: 210.31.197.81 on Interface 0x1000003
Internet Address Physical Address Type
210.31.197.94 00-03-6b-7f-ed-02 dynamic
其中"dynamic" 代表动态缓存,即收到一个相关ARP包就会修改这项.如果是个非法的含有不正确的网关的ARP包,这个表就会自动更改.这样我们就不能找到正确的网关MAC,就不能正常和其他主机通信.静态表的建立用ARP -S IP MAC.
执行"arp -s 210.31.197.94 00-03-6b-7f-ed-02"后,我们再次查看ARP缓存表.
C:\Documents and Settings\cnqing>arp -a
Interface: 210.31.197.81 on Interface 0x1000003
Internet Address Physical Address Type
210.31.197.94 00-03-6b-7f-ed-02 static
此时"TYPE"项变成了"static",静态类型.这个状态下,是不会在接受到ARP包时改变本地缓存的.从而有效的防止ARP攻击.静态的ARP条目在每次重启后都要消失需要重新设置.
3.ARP 高速缓存超时设置
在ARP高速缓存中的表项一般都要设置超时值,缩短这个这个超时值可以有效的防止ARP表的溢出.
4.主动查询
在某个正常的时刻,做一个IP和MAC对应的数据库,以后定期检查当前的IP和MAC对应关系是否正常.定期检测交换机的流量列表,查看丢包率.
总结:ARP本省不能造成多大的危害,一旦被结合利用,其危险性就不可估量了.由于ARP本身的问题.使得防范ARP的攻击很棘手,经常查看当前的网络状态,监控流量对一个网管员来说是个很好的习惯.
就是中毒的机器能上网
当时让别人的机器上不了
欺骗他们真实的IP 或者 网关 地址
只有一个办法 那就是MAC地址是正确的 找到它就可以了
ARP攻击,是针对以太网地址解析协议(ARP)的一种攻击技术。此种攻击可让攻击者取得局域网上的数据封包甚至可篡改封包,且可让网络上特定计算机或所有计算机无法正常连接。最早探讨ARP攻击的文章是由Yuri Volobue所写的《ARP与ICMP转向游戏》。
ARP攻击就是通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞,攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP缓存中的IP-MAC条目,造成网络中断或中间人攻击。
ARP攻击主要是存在于局域网网络中,局域网中若有一台计算机感染ARP木马,则感染该ARP木马的系统将会试图通过“ARP欺骗”手段截获所在网络内其它计算机的通信信息,并因此造成网内其它计算机的通信故障。 某机器A要向主机B发送报文,会查询本地的ARP缓存表,找到B的IP地址对应的MAC地址后,就会进行数据传输。如果未找到,则广播A一个ARP请求报文(携带主机A的IP地址Ia——物理地址Pa),请求IP地址为Ib的主机B回答物理地址Pb。
网上所有主机包括B都收到ARP请求,但只有主机B识别自己的IP地址,于是向A主机发回一个ARP响应报文。其中就包含有B的MAC地址,A接收到B的应答后,就会更新本地的ARP缓存。接着使用这个MAC地址发送数据(由网卡附加MAC地址)。因此,本地高速缓存的这个ARP表是本地网络流通的基础,而且这个缓存是动态的。