08-ND攻击防御配置
本章节下载: 08-ND攻击防御配置 (217.21 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地址一致性检查功能主要应用于网关设备上,防御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表项可以通过邻居请求消息NS及邻居通告消息NA来动态创建,但是这个动态创建过程需要流量来触发。接口上开启了ND周期自动扫描功能后,会周期性的向指定范围内的所有ND表项中不存在的IPv6地址发送NS请求报文,从而解决了NS消息的发送依赖流量以及接口ND表项无法及时更新的问题。
接口发送NS请求报文时使用的源地址可选择指定,缺省为配置的接口IPv6地址:
· 如果开启本功能时未指定NS请求报文使用的源地址,则接口将对ND自动扫描区间和接口所在网段的交集进行扫描。如果接口上配置了多个网段的IPv6地址,且这些网段与ND自动扫描区间都有交集,则设备发送的请求消息NS的源IPv6地址为前缀较长的地址;如果前缀长度相同,则选择接口主IPv6地址。
· 如果开启本功能时指定了NS请求报文使用的源地址,则接口将对ND自动扫描区间进行扫描,不判断与接口网段的交集。
为避免影响设备转发性能,建议仅在网络中用户频繁上下线的环境下开启本功能。
(1) 进入系统视图。
system-view
(2) (可选)设置ND表项周期性自动扫描的速率。
ipv6 nd scan auto send-rate { ppm ppm | pps pps }
缺省情况下,ND表项周期性自动扫描速率为每秒发送48个包。
(3) 进入接口视图。
interface interface-type interface-number
(4) 开启ND周期自动扫描功能。
ipv6 nd scan auto enable start-ipv6-address to end-ipv6-address [ source-addr source-ipv6-address ]
缺省情况下,接口上的ND周期性扫描功能处于关闭状态。
用户可根据业务需求开启指定功能的ND模块的告警:
· 当开启了ND模块邻居表项达到阈值的告警功能后,设备会将当前的邻居表项信息记录在告警信息中,生成的告警信息将发送到设备的SNMP模块,通过设置SNMP中告警信息的发送参数,来决定告警信息输出的相关特性。
· 当开启了ND模块终端与本机冲突的告警功能后,设备将冲突报文的IPv6地址、MAC地址等信息作为告警信息发送出去,生成的告警信息将发送到设备的SNMP模块,通过设置SNMP中告警信息的发送参数,来决定告警信息输出的相关特性。
· 当开启了ND模块ND Miss消息限速的告警功能后,设备将报文速率信息作为告警信息发送出去,生成的告警信息将发送到设备的SNMP模块,通过设置SNMP中告警信息的发送参数,来决定告警信息输出的相关特性。当设备收到目标IP地址不能解析的IP报文时,会向CPU上送ND Miss消息。
· 开启了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模块的所有告警功能。
在规模较大的组网环境中(比如园区网络),使用ND周期性扫描功能后,如果指定的扫描范围过大,会导致需要较长的时间才能扫描到异常下线的主机。开启本功能后系统可以通过Keepalive表项快速定位异常下线的主机,并在老化时间内对异常下线主机的状态进行监测。
ND的Keepalive表项的老化时间可以在系统视图和接口视图下同时配置,优先使用接口视图下的配置,如果接口视图下为缺省配置则使用系统视图下的配置。
用户上线后,系统会生成动态ND表项和IP Source Guard绑定表项。开启本功能后,系统会根据这些表项建立状态为在线的Keepalive表项。用户下线后其ND表项会被删除,对应的Keepalive表项的状态被置为离线。设备每隔一段时间会向处于离线状态的Keepalive表项对应的IPv6地址发送ND请求报文,直到Keepalive表项的状态恢复成在线或离线状态的Keepalive表项被删除。处于离线状态的Keepalive表项在老化时间内没有恢复成在线便会被删除。对于某处于离线状态的Keepalive表项,设备发送ND请求报文的间隔时间由已经向此Keepalive表项对应的IPv6地址发送的ND请求报文的个数决定。关于IP Source Guard的详细介绍,请参见“安全配置指导”中的“IP Source Guard”。
(1) 进入系统视图。
system-view
(2) (可选)设置ND的Keepalive表项扫描速率。
ipv6 nd scan keepalive send-rate pps
缺省情况下,ND的Keepalive表项扫描速率为每秒发送48个ND请求报文。
(3) (可选)配置ND的Keepalive表项的老化时间
ipv6 nd scan keepalive aging-time time
缺省情况下,系统视图下ND的Keepalive表项的老化时间为60分钟,接口视图下ND的Keepalive表项的老化时间采用系统视图下的配置。
(4) 进入接口视图。
interface interface-type interface-number
(5) 开启ND的Keepalive表项扫描功能。
ipv6 nd scan keepalive enable
缺省情况下,接口上的ND的Keepalive表项扫描功能处于关闭状态。
在完成上述配置后,在任意视图下执行display命令可以显示ND的Keepalive表项扫描的相关信息。
在用户视图下,用户可以执行reset命令清除接口向异常状态的Keepalive表项发送的ND请求报文的计数信息。
表1-1 ND的Keepalive表项扫描显示信息
操作 |
命令 |
显示ND的Keepalive表项信息 |
display ipv6 nd scan keepalive entry [ interface interface-type interface-number ] [ count ] |
显示接口向异常状态的Keepalive表项发送的NS报文个数 |
display ipv6 nd scan keepalive statistics [ slot slot-number ] [ interface interface-type interface-number ] |
清除接口向异常状态的Keepalive表项发送的NS报文的计数信息 |
reset ipv6 nd scan keepalive statistics [ slot slot-number ] |
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!