一种防御地址解析协议报文攻击的方法和系统技术方案

技术编号:3542852 阅读:215 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种防御地址解析协议报文攻击的方法,该方法包括:预先配置合法用户的媒体接入控制MAC地址;网络设备接收来自用户的地址解析协议ARP报文,从接收的ARP报文中提取发送方MAC地址的字段内容;判断被提取的发送方MAC地址是否为预先配置的合法用户的MAC地址;如果不是,则丢弃所述接收的ARP报文。本发明专利技术还公开了一种防御地址解析协议报文攻击的系统。本发明专利技术适用于采用各种方式上网的用户,而且无需对应用本发明专利技术的网络设备进行较大修改。

【技术实现步骤摘要】

本专利技术涉及地址解析协议(ARP,Address Resolution Protocol)技术,具体涉及防御ARP报文攻击的方法和防御ARP报文攻击的系统。
技术介绍
ARP作为传输控制协议(TCP/IP,Transmission Control Protocol)的协议栈中较低层的协议之一,其作用是实现IP地址到诸如媒体接入控制(MAC,Media Access Control)地址的数据链路层地址的转换。网络设备之间的通信是使用MAC地址来寻址的,而基于TCP/IP的各种应用是以IP地址来寻址的,基于IP地址寻址的各种数据包最终都需要封装在基于MAC地址寻址的以太网帧内进行传输。因此,网络设备在进行通信时,需要知道目的网络设备的MAC地址。而ARP协议承担了将目的网络设备的IP地址解析为目的网络设备MAC地址的任务。在利用ARP协议进行地址解析时,网络设备通过表结构缓存IP地址和MAC地址之间的映射关系,这张表称为ARP表。ARP表的表项可以根据ARP报文动态生成,即网络设备可以从ARP请求报文或ARP响应报文中学习到IP地址与MAC地址的映射关系,并保存到ARP表中。例如,如图1所示,作为用户的主机A要向主机B发送报文,如果主机A和主机B在同一个网段,那么主机A采用自己ARP表中记录的主机B的ARP表项,获取主机B的MAC地址,并封装报文发送。如果主机A没有主机B的MAC地址,则缓存待发送报文,并以广播方式发送一个ARP请求报文。ARP请求报文中的发送端IP(Sender IP)地址和发送端MAC(Sender MAC)地址分别为主机A的IP地址192.168.1.1和MAC地址-->0002-6779-014c,目标IP(Target IP)地址和目标MAC(Target MAC)地址分别为主机B的IP地址192.168.1.2和全0的MAC地址。主机B比较自己的IP地址和ARP请求报文中的目标IP地址,当两者相同时进行如下处理:将ARP请求报文中的发送端地址,即主机A的IP地址和MAC地址存入自己的ARP表中。之后以单播方式发送ARP响应报文给主机A,该ARP响应报文的Sender MAC地址为自己的MAC地址。主机A收到ARP响应报文后,将主机B的MAC地址加入到自己的ARP表中,并将之前缓存的报文进行封装后发送出去。如果主机A和主机B不在同一网段,如图2所示的网络结构,那么主机A采用自己ARP表获取其所属网关的MAC地址,将报文封装并发送给网关。如果网关已经有主机B的ARP表项,则网关直接把报文发给主机B。如果网关没有主机B的ARP表项,则网关会通过广播ARP请求报文向主机B学习MAC地址,然后将报文发送给主机B。但是,如果主机A没有网关的ARP表项,则主机A先向其所属网关发出ARP请求,ARP请求报文中的Target IP为网关的IP地址。网关根据接收的ARP请求报文返回自身的MAC地址。当主机A从网关返回的ARP响应报文中获得网关的MAC地址后,就可以将待发送报文封装并发给网关了。可见,ARP表项是用户主机间正常通信的保障。如果ARP表项异常,两用户主机之间就无法正常通信。而ARP协议没有针对ARP报文的合法性检查手段,因此攻击者可以通过发送伪造的ARP报文达到非法修改ARP表项的目的。攻击者的主要攻击手段为:攻击者向用户主机或网关发送伪造ARP报文,伪造ARP报文主要表现在伪造ARP报文的SenderIP地址和/或Sender MAC地址,这样不仅令接收该伪造ARP报文的用户主机或网关学习到错误的ARP表项,导致无法正常通信,还可以令接收到大量伪造ARP报文的网关在短时间内学习到大量新ARP表项,使得网关的ARP表被迅速占满,其他合法用户的ARP表项不能被学习,导致合法用户不能访问外网。因此,防御ARP报文攻击的主要手段就是验证ARP报文来源的合法性。-->目前常见防御方案包括:在接入交换机上,利用保存的动态主机配置协议(DHCP,Dynamic HostConfiguration Protocol)欺骗(Snooping)安全表项或者802.1x安全表项,来判断ARP报文的MAC地址、IP地址以及报文的入端口、VLAN ID是否合法。只要这些信息和安全表项记录的内容不吻合,则判定该ARP报文为攻击报文,进行报文丢弃、告警等后续操作。在网关上,利用保存的DHCP服务器生成的租约或者DHCP中继生成的安全表项,来判断ARP报文的MAC地址、IP地址以及报文的入端口、VLAN ID是否合法。但是以上两种防御方案都存在一个问题:接入交换机和网关要在接收ARP报文之前获得上述Snooping安全表项、802.1x安全表项、DHCP服务器生成的租约或者DHCP中继生成的安全表项,因此用户主机必须采用DHCP方式或802.1X认证方式上网。如果用户采用固定IP地址上网,那么接入交换机和网关无法在接收ARP报文之前获得以上安全表项中的任何一个,导致上述两种防御方案无法适用于采用固定IP地址上网的用户主机。现有的防御ARP攻击方案也有针对采用固定IP地址上网情况的,但一般都要求接入交换机和网关的芯片支持新的功能,同时要求用户主机安装特殊的客户端软件。因此,目前迫切需要一种有效的防御ARP报文攻击的方案,不仅适用于采用DHCP和802.1X方式上网的用户主机,也适用于采用固定IP地址上网的用户主机;而且部署方便,无需对现有的接入交换机、网关和用户主机进行较大修改。
技术实现思路
有鉴于此,本专利技术提供了一种防御ARP报文攻击的方法和系统,适用于采用各种方式上网的用户,而且无需对应用该方法的网络设备进行较大修改。-->其中,防御地址解析协议报文攻击的方法包括以下步骤:预先配置合法用户的媒体接入控制MAC地址;网络设备接收来自用户的地址解析协议ARP报文,从接收的ARP报文中提取发送方MAC地址的字段内容;判断被提取的发送方MAC地址是否为预先配置的合法用户的MAC地址;如果不是,则丢弃所述接收的ARP报文本专利技术提供的防御地址解析协议报文攻击的系统,包括认证服务单元和防御攻击单元;所述防御攻击单元包括报文分析模块和第一判断模块;所述认证服务单元,用于存储预先配置的合法用户的MAC地址;所述报文分析模块,用于接收来自用户的ARP报文,从接收的ARP报文中提取发送方MAC地址的字段内容,将被提取的发送方MAC地址发送给第一判断模块;所述第一判断模块,用于接收所述被提取的发送方MAC地址,判断接收的发送方MAC地址是否为所述认证服务单元存储的合法用户的MAC地址,如果不是,则丢弃所述接收的ARP报文。根据以上技术方案可见,本专利技术具有如下有益效果:首先,该方案从Sender MAC地址的角度考虑有效拦截ARP报文攻击,丢弃来自非合法用户的ARP报文,可以有效的拦截将Sender MAC地址字段伪造为随机MAC值或网关MAC地址的ARP报文攻击,实现了ARP报文攻击的防御。同时,本方案只对Sender MAC地址进行验证,不需要IP地址信息,因此不仅适用于采用DHCP和802.1X方式上网的用户,也适用于采用固定IP方式上网的用户。而且,验证过程借助现有的MAC认证处理,由于现有的二层MAC地址认证本文档来自技高网
...

