15-ND攻击防御配置
本章节下载: 15-ND攻击防御配置 (238.06 KB)
目 录
ND协议功能强大,但是却没有任何安全机制,容易被攻击者利用。如图1-1所示,当Device作为接入设备时,攻击者Host B可以仿冒其他用户、仿冒网关发送伪造的ND报文,对网络进行攻击:
· 如果攻击者仿冒其他用户的IPv6地址发送NS/NA/RS报文,将会改写网关或者其他用户的ND表项,导致被仿冒用户的报文错误的发送到攻击者的终端上。
· 如果攻击者仿冒网关发送RA报文,会导致其他用户的IPv6配置参数错误和ND表项被改写。
图1-1 ND攻击示意图
伪造的ND报文具有如下特点:
· 伪造的ND报文中源MAC地址和源链路层选项地址中的MAC地址不一致。
· 伪造的ND报文中源IPv6地址和源MAC地址的映射关系不是合法用户真实的映射关系。
根据上述攻击报文的特点,设备开发了多种功能对ND攻击进行检测,可以有效地防范ND攻击带来的危害。
如下所有配置均为可选,请根据实际情况选择配置。
本特性根据ND报文的源MAC地址对上送CPU的ND报文进行统计,在一个检测周期内,如果收到同一源MAC地址(源MAC地址固定)的ND报文超过一定的阈值,则认为存在攻击,系统会将此MAC地址添加到攻击检测表项中。在开启了ND日志信息功能的情况下(配置ipv6 nd check log enable命令),系统会根据设置的检查模式对存在于攻击检测表项中的MAC地址有如下处理:
· 如果设置的检查模式为过滤模式,则会打印日志信息并且将该源MAC地址发送的ND报文过滤掉;
· 如果设置的检查模式为监控模式,则只打印日志信息,不会将该源MAC地址发送的ND报文过滤掉。
对于已添加到源MAC地址固定的ND攻击检测表项中的MAC地址,在等待设置的老化时间后,如果老化时间内丢弃的ND报文个数大于或等于一个特定值,则设备会重置该表项的老化时间;如果小于该特定值,则设备删除该源MAC地址固定的ND攻击表项,MAC地址会重新恢复成普通MAC地址。
根据ND报文的源MAC地址对上送CPU的ND报文进行统计时,设备支持如下两种统计方式:
· 基于接口的统计方式:每个接口单独进行报文统计计数。在一个检测周期内,如果某接口收到同一源MAC地址(源MAC地址固定)的ND报文超过一定的阈值,则认为存在攻击。
· 基于slot的统计方式:slot上所有接口的报文进行统一计数。在一个检测周期内,如果某slot收到同一源MAC地址(源MAC地址固定)的ND报文超过一定的阈值,则认为存在攻击。
切换源MAC地址固定的ND攻击检查模式时,如果从监控模式切换到过滤模式,过滤模式马上生效;如果从过滤模式切换到监控模式,已生成的攻击检测表项在老化之前还会继续按照过滤模式处理。
对于网关或一些重要的服务器,可能会收到大量ND报文,为了使这些ND报文不被过滤掉,可以将这类设备的MAC地址配置成保护MAC地址,这样,即使该设备上存在攻击也不会被检测或过滤。
当网络环境安全性较差时,建议配置较小的检测周期,便于检测到源MAC地址固定的ND攻击。否则,可以配置较大的检测周期。
根据ND报文的源MAC地址对上送CPU的ND报文进行统计时:
· 仅下表所列单板支持基于接口的统计方式。
表1-1 单板信息一览表
单板类型 |
单板丝印 |
CEPC单板 |
CEPC-CQ8L、CEPC-CQ16L1 |
CSPEX单板 |
CSPEX-1802XB、CSPEX-1802X、CSPEX-1812X-E、CSPEX-2304X-G、CSPEX-2612X-E |
SPE单板 |
RX-SPE200-E |
· 仅下表所列单板支持基于slot的统计方式。
表1-2 单板信息一览表
单板类型 |
单板丝印 |
CEPC单板 |
CEPC-XP4LX、CEPC-XP24LX、CEPC-XP48RX、CEPC-CP4RX、CEPC-CP4RX-L |
CSPC单板 |
CSPC-GE16XP4L-E、CSPC-GE24L-E、CSPC-GP24GE8XP2L-E |
CSPEX单板 |
CSPEX-1304X、CSPEX-1304S、CSPEX-1404X、CSPEX-1404S、CSPEX-1502X、CSPEX-1504X、CSPEX-1504S、CSPEX-1602X、CSPEX-1804X、CSPEX-1512X、CSPEX-1612X、CSPEX-1812X、CSPEX-1104-E |
SPEX单板 |
SPEX-1204 |
SPE单板 |
RX-SPE200 |
(1) 进入系统视图。
system-view
(2) 开启源MAC地址固定的ND攻击检测功能,并指定检查模式。
ipv6 nd source-mac { filter | monitor }
缺省情况下,源MAC地址固定的ND攻击检测功能处于关闭状态。
(3) 设置源MAC地址固定的ND攻击检测功能的检测周期。
ipv6 nd source-mac check-interval interval
缺省情况下,源MAC地址固定的ND攻击检测功能的检测周期为5秒。
(4) (可选)配置源MAC地址固定的ND报文攻击检测的阈值。
ipv6 nd source-mac threshold threshold-value
缺省情况下,源MAC地址固定的ND报文攻击检测表项的阈值为30个。
(5) (可选)配置源MAC地址固定的ND报文攻击检测的老化时间。
ipv6 nd source-mac aging-time time
缺省情况下,源MAC地址固定的ND攻击检测表项的老化时间为300秒,即5分钟。
(6) (可选)配置保护MAC地址。
ipv6 nd source-mac exclude-mac mac-address&<1-10>
缺省情况下,未配置任何保护MAC地址。
(7) (可选)开启ND日志信息功能。
ipv6 nd check log enable
缺省情况下,ND日志信息功能处于关闭状态。
在完成上述配置后,在任意视图下执行display命令可以显示配置后源MAC地址固定的ND攻击检测的运行情况,通过查看显示信息验证配置的效果。
在用户视图下,用户可以执行reset命令清除源MAC地址固定的ND攻击检测的统计信息。
表1-3 源MAC地址固定的ND攻击检测显示和维护
操作 |
命令 |
显示源MAC地址固定的ND攻击检测参数 |
(独立运行模式) display ipv6 nd source-mac configuration [ slot slot-number [ cpu cpu-number ] ] (IRF模式) display ipv6 nd source-mac configuration [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] |
显示检测到的源MAC地址固定的ND攻击检测表项信息 |
(独立运行模式) display ipv6 nd source-mac interface interface-type interface-number [ slot slot-number [ cpu cpu-number ] ] [ verbose ] display ipv6 nd source-mac { mac mac-address | vlan vlan-id } slot slot-number [ cpu cpu-number ] [ verbose ] display ipv6 nd source-mac slot slot-number [ cpu cpu-number ] [ count | verbose ] (IRF模式) display ipv6 nd source-mac interface interface-type interface-number [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] [ verbose ] display ipv6 nd source-mac { mac mac-address | vlan vlan-id } chassis chassis-number slot slot-number [ cpu cpu-number ] [ verbose ] display ipv6 nd source-mac chassis chassis-number slot slot-number [ cpu cpu-number ] [ count | verbose ] |
显示丢弃的源MAC地址固定的ND攻击报文计数统计信息 |
(独立运行模式) display ipv6 nd source-mac statistics slot slot-number [ cpu cpu-number ] (IRF模式) display ipv6 nd source-mac statistics chassis chassis-number slot slot-number [ cpu cpu-number ] |
清除源MAC地址固定的ND攻击表项 |
(独立运行模式) reset ipv6 nd source-mac [ interface interface-type interface-number | mac mac-address | vlan vlan-id ] [ slot slot-number [ cpu cpu-number ] ] (IRF模式) reset ipv6 nd source-mac [ interface interface-type interface-number | mac mac-address | vlan vlan-id ] [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] |
清除丢弃的源MAC地址固定的ND攻击报文计数统计信息 |
(独立运行模式) reset ipv6 nd source-mac statistics [ interface interface-type interface-number | mac mac-address | vlan vlan-id ] [ slot slot-number [ cpu cpu-number ] ] (IRF模式) reset ipv6 nd source-mac statistics [ interface interface-type interface-number | mac mac-address | vlan vlan-id ] [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] |
ND接口攻击抑制功能基于接口限制ND请求速率,以防止非法用户构造大量ND请求报文对设备进行ND攻击。本功能只统计设备的三层接口上收到的ND请求报文,在一个检测周期内,如果单个接口收到的ND请求报文个数超过配置的ND接口攻击抑制阈值,则认为该接口受到ND攻击。确定接口受到ND攻击后,设备会生成ND接口攻击抑制表项:
· 在ND接口攻击抑制表项的抑制时间清零之前设备会限制被攻击的接口每秒钟接收ND报文的速率,防止ND攻击报文持续冲击CPU。以128个字节长的ND报文为例,则被攻击的接口每秒钟只能接收100个ND报文。
· ND接口攻击抑制表项的抑制时间清零后,如果抑制时间内收到的ND报文个数大于或等于一个特定值,则设备将ND接口攻击抑制表项抑制时间会恢复并重新开始计时;如果小于该特定值,则设备删除该ND接口攻击抑制表项。
本功能对VLAN接口和VSI虚接口不生效。
建议在网关设备上开启本功能。
(1) 进入系统视图。
system-view
(2) 开启ND接口攻击抑制功能。
ipv6 nd attack-suppression enable per-interface
缺省情况下,ND接口攻击抑制功能处于关闭状态。
(3) 设置ND接口攻击抑制功能的检测周期。
ipv6 nd attack-suppression check-interval interval
缺省情况下,ND接口攻击抑制功能的检测周期为5秒。
(4) 配置ND接口攻击抑制阈值。
ipv6 nd attack-suppression threshold threshold-value
缺省情况下,ND接口攻击抑制阈值为1000。
(5) 设置ND接口攻击抑制功能的抑制时间。
ipv6 nd attack-suppression suppression-time time
缺省情况下,ND接口攻击抑制功能的抑制时间为300秒。
在完成上述配置后,在任意视图下执行display命令可以显示ND接口攻击抑制功能的运行情况,通过查看显示信息验证配置的效果。
表1-4 ND接口攻击抑制显示和维护
操作 |
命令 |
显示ND接口攻击抑制功能的配置信息 |
display ipv6 nd attack-suppression configuration |
显示ND接口攻击抑制表项 |
(独立运行模式) display ipv6 nd attack-suppression per-interface slot slot-number [ cpu cpu-number ] [ count | verbose ] (IRF模式) display ipv6 nd attack-suppression per-interface chassis chassis-number slot slot-number [ cpu cpu-number ] [ count | verbose ] |
显示指定接口的ND接口攻击抑制表项 |
(独立运行模式) display ipv6 nd attack-suppression per-interface interface interface-type interface-number [ slot slot-number [ cpu cpu-number ] ] [ verbose ] (IRF模式) display ipv6 nd attack-suppression per-interface interface interface-type interface-number [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] [ verbose ] |
清除ND接口攻击抑制表项 |
(独立运行模式) reset ipv6 nd attack-suppression per-interface [ interface interface-type interface-number ] [ slot slot-number [ cpu cpu-number ] ] (IRF模式) reset ipv6 nd attack-suppression per-interface [ interface interface-type interface-number ] [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] |
清除ND接口攻击抑制功能丢弃的ND攻击报文计数统计信息 |
(独立运行模式) reset ipv6 nd attack-suppression per-interface statistics [ interface interface-type interface-number ] [ slot slot-number [ cpu cpu-number ] ] (IRF模式) reset ipv6 nd attack-suppression per-interface statistics [ interface interface-type interface-number ] [ chassis chassis-number slot slot-number [ cpu cpu-number ] ] |
ND协议报文源MAC地址一致性检查功能主要应用于网关设备上,防御ND报文中的源MAC地址和以太网数据帧首部中的源MAC地址不同的ND攻击。
开启本特性后,网关设备会对接收的ND协议报文进行检查。如果ND报文中的源MAC地址和以太网数据帧首部中的源MAC地址不一致,则认为是攻击报文,将其丢弃;否则,继续进行ND学习。
若开启ND日志信息功能,当用户ND报文中的源MAC地址和以太网数据帧首部中的源MAC地址不同时,会有相关的日志信息输出。设备生成的ND日志信息会交给信息中心模块处理,信息中心模块的配置将决定日志信息的发送规则和发送方向。关于信息中心的详细描述请参见“网络管理和监控配置指导”中的“信息中心”。
(1) 进入系统视图。
system-view
(2) 开启ND协议报文源MAC地址一致性检查功能。
ipv6 nd mac-check enable
缺省情况下,ND协议报文源MAC地址一致性检查功能处于关闭状态。
(3) (可选)开启ND日志信息功能。
ipv6 nd check log enable
缺省情况下,ND日志信息功能处于关闭状态。
为了防止设备输出过多的ND日志信息,一般情况下建议不要开启此功能。
用户可根据业务需求开启指定功能的ND模块的告警:
· 开启了ND表项达到最大个数的告警功能后,如果当前ND表项的数量超过了告警阈值,设备会将当前ND表项的数目作为告警信息发送到设备的SNMP模块。
· 开启了ND模块终端与本机冲突的告警功能后,设备会将冲突报文的发送端IPv6地址和MAC地址、目标IPv6地址和MAC地址等信息作为告警信息发送设备的SNMP模块。
· 开启了ND Miss消息和ND报文发送限速的告警功能后,如果设备每秒发送的ND Miss消息或ND报文的个数超过了设备定制的阈值,设备会将超速峰值作为告警信息发送到设备的SNMP模块。
· 开启了ND模块终端用户间IPv6地址冲突的告警功能后,设备会将冲突报文的发送端IPv6地址和MAC地址、发生冲突的本地表项的MAC地址等信息作为告警信息发送到设备的SNMP模块。
可以通过设置SNMP中告警信息的发送参数,来决定告警信息输出的相关特性。有关告警信息的详细描述,请参见“网络管理和监控配置指导”中的“SNMP”。
(1) 进入系统视图。
system-view
(2) 开启ND模块的告警功能。
snmp-agent trap enable nd [ entry-limit | local-conflict | nd-miss | user-ip-conflict ] *
缺省情况下,ND模块的告警功能处于关闭状态。
如果不指定任何参数,则表示打开ND模块的所有告警功能。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!