• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

07 安全配置指导

目录

14-ARP攻击防御配置

本章节下载 14-ARP攻击防御配置  (269.99 KB)

14-ARP攻击防御配置


1 ARP攻击防御配置

1.1  ARP攻击防御简介

ARP协议有简单、易用的优点,但是也因为其没有任何安全机制而容易被攻击发起者利用。

·     攻击者可以仿冒用户、仿冒网关发送伪造的ARP报文,使网关或主机的ARP表项不正确,从而对网络进行攻击。

·     攻击者通过向设备发送大量目标IP地址不能解析的IP报文,使得设备试图反复地对目标IP地址进行解析,导致CPU负荷过重及网络流量过大。

·     攻击者向设备发送大量ARP报文,对设备的CPU形成冲击。

关于ARP攻击报文的特点以及ARP攻击类型的详细介绍,请参见“ARP攻击防范技术白皮书”。

目前ARP攻击和ARP病毒已经成为局域网安全的一大威胁,为了避免各种攻击带来的危害,设备提供了多种技术对攻击进行防范、检测和解决。

下面将详细介绍一下这些技术的原理以及配置。

1.2  ARP攻击防御配置任务简介

表1-1 ARP攻击防御配置任务简介

配置任务

说明

详细配置

防止泛洪攻击

配置ARP报文限速功能

可选

建议在接入设备上配置本功能

1.3 

防止仿冒用户、仿冒网关攻击

配置ARP主动确认功能

可选

建议在网关设备上配置本功能

1.4 

配置ARP Detection功能

可选

建议在接入设备上配置本功能

1.5 

配置ARP网关保护功能

可选

建议在接入设备上配置本功能

1.6 

配置ARP过滤保护功能

可选

建议在接入设备上配置本功能

1.7 

 

1.3  配置ARP报文限速功能

ARP报文限速功能是指对上送CPU的ARP报文进行限速,可以防止大量ARP报文对CPU进行冲击。例如,在配置了ARP Detection功能后,设备会将收到的ARP报文重定向到CPU进行检查,这样引入了新的问题:如果攻击者恶意构造大量ARP报文发往设备,会导致设备的CPU负担过重,从而造成其他功能无法正常运行甚至设备瘫痪,这个时候可以启用ARP报文限速功能来控制上送CPU的ARP报文的速率。

推荐用户在配置了ARP Detection,或者发现有ARP泛洪攻击的情况下,使用ARP报文限速功能。

表1-2 配置ARP报文限速功能

操作

命令

说明

进入系统视图

system-view

-

进入二层以太网端口/二层聚合接口视图

interface interface-type interface-number

-

配置ARP报文限速功能

arp rate-limit { disable | rate pps drop }

必选

缺省情况下,ARP报文限速功能处于关闭状态

 

1.4  配置ARP主动确认功能

1.4.1  ARP主动确认功能简介

ARP的主动确认功能主要应用于网关设备上,防止攻击者仿冒用户欺骗网关设备。

启用ARP主动确认功能后,设备在新建或更新ARP表项前需进行主动确认,防止产生错误的ARP表项。关于工作原理的详细介绍请参见“ARP攻击防范技术白皮书”。

1.4.2  配置ARP主动确认功能

表1-3 配置ARP主动确认功能

配置步骤

命令

说明

进入系统视图

system-view

-

使能ARP主动确认功能

arp anti-attack active-ack enable

必选

缺省情况下,ARP主动确认功能处于关闭状态

 

1.5  配置ARP Detection功能

1.5.1  ARP Detection功能简介

ARP Detection功能主要应用于接入设备上,对于合法用户的ARP报文进行正常转发,否则直接丢弃,从而防止仿冒用户、仿冒网关的攻击。

ARP Detection包含三个功能:用户合法性检查、ARP报文有效性检查、ARP报文强制转发。

1. 用户合法性检查

对于ARP信任端口,不进行用户合法性检查;对于ARP非信任端口,需要进行用户合法性检查,以防止仿冒用户的攻击。