【技术保护点】
一种防御地址解析协议报文攻击的方法,其特征在于,该方法包括: 预先配置合法用户的媒体接入控制MAC地址; 网络设备接收来自用户的地址解析协议ARP报文,从接收的ARP报文中提取发送方MAC地址的字段内容;判断被提取的发送方MAC 地址是否为预先配置的合法用户的MAC地址;如果不是,则丢弃所述接收的ARP报文。

【技术特征摘要】
1、一种防御地址解析协议报文攻击的方法,其特征在于,该方法包括:预先配置合法用户的媒体接入控制MAC地址;网络设备接收来自用户的地址解析协议ARP报文,从接收的ARP报文中提取发送方MAC地址的字段内容;判断被提取的发送方MAC地址是否为预先配置的合法用户的MAC地址;如果不是,则丢弃所述接收的ARP报文。2、如权利要求1所述的方法,其特征在于,所述合法用户的MAC地址预先配置在所述网络设备上,或预先配置在为所述网络设备提供MAC地址认证服务的服务器上。3、如权利要求1所述的方法,其特征在于,该方法进一步包括:记录已认证上线的合法用户的MAC地址;所述判断被提取的发送方MAC地址是否为预先配置的合法用户的MAC地址包括:网络设备判断所述被提取的发送方MAC地址是否为已认证上线的合法用户的MAC地址之一;如果不是,则根据预先配置合法用户的MAC地址对所述被提取的发送方MAC地址进行MAC地址认证,如果认证通过,则判定被提取的发送方MAC地址为预先配置的合法用户的MAC地址,且将所述被提取的发送方MAC地址记录为已认证上线的合法用户的MAC地址,否则判定所述被提取的发送方MAC地址不是预先配置的合法用户的MAC地址。4、如权利要求3所述的方法,其特征在于,该方法进一步包括:记录所述已认证上线的合法用户的MAC地址使用的入端口;当所述被提取的发送方MAC地址为已认证上线的合法用户的MAC地址时,确定所述接收的ARP报文的当前入端口,比较当前入端口与记录的接收具有相同发送方MAC地址的ARP报文的入端口,如果入端口改变,且记录的入端口的持续使用时间小于预设时间值,则确定检测到仿冒合法用户的攻击,丢弃所述ARP报文;如果入端口改变,但记录的入端口的持续使用时间大于或等于所述预设时间值,则采用当前入端口更新所述记录的入端口。5、如权利要求1或2或3或4所述的方法,其特征在于,所述从接收的ARP报文中提取发送方MAC地址的字段内容之后,该方法进一步包括:如果所述接收的ARP报文接收自用户端口,且被提取的发送方MAC地址与网关MAC地址相同,则确定检测到仿冒网关的攻击,丢弃所述ARP报文。6、如权利要求5所述的方法,其特征在于,所述网络设备为网关或接入交换机;所述网络设备为接入交换机时,所述网关MAC地址为与接入交换机相连的网关的MAC地址;所述网关MAC地址为接入...

【专利技术属性】
技术研发人员:李金平
申请(专利权)人:杭州华三通信技术有限公司
类型:发明
国别省市:86[中国|杭州]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1