当前位置:文档之家› ARP攻防技术白皮书

ARP攻防技术白皮书

ARP防攻击技术白皮书目录目录 (3)1技术概述 (5)1.1ARP工作机制 (5)1.2ARP攻击原理 (5)1.2.1ARP攻击类型 (5)1.2.2ARP欺骗 - 仿冒用户主机 (6)1.2.3ARP欺骗 - 仿冒网关攻击 (7)1.2.4ARP泛洪攻击 - 拒绝服务攻击 (8)1.2.5ARP泛洪攻击 - 缓存溢出攻击 (9)1.2.6ARP泛洪攻击 - 扫描攻击 (10)1.3ARP攻击防范技术介绍 (11)1.3.1防ARP地址欺骗 (11)1.3.2防ARP网关冲突 (12)1.3.3ARP严格学习 (12)1.3.4动态ARP检测(DAI) (13)1.3.5ARP报文速率限制 (14)2ARP防攻击解决方案 (14)2.1二层交换机防攻击方案 (14)2.2三层网关防攻击方案 (15)ARP防攻击技术白皮书关键词:ARP,ARP欺骗,泛洪攻击摘要:本文针对目前常见的ARP攻击,介绍了华为网络设备所能提供的防范ARP攻击的方法以及典型组网应用。

缩略语:1技术概述1.1ARP工作机制ARP(Address Resolution Protocol,地址解析协议)是一个位于TCP/IP协议栈中的底层协议,对应于数据链路层,基本功能就是将网络层(IP层,也就是相当于OSI的第三层)地址解析为数据连接层(MAC层,也就是相当于OSI的第二层)的MAC地址,以保证通信的进行。

工作过程如下:(1) 当网络节点需要解析一个IP 地址对应的MAC 地址时,会广播发送ARP 请求报文。

(2) 其他网络节点接收到ARP请求后,会进行ARP应答。

同时,根据请求发送者的IP地址和 MAC地址的对应关系建立 ARP表项,以便后续查ARP表进行报文转发。

(3) 发起请求的网络节点接收到ARP应答后,同样会将ARP应答报文中发送者的IP 地址和MAC 地址的映射关系记录下来,生成ARP表项,以便后续查ARP表进行报文转发。

1.2ARP攻击原理ARP工作机制可以看出,ARP协议简单易用,没有任何安全机制,攻击者可以发送伪造ARP 报文对网络进行攻击。

ARP攻击就是通过伪造IP地址和MAC地址实现ARP欺骗,攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP表中的条目,造成网络中断或中间人攻击。

同时,能够通过在网络中产生大量的ARP通信量,使网络阻塞。

1.2.1ARP攻击类型常见的ARP攻击包括ARP欺骗、洪泛攻击。

ARP欺骗指攻击者通过发送伪造的ARP报文,恶意修改设备或网络内其他主机的ARP表项,造成用户或网络的报文转发异常。

ARP洪泛攻击也叫拒绝服务攻击,攻击者向设备发送大量虚假的ARP请求报文或免费ARP报文,造成设备上的ARP表项超过规格,表项溢出,无法缓存正常用户的ARP表项,或者ARP处理协议通道阻塞等,从而阻碍正常的报文转发。

综上所述,ARP攻击方式有如下 2大类 5小类:⏹ARP欺骗根据仿冒的网络节点的不同,又可以细分为●仿冒用户主机●仿冒网关⏹ARP泛洪攻击根据攻击目标的不同,又可以细分为●拒绝服务攻击●缓存溢出攻击●扫描攻击1.2.2ARP欺骗 - 仿冒用户主机原理一个典型的用户主机仿冒流程如下:1.信息节点比如网关广播ARP请求,询问用户A的地址2.用户A回应自己的地址3.建立合法用户A的ARP表项4.用户B发出仿冒的ARP回应,可以是自己的MAC地址,也可以是网络中其他用户地址甚至是不存在的地址5. 合法的ARP表项被修改为仿冒的ARP表项6. 给用户A的流量被转发到用户B,如果仿冒的是其他用户的地址,则流量被转发到其他用户,如果仿冒的是不存在的地址,则流量在网络中被阻断危害如果用户B仿冒时用的是自己的地址,当流量返回时,就可以从流量中获取信息,从而形成中间人攻击如果用户B仿冒时用的是其他用户地址,当流量返回时,就可以对其他用户进行流量攻击如果用户B仿冒是用的是网络中不存在的地址,则流量被阻断用户A的流量转发异常,要么被窃听而泄密,要么被阻断而业务中断。