用户合法性检查是根据ARP报文中源IP地址和源MAC地址检查用户是否是所属VLAN所在端口上的合法用户,包括基于配置规则的检查、基于IP Source Guard静态绑定表项的检查、基于DHCP Snooping安全表项的检查、基于802.1X安全表项的检查。

(1)     首先进行基于配置规则的检查。如果在配置的规则中找到与报文匹配的规则,则按照规则对ARP报文进行处理。如果在配置的规则中没有找到与报文匹配的规则,继续进行基于IP Source Guard静态绑定表项的检查、基于DHCP Snooping安全表项的检查、基于802.1X安全表项的检查。

(2)     在基于配置规则的检查之后,如果未匹配,则进行基于IP Source Guard静态绑定表项检查。如果找到了对应源IP地址和源MAC地址的静态绑定表项,认为该ARP报文合法,进行转发。如果找到了对应源IP地址的静态绑定表项但源MAC地址不符,认为该ARP报文非法,进行丢弃。如果没有找到对应源IP地址的静态绑定表项,继续进行DHCP Snooping安全表项的检查、802.1X安全表项的检查。

(3)     在基于IP Source Guard静态绑定表项检查之后,如果未匹配,则进行基于DHCP Snooping安全表项的检查、802.1X安全表项的检查,只要符合两者中任何一个,就认为该ARP报文合法,进行转发。

(4)     如果所有检查都没有找到匹配项,则认为是非法报文,直接丢弃。

说明

·     IP Source Guard静态绑定表项通过ip source binding命令生成,详细介绍请参见“安全配置指导”中的“IP Source Guard”。

·     DHCP Snooping安全表项通过DHCP Snooping功能自动生成,详细介绍请参见“三层技术-IP业务配置指导”中的“DHCP”。

·     802.1X安全表项通过802.1X功能产生,802.1X用户需要使用可以将IP地址上传的客户端,用户通过了802.1X认证并且将IP地址上传至使能ARP Detection的设备后,设备自动生成可用于ARP Detection的用户合法性检查的802.1X安全表项。802.1X的详细介绍请参见“安全配置指导”中的“802.1X”。

 

2. ARP报文有效性检查

对于ARP信任端口,不进行报文有效性检查;对于ARP非信任端口,需要根据配置对MAC地址和IP地址不合法的报文进行过滤。可以选择配置源MAC地址、目的MAC地址或IP地址检查模式。

·     对于源MAC地址的检查模式,会检查ARP报文中的源MAC地址和以太网报文头中的源MAC地址是否一致,一致则认为有效,否则丢弃报文;

·     对于目的MAC地址的检查模式(只针对ARP应答报文),会检查ARP应答报文中的目的MAC地址是否为全0或者全1,是否和以太网报文头中的目的MAC地址一致。全0、全1、不一致的报文都是无效的,无效的报文需要被丢弃;

·     对于IP地址检查模式,会检查ARP报文中的源IP和目的IP地址,全0、全1、或者组播IP地址都是不合法的,需要丢弃。对于ARP应答报文,源IP和目的IP地址都进行检查;对于ARP请求报文,只检查源IP地址。

3. ARP报文强制转发

对于从ARP信任端口接收到的ARP报文不受此功能影响,按照正常流程进行转发;对于从ARP非信任端口接收到的、已经通过用户合法性检查的ARP报文的处理过程如下:

·     对于ARP请求报文,通过信任端口进行转发;

·     对于ARP应答报文,首先按照报文中的以太网目的MAC地址进行转发,若在MAC地址表中没有查到目的MAC地址对应的表项,则将此ARP应答报文通过信任端口进行转发。

1.5.2  配置ARP Detection功能

说明

如果既配置了报文有效性检查功能,又配置了用户合法性检查功能,那么先进行报文有效性检查,然后进行用户合法性检查。

 

1. 配置用户合法性检查功能

表1-4 配置用户合法性检查功能

操作

命令

说明

进入系统视图

system-view

-

配置用户合法性检查的规则

arp detection id-number { permit  | deny } ip { any | ip-address [ ip-address-mask ] }  mac { any | mac-address [ mac-address-mask ] } [ vlan vlan-id ]

可选

缺省情况下,没有配置用户合法性检查的规则

进入VLAN视图

vlan vlan-id

-

使能ARP Detection功能

arp detection enable

必选

缺省情况下,ARP Detection功能处于关闭状态。即不进行用户合法性检查

退回系统视图

quit

-

进入二层以太网端口或者二层聚合接口视图

interface interface-type interface-number

-

将不需要进行用户合法性检查的端口配置为ARP信任端口

arp detection trust

可选

缺省情况下,端口为ARP非信任端口

 

说明

·     配置用户合法性检查功能时,必须至少配置用户合法性检查的规则、IP Source Guard静态绑定表项、DHCP Snooping功能、802.1X功能四者之一,否则所有从ARP非信任端口收到的ARP报文都将被丢弃。

·     在配置IP Source Guard静态绑定表项时,必须指定VLAN参数,否则ARP报文将无法通过基于IP Source Guard静态绑定表项的检查。

 

2. 配置ARP报文有效性检查功能

表1-5 配置ARP报文有效性检查功能

操作

命令

说明

进入系统视图

system-view

-

进入VLAN视图

vlan vlan-id

-

使能ARP Detection功能

arp detection enable

必选

缺省情况下,ARP Detection功能处于关闭状态

退回系统视图

quit

-

使能ARP报文有效性检查功能

arp detection validate { dst-mac | ip | src-mac } *

必选

缺省情况下, ARP报文有效性检查功能处于关闭状态

进入二层以太网端口或者二层聚合接口视图

interface interface-type interface-number

-

将不需要进行ARP报文有效性检查的端口配置为ARP信任端口

arp detection trust

可选

缺省情况下,端口为ARP非信任端口

 

3. 配置ARP报文强制转发功能

进行下面的配置之前,需要保证已经配置了用户合法性检查功能。

表1-6 配置ARP报文强制转发功能

操作

命令

说明

进入系统视图

system-view

-

进入VLAN视图

vlan vlan-id

-

使能ARP报文强制转发功能

arp restricted-forwarding enable

必选

缺省情况下,ARP报文强制转发功能处于关闭状态

 

1.5.3  ARP Detection显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示配置后ARP Detection的运行情况,通过查看显示信息验证配置的效果。

在用户视图下,用户可以执行reset命令清除ARP Detection的统计信息。

表1-7 ARP Detection显示和维护

操作

命令

显示使能了ARP Detection功能的VLAN

display arp detection [ | { begin | exclude | include } regular-expression ]

显示ARP Detection功能报文检查的丢弃计数的统计信息

display arp detection statistics [ interface interface-type interface-number ] [ | { begin | exclude | include } regular-expression ]

清除ARP Detection的统计信息

reset arp detection statistics [ interface interface-type interface-number ]

 

1.5.4  用户合法性检查配置举例

1. 组网需求

·     Switch A是DHCP服务器;Switch B是支持802.1X的设备,在VLAN 10内启用ARP Detection功能,对认证客户端进行保护,保证合法用户可以正常转发报文,否则丢弃。

·     Host A和Host B是本地802.1X接入用户。

2. 组网图

图1-1 配置用户合法性检查组网图

 

3. 配置步骤

(1)     配置组网图中所有端口属于VLAN及Switch A对应VLAN接口的IP地址(略)

(2)     使能Switch A的DHCP服务功能,并配置DHCP地址池(略)

(3)     配置客户端Host A和Host B(略),必须使用上传IP地址方式

(4)     配置设备Switch B

# 配置dot1x功能。

<SwitchB> system-view

[SwitchB] dot1x

[SwitchB] interface ethernet 1/0/1

[SwitchB-Ethernet1/0/1] dot1x