1.2.3ARP欺骗 - 仿冒网关攻击原理一个典型的网关仿冒流程如下:1.用户A广播ARP请求,询问网关的MAC地址2.网关回应自己的MAC地址3.用户A主机建立合法网关的ARP表项4.用户B发出仿冒的网关ARP表项,可以是自己的MAC地址,也可以是网络中其他用户地址甚至是不存在的地址5. 用户A主机合法网关的ARP表项被修改为仿冒的ARP表项6. 用户A的流量转发到用户B,如果仿冒的是其他用户的地址,则流量被转发到其他用户,如果仿冒的是不存在的地址,则流量在网络中被阻断危害如果用户B仿冒时用的是自己的地址,则用户A所有信息都会转发给用户B,从而形成中间人攻击如果用户B仿冒时用的是其他用户地址,就可以对其他用户进行流量攻击如果用户B仿冒是用的是网络中不存在的地址,则流量被阻断用户A的流量转发异常,要么被窃听而泄密,要么被阻断而业务中断。

1.2.4ARP泛洪攻击 - 拒绝服务攻击原理一个典型的拒绝服务流程如下:1.用户B主动(黑客)或被动(中病毒、木马、恶意软件等)发送大量伪造的ARP 请求、应答报文或其他能够触发网络设备ARP 处理的报文,造成网络设备的计算资源长期忙于ARP 处理,影响其他业务的处理,从而阻碍正常的报文转发。

2.正常用户请求ARP或者其他业务报文被阻塞,从而导致业务中断危害网络设备业务处理能力下降甚至拒绝服务,导致网络中流量中断1.2.5ARP泛洪攻击 - 缓存溢出攻击原理一个典型的缓存溢出流程如下:1.用户B主动(黑客)或被动(中病毒、木马、恶意软件等)发送向网络设备发送大量虚假的ARP 请求报文和免费ARP报文,超出网络设备ARP表项存储规格,造成网络设备上ARP缓存表溢出,无法缓存正常的ARP 表项,从而阻碍正常的报文转发。

2.正常用户ARP表项被伪造ARP表项覆盖,从而导致业务流量中断危害网络设备业务处理能力下降甚至拒绝服务,导致网络中流量中断1.2.6ARP泛洪攻击 - 扫描攻击原理一个典型的扫描攻击流程如下:1.用户B主动(黑客)或被动(中病毒、木马、恶意软件等)扫描本网段或者跨网段主机时,网络设备在发送回应报文前,会查找ARP表项,如果目的IP 地址的MAC 地址不存在,那么必然会导致网络设备向上层软件发送消息,要求上层软件发送ARP 请求报文到其他网段以获得目的端的MAC 地址。

大量的扫描报文会导致大量的消息,导致网络设备的资源浪费,影响对其他业务的处理,从而阻碍正常的报文转发。

2.正常用户请求ARP或者其他业务报文被阻塞,从而导致业务中断危害网络设备业务处理能力下降甚至拒绝服务,导致网络中流量中断1.3ARP攻击防范技术介绍1.3.1防ARP地址欺骗特性简介设备作为三层使用时,当用户发送ARP报文修改设备的ARP表项时,防地址欺骗可以通过ARP报文和ARP表中的相关表项对比,对ARP表项的某些字段不允许修改的方式防止ARP欺骗。