[SwitchB-Ethernet1/0/1] quit

[SwitchB] interface ethernet 1/0/2

[SwitchB-Ethernet1/0/2] dot1x

[SwitchB-Ethernet1/0/2] quit

# 添加本地接入用户。

[SwitchB] local-user test

[SwitchB-luser-test] service-type lan-access

[SwitchB-luser-test] password simple test

[SwitchB-luser-test] quit

# 使能ARP Detection功能,对用户合法性进行检查。

[SwitchB] vlan 10

[SwitchB-vlan10] port Ethernet 1/0/1

[SwitchB-vlan10] port Ethernet 1/0/2

[SwitchB-vlan10] port Ethernet 1/0/3

[SwitchB-vlan10] arp detection enable

# 端口状态缺省为非信任状态,上行端口配置为信任状态,下行端口按缺省配置。

[SwitchB-vlan10] interface ethernet 1/0/3

[SwitchB-Ethernet1/0/3] arp detection trust

[SwitchB-Ethernet1/0/3] quit

完成上述配置后,对于端口Ethernet1/0/1和Ethernet1/0/2收到的ARP报文,需基于802.1X安全表项进行用户合法性检查。

1.5.5  用户合法性检查和报文有效性检查配置举例

1. 组网需求

·     Switch A是DHCP服务器;

·     Host A是DHCP客户端;用户Host B的IP地址是10.1.1.6,MAC地址是0001-0203-0607。

·     Switch B是DHCP Snooping设备,在VLAN 10内启用ARP Detection功能,对DHCP客户端和用户进行保护,保证合法用户可以正常转发报文,否则丢弃。

2. 组网图

图1-2 配置用户合法性检查和报文有效性检查组网图

 

3. 配置步骤

(1)     配置组网图中所有端口属于VLAN及Switch A对应VLAN接口的IP地址(略)

(2)     使能Switch A的DHCP服务功能,并配置DHCP地址池(略)

(3)     配置DHCP客户端Host A和用户Host B(略)

(4)     配置设备Switch B

# 配置DHCP Snooping功能。

<SwitchB> system-view

[SwitchB] dhcp-snooping

[SwitchB] interface ethernet 1/0/3

[SwitchB-Ethernet1/0/3] dhcp-snooping trust

[SwitchB-Ethernet1/0/3] quit

# 使能ARP Detection功能,对用户合法性进行检查。

[SwitchB] vlan 10

[SwitchB-vlan10] port Ethernet 1/0/1

[SwitchB-vlan10] port Ethernet 1/0/2

[SwitchB-vlan10] port Ethernet 1/0/3

[SwitchB-vlan10] arp detection enable

# 端口状态缺省为非信任状态,上行端口配置为信任状态,下行端口按缺省配置。

[SwitchB-vlan10] interface ethernet 1/0/3

[SwitchB-Ethernet1/0/3] arp detection trust

[SwitchB-Ethernet1/0/3] quit

# 在端口Ethernet1/0/2上配置IP Source Guard静态绑定表项。

[SwitchB] interface ethernet 1/0/2

[SwitchB-Ethernet1/0/2] ip source binding ip-address 10.1.1.6 mac-address 0001-0203-0607 vlan 10

[SwitchB-Ethernet1/0/2] quit

# 配置进行报文有效性检查。

[SwitchB] arp detection validate dst-mac ip src-mac

完成上述配置后,对于端口Ethernet1/0/1和Ethernet1/0/2收到的ARP报文,先进行报文有效性检查,然后基于IP Source Guard静态绑定表项、DHCP Snooping安全表项进行用户合法性检查。

1.5.6  ARP报文强制转发配置举例

1. 组网需求

·     Switch A是DHCP服务器。

·     Host A是DHCP客户端;用户Host B的IP地址是10.1.1.6,MAC地址是0001-0203-0607。

·     Host A和Host B在设备Switch B上端口隔离,但是均和网关Switch A相通,Ethernet1/0/1、Ethernet1/0/2、Ethernet1/0/3均属于VLAN 10。

·     Switch B是DHCP Snooping设备,在VLAN 10内启用ARP Detection功能,对DHCP客户端和用户进行保护,保证合法用户可以正常转发报文,否则丢弃。

要求:Switch B在启用ARP Detection功能后,对于ARP广播请求报文仍然能够进行端口隔离。

2. 组网图

图1-3 配置ARP报文强制转发组网图

 

3. 配置步骤

(1)     配置组网图中所有端口属于VLAN及Switch A对应VLAN接口的IP地址(略)

(2)     使能Switch A的DHCP服务功能,并配置DHCP地址池(略)

(3)     配置DHCP客户端Host A和用户Host B(略)

(4)     配置设备Switch B

# 配置DHCP Snooping功能。

<SwitchB> system-view

[SwitchB] dhcp-snooping

[SwitchB] interface ethernet 1/0/3

[SwitchB-Ethernet1/0/3] dhcp-snooping trust

[SwitchB-Ethernet1/0/3] quit

# 使能ARP Detection功能,对用户合法性进行检查。

[SwitchB] vlan 10

[SwitchB-vlan10] port Ethernet 1/0/1

[SwitchB-vlan10] port Ethernet 1/0/2

[SwitchB-vlan10] port Ethernet 1/0/3

[SwitchB-vlan10] arp detection enable

[SwitchB-vlan10] quit

# 端口状态缺省为非信任状态,上行端口配置为信任状态,下行端口按缺省配置。

[SwitchB] interface ethernet 1/0/3

[SwitchB-Ethernet1/0/3] arp detection trust

[SwitchB-Ethernet1/0/3] quit

# 在端口Ethernet1/0/2上配置IP Source Guard静态绑定表项。

[SwitchB] interface ethernet 1/0/2

[SwitchB-Ethernet1/0/2] ip source binding ip-address 10.1.1.6 mac-address 0001-0203-0607 vlan 10

[SwitchB-Ethernet1/0/2] quit

# 配置进行报文有效性检查。

[SwitchB] arp detection validate dst-mac ip src-mac

# 配置端口隔离。

[SwitchB] interface ethernet 1/0/1

[SwitchB-Ethernet1/0/1] port-isolate enable

[SwitchB-Ethernet1/0/1] quit

[SwitchB] interface ethernet 1/0/2

[SwitchB-Ethernet1/0/2] port-isolate enable

[SwitchB-Ethernet1/0/2] quit

完成上述配置后,对于端口Ethernet1/0/1和Ethernet1/0/2收到的ARP报文,先进行报文有效性检查,然后基于IP Source Guard静态绑定表项、DHCP Snooping安全表项进行用户合法性检查。但是,Host A发往Switch A的ARP广播请求报文,由于通过了用户合法性检查,所以能够被转发到Host B,端口隔离功能失效。

# 配置ARP报文强制转发功能。

[SwitchB] vlan 10

[SwitchB-vlan10] arp restricted-forwarding enable

[SwitchB-vlan10] quit

此时,Host A发往Switch A的合法ARP广播请求报文只能通过信任端口Ethernet1/0/3转发,不能被Host B接收到,端口隔离功能可以正常工作。

1.6  配置ARP网关保护功能

1.6.1  ARP网关保护功能简介

在设备上不与网关相连的端口上配置此功能,可以防止伪造网关攻击。

在端口配置此功能后,当端口收到ARP报文时,将检查ARP报文的源IP地址是否和配置的被保护网关的IP地址相同。如果相同,则认为此报文非法,将其丢弃;否则,认为此报文合法,继续进行后续处理。

1.6.2  配置ARP网关保护功能

表1-8 配置ARP网关保护功能

操作

命令

说明

进入系统视图

system-view

-

进入二层以太网端口视图/二层聚合接口视图

interface interface-type interface-number

-

开启ARP网关保护功能,配置被保护的网关IP地址