实现方式防地址欺骗有两种方式:1)主动确认方式进行ARP学习;2)锁定方式防表项更新,在第一次学习到ARP表后不允许再更新表项。

主动确认方式进行ARP学习在第一次学习ARP时,当收到用户的更新ARP请求,暂时不更新本地的ARP表,先向用户发送一个ARP请求,如果用户回应该请求,则学习此用户的ARP,否则不学习该用户的ARP。

注:主动确认方式的ARP学习目前有一个缺陷,参见主动确认方式的ARP学习缺陷。

锁定方式防止ARP更新当用户第一次学习到ARP后,锁定ARP表项的某些字段或全部字段,不允许更新ARP表项。

包括两种锁定方式:1)fixed-mac方式,不允许更新MAC和IP,可以更新端口、VLAN等其他信息;2)fixed-all方式,全部不允许更新,包括ARP的老化时间都不允许更新。

1.3.2防ARP网关冲突特性简介当设备作为网关时,ARP网关冲突检查可以防止用户仿冒网关的IP,非法修改网关和网络内其他用户的ARP表项。

实现方式当交换机使能防ARP网关冲突时,下发一条ACL规则将ARP报文全部上送,通过软件转发。

当CPU收到ARP报文时,比较此ARP报文的源IP是否和其所在的VLANIF的某个IP地址相同,如果相同,则为用户仿冒网关IP,丢弃此ARP报文,记录日志并发送告警。

同时下发一个ACL,丢弃该用户的ARP报文,此ACL的有效时间为3分钟,3分钟后删除此ACL规则。

1.3.3ARP严格学习特性简介ARP表项严格学习用来防止恶意更改ARP表项。

使能ARP严格学习功能后,使交换机只学习自己发送的ARP请求报文的应答报文。

实现方式ARP严格学习是在设备发送ARP请求时,记录下当前发送的请求表项,称之为发送列表,当收到ARP回应报文时,比较此报文的源地址是否在发送列表中,如果在发送列表中,则更新ARP表项,否则不更新ARP表。

另外,收到的ARP请求也免费ARP报文都不更新ARP表项。

注:该特性为VRP平台实现。

1.3.4动态ARP检测(DAI)特性简介Dynamic ARP Inspection(DAI)是通过DHCP SNOOPING表项,检查收到的ARP报文的合法性,如果ARP报文和DHCP SNOOPING绑定表的内容一致,则允许此用户的ARP报文通过,否则丢弃该ARP报文。

防止ARP中间人攻击,可以配置ARP报文检查功能,对接口或VLAN下收到的ARP报文和绑定表进行匹配检查,当报文的检查项和绑定表中的特征项一致时,转发该报文,否则丢弃报文。

同时可以配置告警功能,当丢弃的报文数超过限制的阈值时,发出告警信息。

实现方式DAI是通过DHCP SNOOPING检查ARP报文的合法性,目前有两种实现方式:1)通过软件实现,框式交换机采取这种方式;2)通过芯片实现,盒式交换机采用这种方式。

下面分别描述两种实现方式。

✧软件方式DAI软件方式DAI是将ARP报文通过软件转发,在转发过程中判断报文的合法性。

当VLAN使能DAI时,下发规则将该VLAN下的所有ARP报文上送到软件层面。

在软件层,查找DHCP SNOOPING绑定表来检查ARP报文是否和绑定表匹配,主要检查ARP报文的源MAC、源IP、报文入端口、VLAN(可以包括内层VLAN和外层VLAN)是否和DHCP SNOOPING绑定表匹配,如果完全匹配,允许报文转发,否则丢弃该报文。

匹配的选项可以配置。

✧硬件方式DAI硬件方式是通过芯片的ACL规则检查用户ARP报文的合法性,检查的内容和通过软件检查一致,也可配置。

当DHCP SNOOPING用户上线后,通知DAI模块。

DAI模块将用户表项中的源MAC、源IP、VLAN 信息,加上匹配ARP协议,组装成一条ACL规则,下发到芯片中。

相关主题