arp filter source ip-address

必选

缺省情况下,ARP网关保护功能处于关闭状态

 

说明

·     每个端口最多支持配置8个被保护的网关IP地址。

·     不能在同一端口下同时配置命令arp filter sourcearp filter binding

·     本功能与ARP Detection功能配合使用时,先进行本功能检查,本功能检查通过后才会进行其他配合功能的处理。

 

1.6.3  ARP网关保护功能配置举例

1. 组网需求

与Switch B相连的Host B进行了仿造网关Switch A(IP地址为10.1.1.1)的ARP攻击,导致与Switch B相连的设备与网关Switch A通信时错误发往了Host B。

要求:通过配置防止这种仿造网关攻击。

2. 组网图

图1-4 配置ARP网关保护功能组网图

 

3. 配置步骤

# 在Switch B上配置ARP网关保护功能。

<SwitchB> system-view

[SwitchB] interface ethernet 1/0/1

[SwitchB-Ethernet1/0/1] arp filter source 10.1.1.1

[SwitchB-Ethernet1/0/1] quit

[SwitchB] interface ethernet 1/0/2

[SwitchB-Ethernet1/0/2] arp filter source 10.1.1.1

完成上述配置后,对于Host B发送的伪造的源IP地址为网关IP地址的ARP报文将会被丢弃,不会再被转发。

1.7  配置ARP过滤保护功能

1.7.1  ARP过滤保护功能简介

本功能用来限制端口下允许通过的ARP报文,可以防止仿冒网关和仿冒用户的攻击。

在端口配置此功能后,当端口收到ARP报文时,将检查ARP报文的源IP地址和源MAC地址是否和允许通过的IP地址和MAC地址相同:

·     如果相同,则认为此报文合法,继续进行后续处理;

·     如果不相同,则认为此报文非法,将其丢弃。

1.7.2  配置ARP过滤保护功能

表1-9 配置ARP过滤保护功能

操作

命令

说明

进入系统视图

system-view

-

进入二层以太网端口视图/二层聚合接口视图

interface interface-type interface-number

-

开启ARP过滤保护功能,配置允许通过的ARP报文的源IP地址和源MAC地址

arp filter binding ip-address mac-address

必选

缺省情况下,ARP过滤保护功能处于关闭状态

 

说明

·     每个端口最多支持配置8组允许通过的ARP报文的源IP地址和源MAC地址。

·     不能在同一端口下同时配置命令arp filter sourcearp filter binding

·     本功能与ARP Detection功能配合使用时,先进行本功能检查,本功能检查通过后才会进行其他配合功能的处理。

 

1.7.3  ARP过滤保护功能配置举例

1. 组网需求

·     Host A的IP地址为10.1.1.2,MAC地址为000f-e349-1233。

·     Host B的IP地址为10.1.1.3,MAC地址为000f-e349-1234。

·     限制Switch B的Ethernet1/0/1、Ethernet1/0/2端口只允许指定用户接入,不允许其他用户接入。

2. 组网图

图1-5 配置ARP过滤保护功能组网图

 

3. 配置步骤

# 配置Switch B的ARP过滤保护功能。

<SwitchB> system-view

[SwitchB] interface ethernet 1/0/1

[SwitchB-Ethernet1/0/1] arp filter binding 10.1.1.2 000f-e349-1233

[SwitchB-Ethernet1/0/1] quit

[SwitchB] interface ethernet 1/0/2

[SwitchB-Ethernet1/0/2] arp filter binding 10.1.1.3 000f-e349-1234

完成上述配置后,端口Ethernet1/0/1收到Host A发出的源IP地址为10.1.1.2、源MAC地址为000f-e349-1233的ARP报文将被允许通过,其他ARP报文将被丢弃;端口Ethernet1/0/2收到Host B发出的源IP地址为10.1.1.3、源MAC地址为000f-e349-1234的ARP报文将被允许通过,其他ARP报文将被丢弃。

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们