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

19-安全配置指导

目录

15-攻击检测与防范配置

本章节下载 15-攻击检测与防范配置  (370.21 KB)

15-攻击检测与防范配置


1 攻击检测及防范

1.1  攻击检测及防范简介

攻击检测及防范是一个重要的网络安全特性,它通过分析经过设备的报文的内容和行为,判断报文是否具有攻击特征,并根据配置对具有攻击特征的报文执行一定的防范措施,例如输出告警日志或丢弃报文。

1.2  攻击检测及防范的类型

设备能够检测单包攻击、扫描攻击和泛洪攻击等多种类型的网络攻击,并能对各类型攻击采取合理的防范措施。

1.2.1  单包攻击

单包攻击也称为畸形报文攻击,主要包括以下三种类型:

·     攻击者通过向目标系统发送带有攻击目的的IP报文,如分片重叠的IP报文、TCP标志位非法的报文,使得目标系统在处理这样的IP报文时出错、崩溃;

·     攻击者可以通过发送正常的报文,如ICMP报文、特殊类型的IP option报文,来干扰正常网络连接或探测网络结构,给目标系统带来损失;

·     攻击者还可通过发送大量无用报文占用网络带宽,造成拒绝服务攻击。

设备可以对表1-1中所列的各单包攻击行为进行有效防范。

表1-1 单包攻击类型及说明列表

单包攻击类型

说明

ICMP redirect

攻击者向用户发送ICMP重定向报文,更改用户主机的路由表,干扰用户主机正常的IP报文转发。

ICMP unreachable

某些系统在收到不可达的ICMP报文后,对于后续发往此目的地的报文判断为不可达并切断对应的网络连接。攻击者通过发送ICMP不可达报文,达到切断目标主机网络连接的目的。

ICMP type

ICMP报文中,不同type值表示不同的报文类型,接收者需要根据不同的类型进行响应,攻击者通过构造特定type类型的ICMP报文来达到影响系统正常处理报文等目的。

ICMPv6 type

ICMPv6报文中,不同type值表示不同的报文类型,接收者需要根据不同的类型进行响应,攻击者通过构造特定type类型的ICMPv6报文来达到影响系统正常处理报文等目的。

Land

攻击者向目标主机发送大量源IP地址和目的IP地址都是目标主机自身的TCP SYN报文,使得目标主机的半连接资源耗尽,最终不能正常工作。

Large ICMP

某些主机或设备收到超大的报文,会引起内存分配错误而导致协议栈崩溃。攻击者通过发送超大ICMP报文,让目标主机崩溃,达到攻击目的。

Large ICMPv6

某些主机或设备收到超大的报文,会引起内存分配错误而导致协议栈崩溃。攻击者通过发送超大ICMPv6报文,让目标主机崩溃,达到攻击目的。

IP option

攻击者利用IP报文中的异常选项的设置,达到探测网络结构的目的,也可由于系统缺乏对错误报文的处理而造成系统崩溃。

Fragment

攻击者通过向目标主机发送分片偏移小于等于5的分片报文,导致主机对分片报文进行重组时发生错误而造成系统崩溃。

Impossible

攻击者通过向目标主机发送源IP地址和目的IP地址相同的报文,造成主机系统处理异常。

Tiny fragment

攻击者构造一种特殊的IP分片来进行微小分片的攻击,这种报文首片很小,未能包含完整的传输层信息,因此能够绕过某些包过滤防火墙的过滤规则,达到攻击目标网络的目的。

Smurf

攻击者向目标网络发送ICMP应答请求,该请求包的目的地址设置为A、B、C类子网的网络地址或广播地址,这样该网络中的所有主机都会对此ICMP应答请求作出答复,导致网络阻塞,从而达到令目标网络中主机拒绝服务的攻击目的。

TCP Flag

不同操作系统对于非常规的TCP标志位有不同的处理。攻击者通过发送带有非常规TCP标志的报文探测目标主机的操作系统类型,若操作系统对这类报文处理不当,攻击者便可达到使目标主机系统崩溃的目的。

Traceroute

攻击者连续发送TTL从1开始递增的目的端口号较大的UDP报文,报文每经过一个路由器,其TTL都会减1,当报文的TTL为0时,路由器会给报文的源IP设备发送一个TTL超时的ICMP报文,攻击者借此来探测网络的拓扑结构。

Winnuke

攻击者向安装(或使用)Windows系统的特定目标的NetBIOS端口(139)发送OOB(Out-Of-Band,带外)数据包,这些攻击报文的指针字段与实际的位置不符,从而引起一个NetBIOS片断重叠,致使已与其他主机建立连接的目标主机在处理这些数据的时候系统崩溃。

UDP Bomb

攻击者发送畸形的UDP报文,其IP首部中的报文总长度大于IP首部长度与UDP首部中标识的UDP报文长度之和,可能造成收到此报文的系统处理数据时越界访问非法内存,导致系统异常。

UDP Snork

攻击者向Windows系统发送目的端口为135(Windows定位服务)源端口为135、7或19(UDP Chargen服务)的报文,使被攻击系统不断应答报文,最终耗尽CPU资源。

UDP Fraggle

攻击者通过向目标网络发送源UDP端口为7且目的UDP端口为19的Chargen报文,令网络产生大量无用的应答报文,占满网络带宽,达到攻击目的。

Teardrop

攻击者通过发送大量分片重叠的报文,致使服务器对这些报文进行重组时造成重叠,因而丢失有效的数据。

Ping of death

攻击者构造标志位为最后一片且长度大于65535的ICMP报文发送给目标主机,可能导致系统处理数据时越界访问非法内存,造成系统错误甚至系统崩溃。

IPv6 ext-header

攻击者可以通过构造包含异常数量IPv6扩展头的报文对目标主机进行攻击,目标主机在解析报文时耗费大量资源,从而影响转发性能。

 

1.2.2  扫描攻击

扫描攻击是指,攻击者运用扫描工具对网络进行主机地址或端口的扫描,通过准确定位潜在目标的位置,探测目标系统的网络拓扑结构和开放的服务端口,为进一步侵入目标系统做准备。

1. IP Sweep攻击

攻击者发送大量目的IP地址变化的探测报文,通过收到的回应报文来确定活跃的目标主机,以便针对这些主机进行下一步的攻击。

2. Port scan攻击

攻击者获取了活动目标主机的IP地址后,向目标主机发送大量目的端口变化的探测报文,通过收到的回应报文来确定目标主机开放的服务端口,然后针对活动目标主机开放的服务端口选择合适的攻击方式或攻击工具进行进一步的攻击。

3. 分布式Port scan攻击

攻击者控制多台主机,分别向特定目标主机发送探测报文,通过收集所有被控制的主机的回应报文,确定目标主机开启的服务端口,以便进一步实施攻击。

1.2.3  泛洪攻击

泛洪攻击是指攻击者在短时间内向目标系统发送大量的虚假请求,导致目标系统疲于应付无用信息,从而无法为合法用户提供正常服务,即发生拒绝服务。

设备支持对以下几种泛洪攻击进行有效防范:

1. SYN flood攻击

根据TCP协议工作原理,服务器收到SYN报文后需要建立半连接并回应SYN ACK报文,然后等待客户端的ACK报文来建立正式连接。由于资源的限制,操作系统的TCP/IP协议栈只能允许有限个TCP连接。攻击者向服务器发送大量伪造源地址的SYN报文后,由于攻击报文是伪造的,服务器不会收到客户端的ACK报文,从而导致服务器上遗留了大量无效的半连接,耗尽其系统资源,使正常的用户无法访问,直到半连接超时。

2. ACK flood攻击

ACK报文为只有ACK标志位置位的TCP报文,服务器收到ACK报文时,需要查找对应的连接。若攻击者发送大量这样的报文,服务器需要进行大量的查询工作,消耗正常处理的系统资源,影响正常的报文处理。

3. SYN-ACK flood攻击

由于SYN ACK报文为SYN报文的后续报文,服务器收到SYN ACK报文时,需要查找对应的SYN报文。若攻击者发送大量这样的报文,服务器需要进行大量的查询工作,消耗正常处理的系统资源,影响正常的报文处理。

4. FIN flood攻击

FIN报文用于关闭TCP连接。若攻击者向服务器发送大量的伪造的FIN报文,可能会使服务器关闭掉正常的连接。同时,服务器收到FIN报文时,需要查找对应的连接,大量的无效查询操作会消耗系统资源,影响正常的报文处理。

5. RST flood攻击

RST报文为TCP连接的复位报文,用于在异常情况下关闭TCP连接。如果攻击者向服务器发送大量伪造的RST报文,可能会使服务器关闭正常的TCP连接。另外,服务器收到RST报文时,需要查找对应的连接,大量的无效查询操作会消耗系统资源,影响正常的报文处理。

6. DNS flood攻击

DNS服务器收到任何DNS Query报文时都会试图进行域名解析并且回复该DNS报文。攻击者通过构造并向DNS服务器发送大量虚假DNS Query报文,占用DNS服务器的带宽或计算资源,使得正常的DNS Query得不到处理。

7. HTTP flood攻击

HTTP服务器收到HTTP GET/POST命令时可能进行一系列复杂的操作,包括字符串搜索、数据库遍历、数据组装、格式化转换等等,这些操作会消耗大量系统资源,因此当HTTP请求的速率超过了服务器的处理能力时,服务器就无法正常提供服务。攻击者通过构造并发送大量虚假HTTP GET/POST请求,使服务器崩溃,无法响应正常的用户请求。

8. ICMP flood攻击

ICMP flood攻击是指,攻击者在短时间内向特定目标发送大量的ICMP请求报文(例如ping报文),使其忙于回复这些请求,致使目标系统负担过重而不能处理正常的业务。

9. ICMPv6 flood攻击

ICMPv6 flood攻击是指,攻击者在短时间内向特定目标发送大量的ICMPv6请求报文(例如ping报文),使其忙于回复这些请求,致使目标系统负担过重而不能处理正常的业务。

10. UDP flood攻击

UDP flood攻击是指,攻击者在短时间内向特定目标发送大量的UDP报文,占用目标主机的带宽,致使目标主机不能处理正常的业务。

1.2.4  TCP分片攻击

设备的包过滤功能一般是通过判断TCP首个分片中的五元组(源IP地址、源端口号、目的IP地址、目的端口号、传输层协议号)信息来决定后续TCP分片是否允许通过。RFC 1858对TCP分片报文进行了规定,认为TCP分片报文中,首片报文中TCP报文长度小于20字节,或后续分片报文中分片偏移量等于8字节的报文为TCP分片攻击报文。这类报文可以成功绕过上述包过滤功能,对设备造成攻击。

为防范这类攻击,可以在设备上配置TCP分片攻击防范功能,对TCP分片攻击报文进行丢弃。

1.2.5  Login用户DoS攻击

DoS(Denial of Service,拒绝服务)攻击的目的是使被攻击对象无法提供正常的网络服务。Login用户DoS攻击是指,攻击者通过伪造登录账户在短时间内向设备连续发起大量登录请求,占用系统认证处理资源,造成设备无法处理正常Login用户的登录请求。

为防范这类攻击,可以在设备上配置Login用户攻击防范功能,对发起恶意认证并多次尝试失败的用户报文进行丢弃。

1.2.6  Login用户字典序攻击

字典序攻击是指攻击者通过收集用户密码可能包含的字符,使用各种密码组合逐一尝试登录设备,以达到猜测合法用户密码的目的。

为防范这类攻击,可以在设备上配置Login用户延时认证功能,在用户认证失败之后,延时期间不接受此用户的登录请求。

1.3  攻击检测及防范配置任务简介

攻击检测与防范配置任务如下:

(1)     配置并应用攻击防范策略

a.     创建攻击防范策略

b.      配置攻击防范策略

各类型的攻击防范功能之间没有先后顺序,可根据实际组网需求,配置其中的一种或多种:

-     配置单包攻击防范策略

-     配置扫描攻击防范策略

-     配置泛洪攻击防范策略

c.     (可选)配置攻击防范例外列表

d.     应用攻击防范策略

请至少选择其中一项进行配置:

-     在接口上应用攻击防范策略

-     在本机应用攻击防范策略

(2)     (可选)配置单包攻击防范日志的非聚合输出功能

(3)     (可选)配置TCP分片攻击防范(通常单独使用)

(4)     (可选)配置Login用户延时认证功能

1.4  配置并应用攻击防范策略

1.4.1  创建攻击防范策略

1. 功能简介

攻击防范策略主要包括针对攻击类型指定的检测条件及采取的防范措施。

在配置攻击防范之前,必须首先创建一个攻击防范策略,并进入该攻击防范策略视图。在该视图下,可以定义一个或多个用于检测攻击的特征项,以及对检测到的攻击报文所采取的防范措施。

2. 配置限制和指导

注意

攻击防范的缺省触发阈值对于现网环境而言可能过小,这会导致用户上网慢或者网页打不开等情况,请根据实际网络环境配置合理的触发阈值。

 

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     创建一个攻击防范策略,并进入攻击防范策略视图。

attack-defense policy policy-name

1.4.2  配置单包攻击防范策略

1. 功能简介

单包攻击防范主要通过分析经过设备的报文特征来判断报文是否具有攻击性,一般应用在设备连接外部网络的接口上,且仅对应用了攻击防范策略的接口上的入方向报文有效。若设备检测到某报文具有攻击性,则默认会输出告警日志,另外还可以根据配置将检测到的攻击报文做丢弃处理。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入攻击防范策略视图。

attack-defense policy policy-name

(3)     开启指定类型单包攻击报文的特征检测,并设置攻击防范的处理行为。请至少选择其中一项进行配置。

¡     开启指定类型的知名单包攻击报文的特征检测,并设置攻击防范的处理行为。

signature detect { fraggle | fragment | impossible | land | large-icmp | large-icmpv6 | smurf | snork | tcp-all-flags | tcp-fin-only | tcp-invalid-flags | tcp-null-flag | tcp-syn-fin | tiny-fragment | traceroute | udp-bomb | winnuke } [ action { { drop | logging } * | none } ]

signature detect { ip-option-abnormal | ping-of-death | teardrop } action { drop | logging } *

¡     开启ICMP类型的单包攻击报文的特征检测,并设置攻击防范的处理行为。

signature detect icmp-type { icmp-type-value | address-mask-reply | address-mask-request | destination-unreachable | echo-reply | echo-request | information-reply | information-request | parameter-problem | redirect | source-quench | time-exceeded | timestamp-reply | timestamp-request } [ action { { drop | logging } * | none } ]

¡     开启ICMPv6类型的单包攻击报文的特征检测,并设置攻击防范的处理行为。

signature detect icmpv6-type { icmpv6-type-value | destination-unreachable | echo-reply | echo-request | group-query | group-reduction | group-report | packet-too-big | parameter-problem | time-exceeded } [ action { { drop | logging } * | none } ]

¡     开启IP选项类型的单包攻击报文的特征检测,并设置攻击防范的处理行为。

signature detect ip-option { option-code | internet-timestamp | loose-source-routing | record-route | route-alert | security | stream-id | strict-source-routing } [ action { { drop | logging } * | none } ]

¡     开启IP扩展头类型的单包攻击报文的特征检测,并设置攻击防范的处理行为。

signature detect ipv6-ext-header ext-header-value [ action { { drop | logging } * | none } ]

缺省情况下,所有类型的单包攻击的特征检测均处于关闭状态。

(4)     (可选)配置启动Large ICMP攻击防范的ICMP报文长度的最大值。

signature { large-icmp | large-icmpv6 } max-length length

缺省情况下,ICMP报文和ICMPv6报文长度的最大值均为4000字节。

(5)     (可选)配置对不同级别的单包攻击报文的处理方式。

signature level { high | info | low | medium } action { { drop | logging } * | none }

缺省情况下,对infolow级别的单包攻击的处理行为是发送日志;对mediumhigh级别的单包攻击的处理行为是发送日志并丢包。

(6)     (可选)开启指定级别单包攻击报文的特征检测。

signature level { high | info | low | medium } detect

缺省情况下,未开启任何级别的单包攻击报文的特征检测。

1.4.3  配置扫描攻击防范策略

1. 功能简介

扫描攻击防范主要通过监测网络使用者向目标系统发起连接的速率来检测其探测行为,一般应用在设备连接外部网络的接口上,且仅对应用了攻击防范策略的接口上的入方向报文有效。若设备监测到某IP地址主动发起的连接速率达到或超过了一定阈值,则可以根据配置输出告警日志或者丢弃来自该IP地址的后续报文。

若配置扫描攻击的处理行为为输出告警日志,且端口扫描和地址扫描同时达到扫描阈值,则仅输出地址扫描的告警日志。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入攻击防范策略视图。

attack-defense policy policy-name

(3)     开启指定级别的扫描攻击防范。

scan detect level { { high | low | medium } | user-defined { port-scan-threshold threshold-value | ip-sweep-threshold threshold-value } * [ period period-value ] } action {  drop | logging } *

缺省情况下,扫描攻击防范处于关闭状态。

1.4.4  配置泛洪攻击防范策略

1. 功能简介

泛洪攻击防范主要用于保护服务器,通过监测向服务器发起连接请求的速率来检测各类泛洪攻击,一般应用在设备连接外部网络的接口上,且仅对应用了攻击防范策略的接口上的入方向报文有效。在接口上应用了泛洪攻击防范策略后,接口处于攻击检测状态,当它监测到向某服务器发送报文的速率持续达到或超过了指定的触发阈值时,即认为该服务器受到了攻击,则进入攻击防范状态,并根据配置启动相应的防范措施(输出告警日志或者对后续新建连接的报文进行丢弃处理)。此后,当设备检测到向该服务器发送报文的速率低于恢复阈值(触发阈值的3/4)时,即认为攻击结束,则由攻击防范状态恢复为攻击检测状态,并停止执行防范措施。

2. 配置限制和指导

当设备上安装了多块业务板时,每种泛洪攻击防范策略中配置的全局触发阈值为每块业务板上的全局触发阈值,因而整机的该类泛洪攻击的全局触发阈值即为每块业务板上的全局触发阈值与业务板数目的乘积。

为保护指定IP地址,攻击防范策略中支持基于IP地址的攻击防范配置。对于所有非受保护IP地址,可以统一开启攻击防范检测,并采用全局的参数设置来进行保护。

3. 配置SYN flood攻击防范策略

(1)     进入系统视图。

system-view

(2)     进入攻击防范策略视图。

attack-defense policy policy-name

(3)     对所有非受保护IP地址开启SYN flood攻击防范检测。

syn-flood detect non-specific

缺省情况下,未对任何非受保护IP地址开启SYN flood攻击防范检测。

(4)     配置SYN flood攻击防范的全局触发阈值。

syn-flood threshold threshold-value

缺省情况下,SYN flood攻击防范的全局触发阈值为1000。

(5)     配置SYN flood攻击防范的全局处理行为。

syn-flood action { drop | logging } *

缺省情况下,不对检测到的SYN flood攻击采取任何措施。

(6)     开启对IP地址的SYN flood攻击防范检测,并配置触发阈值和处理行为。

syn-flood detect { ip ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] [ threshold threshold-value ] [ action { { drop | logging } * | none } ]

缺省情况下,未对任何指定IP地址配置SYN flood攻击防范检测。

4. 配置ACK flood攻击防范策略

(1)     进入系统视图。

system-view

(2)     进入攻击防范策略视图。

attack-defense policy policy-name

(3)     对所有非受保护IP地址开启ACK flood攻击防范检测。

ack-flood detect non-specific

缺省情况下,未对任何非受保护IP地址开启ACK flood攻击防范检测。

(4)     配置ACK flood攻击防范全局触发阈值。

ack-flood threshold threshold-value

缺省情况下,ACK flood攻击防范的全局触发阈值为1000。

(5)     配置ACK flood攻击防范的全局处理行为。

ack-flood action { drop | logging } *

缺省情况下,不对检测到的ACK flood攻击采取任何措施。

(6)     开启对IP地址的ACK flood攻击防范检测,并配置触发阈值和处理行为。

ack-flood detect { ip ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] [ threshold threshold-value ] [ action { { drop | logging } * | none } ]

缺省情况下,未对任何指定IP地址配置ACK flood攻击防范检测。

5. 配置SYN-ACK flood攻击防范策略

(1)     进入系统视图。

system-view

(2)     进入攻击防范策略视图。

attack-defense policy policy-name

(3)     对所有非受保护IP地址开启SYN-ACK flood攻击防范检测。

syn-ack-flood detect non-specific

缺省情况下,未对任何非受保护IP地址开启SYN-ACK flood攻击防范检测。

(4)     配置SYN-ACK flood攻击防范的全局触发阈值。

syn-ack-flood threshold threshold-value

缺省情况下,SYN-ACK flood攻击防范的全局触发阈值为1000。

(5)     配置SYN-ACK flood攻击防范的全局处理行为。

syn-ack-flood action { drop | logging }*

缺省情况下,不对检测到的SYN-ACK flood攻击采取任何措施。

(6)     开启对IP地址的SYN-ACK flood攻击防范检测,并配置触发阈值和处理行为。

syn-ack-flood detect { ip ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] [ threshold threshold-value ] [ action { { drop | logging } * | none } ]

缺省情况下,未对任何指定IP地址配置SYN-ACK flood攻击防范检测。

6. 配置FIN flood攻击防范策略

(1)     进入系统视图。

system-view

(2)     进入攻击防范策略视图。

attack-defense policy policy-name

(3)     对所有非受保护IP地址开启FIN flood攻击防范检测。

fin-flood detect non-specific

缺省情况下,未对任何非受保护IP地址开启FIN flood攻击防范检测。

(4)     配置FIN flood攻击防范的全局触发阈值。

fin-flood threshold threshold-value

缺省情况下,FIN flood攻击防范的全局触发阈值为1000。

(5)     配置FIN flood攻击防范的全局处理行为。

fin-flood action { drop | logging } *

缺省情况下,不对检测到的FIN flood攻击采取任何措施。

(6)     开启对IP地址的FIN flood攻击防范检测,并配置触发阈值和处理行为。

fin-flood detect { ip ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] [ threshold threshold-value ] [ action { { drop | logging } * | none } ]

缺省情况下,未对任何指定IP地址配置FIN flood攻击防范检测。

7. 配置RST flood攻击防范策略

(1)     进入系统视图。

system-view

(2)     进入攻击防范策略视图。

attack-defense policy policy-name

(3)     对所有非受保护IP地址开启RST flood攻击防范检测。

rst-flood detect non-specific

缺省情况下,未对任何非受保护IP地址开启RST flood攻击防范检测。

(4)     配置RST flood攻击防范的全局触发阈值。

rst-flood threshold threshold-value

缺省情况下,RST flood攻击防范的全局触发阈值为1000。

(5)     配置全局的RST flood攻击防范的全局处理行为。

rst-flood action { drop | logging } *

缺省情况下,不对检测到的RST flood攻击采取任何措施。

(6)     开启对IP地址的RST flood攻击防范检测,并配置触发阈值和处理行为。

rst-flood detect { ip ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] [ threshold threshold-value ] [ action { { drop | logging } * | none } ]

缺省情况下,未对任何指定IP地址配置RST flood攻击防范检测。

8. 配置ICMP flood攻击防范策略

(1)     进入系统视图。

system-view

(2)     进入攻击防范策略视图。

attack-defense policy policy-name

(3)     对所有非受保护IPv4地址开启ICMP flood攻击防范检测。

icmp-flood detect non-specific

缺省情况下,未对任何非受保护IPv4地址开启ICMP flood攻击防范检测。

(4)     配置ICMP flood攻击防范的全局触发阈值。

icmp-flood threshold threshold-value

缺省情况下,ICMP flood攻击防范的全局触发阈值为1000。

(5)     配置ICMP flood攻击防范的全局处理动作。

icmp-flood action { drop | logging } *

缺省情况下,不对检测到的ICMP flood攻击采取任何措施。

(6)     开启对IPv4地址的ICMP flood攻击防范检测,并配置触发阈值和处理行为。

icmp-flood detect ip ip-address [ vpn-instance vpn-instance-name ] [ threshold threshold-value ] [ action { { drop | logging } * | none } ]

缺省情况下,未对任何指定IPv4地址配置ICMP flood 攻击防范触发阈值。

9. 配置ICMPv6 flood攻击防范策略

(1)     进入系统视图。

system-view

(2)     进入攻击防范策略视图。

attack-defense policy policy-name

(3)     对所有非受保护IPv6地址开启ICMPv6 flood攻击防范检测。

icmpv6-flood detect non-specific

缺省情况下,未对任何非受保护IPv6地址开启ICMPv6 flood攻击防范检测。

(4)     配置ICMPv6 flood攻击防范的全局触发阈值。

icmpv6-flood threshold threshold-value

缺省情况下,ICMPv6 flood攻击防范的全局触发阈值为1000。

(5)     配置ICMPv6 flood攻击防范的全局处理行为。

icmpv6-flood action { drop | logging } *

缺省情况下,不对检测到的ICMPv6 flood攻击采取任何防范措施。

(6)     开启对IPv6地址的ICMPv6 flood攻击防范检测,并配置触发阈值和处理行为。

icmpv6-flood detect ipv6 ipv6-address [ vpn-instance vpn-instance-name ] [ threshold threshold-value ] [ action { { drop | logging } * | none } ]

缺省情况下,未对任何指定IPv6地址配置ICMPv6 flood攻击防范检测。

10. 配置UDP flood攻击防范策略

(1)     进入系统视图。

system-view

(2)     进入攻击防范策略视图。

attack-defense policy policy-name

(3)     对所有非受保护IP地址开启UDP flood攻击防范检测。

udp-flood detect non-specific

缺省情况下,未对任何非受保护IP地址开启UDP flood攻击防范检测。

(4)     配置UDP flood攻击防范的全局触发阈值。

udp-flood threshold threshold-value

缺省情况下,UDP flood攻击防范的全局触发阈值为1000。

(5)     配置UDP flood攻击防范检测的全局处理行为。

udp-flood action { drop | logging } *

缺省情况下,不对检测到的UDP flood攻击进行任何处理。

(6)     开启对IP地址的UDP flood攻击防范检测,并配置触发阈值和处理行为。

udp-flood detect { ip ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] [ threshold threshold-value ] [ action { { drop | logging } * | none } ]

缺省情况下,未对任何指定IP地址配置UDP flood攻击防范检测。

11. 配置DNS flood攻击防范策略

(1)     进入系统视图。

system-view

(2)     进入攻击防范策略视图。

attack-defense policy policy-name

(3)     对所有非受保护IP地址开启DNS flood攻击防范检测。

dns-flood detect non-specific

缺省情况下,未对任何非受保护IP地址开启DNS flood攻击防范检测。

(4)     配置DNS flood攻击防范的全局触发阈值。

dns-flood threshold threshold-value

缺省情况下,DNS flood攻击防范的全局触发阈值为1000。

(5)     (可选)配置DNS flood攻击防范的全局检测端口号。

dns-flood port port-list

缺省情况下,DNS flood攻击防范的全局检测端口号为53。

(6)     配置对DNS flood攻击防范的全局处理行为。

dns-flood action { drop | logging } *

缺省情况下,不对检测到的DNS flood攻击采取任何措施。

(7)     开启对IP地址的DNS flood攻击防范检测,并配置触发阈值和处理行为。

dns-flood detect { ip ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] [ port port-list ] [ threshold threshold-value ] [ action { { drop | logging } * | none } ]

缺省情况下,未对任何指定IP地址配置DNS flood攻击防范检测。

12. 配置HTTP flood攻击防范策略

(1)     进入系统视图。

system-view

(2)     进入攻击防范策略视图。

attack-defense policy policy-name

(3)     对所有非受保护IP地址开启HTTP flood攻击防范检测。

http-flood detect non-specific

缺省情况下,未对任何非受保护IP地址开启HTTP flood攻击防范检测。

(4)     配置HTTP flood攻击防范的全局触发阈值。

http-flood threshold threshold-value

缺省情况下,HTTP flood攻击防范的全局触发阈值为1000。

(5)     (可选)配置HTTP flood攻击防范的全局检测端口号。

http-flood port port-list

缺省情况下,HTTP flood攻击防范的全局检测端口号为80。

(6)     配置对HTTP flood攻击防范的全局处理行为。

http-flood action { drop | logging } *

缺省情况下,不对检测到的HTTP flood攻击采取任何措施。

(7)     开启对IP地址的HTTP flood攻击防范检测,并配置触发阈值和处理行为。

http-flood detect { ip ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] [ port port-list ] [ threshold threshold-value ] [ action { { drop | logging } * | none } ]

缺省情况下,未对任何指定IP地址配置HTTP flood攻击防范检测。

1.4.5  配置攻击防范例外列表

1. 功能简介

攻击防范例外列表用于过滤不需要进行攻击防范检测的主机报文,与指定的ACL permit规则匹配的报文将不会受到任何类型的攻击防范检测。该配置用于过滤某些被信任的安全主机发送的报文,可以有效的减小误报率,并提高服务器处理效率。例如:攻击防范功能可能将源IP地址相同,目的地址不同的组播报文(如OSPF、PIM等协议报文)检测为扫描攻击,此时可以通过配置例外列表放行组播报文来消除误报。

2. 配置限制和指导

例外列表引用的ACL的permit规则中仅源地址、目的地址、源端口、目的端口、协议号、L3VPN和非首片分片标记参数用于匹配报文。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     进入攻击防范策略视图。

attack-defense policy policy-name

(3)     配置攻击防范例外列表。

exempt acl [ ipv6 ] { acl-number | name acl-name }

缺省情况下,未配置攻击防范例外列表。

1.4.6  在接口上应用攻击防范策略

(1)     进入系统视图。

system-view

(2)     进入接口视图。

interface interface-type interface-number

(3)     配置在接口上应用攻击防范策略。

attack-defense apply policy policy-name

缺省情况下,接口上未应用任何攻击防范策略。

(4)     指定处理当前接口流量的业务处理板

service slot slot-number

缺省情况下,未指定处理当前接口流量的业务处理板,流量处理在接收报文的业务处理板上进行。

当在全局接口(例如冗余接口、聚合接口等)上应用攻击防范策略时,为保证扫描攻击防范策略与泛洪攻击防范策略能够正确检测并防御攻击,需要配置在指定slot上处理当前接口的流量

1.4.7  在本机应用攻击防范策略

1. 功能简介

通过在本机应用攻击防范策略,使已配置的攻击防范策略对目的地址为本机的报文生效。

可以通过在本机上应用攻击防范策略提高对目的地址为本机的攻击报文的处理效率。

当接口和本机均应用了攻击防范策略时,先进行接口上攻击防范策略的检测,若报文未被丢弃,则还会进行本机上攻击防范策略的检测。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     配置在本机应用攻击防范策略。

attack-defense local apply policy policy-name

缺省情况下,本机未应用任何攻击防范策略。

1.5  配置单包攻击防范日志的非聚合输出功能

1. 功能简介

对日志进行聚合输出是指,在一定时间内,对在本机或同一个接口上检测到的相同攻击类型、相同攻击防范动作、相同的源/目的地址以及属于相同VPN的单包攻击的所有日志聚合成一条日志输出。

2. 配置限制和指导

通常不建议开启单包攻击防范的日志非聚合输出功能,因为在单包攻击较为频繁的情况下,它会导致大量日志信息输出,占用控制台的显示资源。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     开启对单包攻击防范日志的非聚合输出功能。

attack-defense signature log non-aggregate

缺省情况下,单包攻击防范的日志信息经系统聚合后再输出。

1.6  配置TCP分片攻击防范

1. 功能简介

设备上开启TCP分片攻击防范功能后,能够对收到的TCP分片报文的长度以及分片偏移量进行合法性检测,并丢弃非法的TCP分片报文。

2. 配置限制和指导

如果设备上开启了TCP分片攻击防范功能,并应用了单包攻击防范策略,则TCP分片攻击防范功能会先于单包攻击防范策略检测并处理入方向的TCP报文。

3. 配置步骤

(1)     进入系统视图。

system-view

(2)     开启TCP分片攻击防范功能。

attack-defense tcp fragment enable

缺省情况下,TCP分片攻击防范功能处于开启状态。

1.7  配置Login用户延时认证功能

1. 功能简介

Login用户登录失败后,若设备上配置了重新进行认证的等待时长,则系统将会延迟一定的时长之后再允许用户进行认证,可以有效地避免设备受到Login用户字典序攻击。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     配置Login用户登录失败后重新进行认证的等待时长。

attack-defense login reauthentication-delay seconds

缺省情况下,Login用户登录失败后重新进行认证不需要等待。

1.8  攻击检测与防范显示和维护

1.8.1  显示攻击防范配置

可在任意视图下执行以下命令,显示攻击防范策略的配置信息。

display attack-defense policy [ policy-name ]

1.8.2  显示攻击防范的表项信息

1. 显示flood攻击的IPv4类型的受保护IP表项

可在任意视图下执行以下命令,显示flood攻击防范的IPv4类型的受保护IP表项。

display attack-defense policy policy-name { ack-flood | dns-flood | fin-flood | flood | http-flood | icmp-flood | rst-flood | syn-ack-flood | syn-flood | udp-flood } ip [ ip-address [ vpn vpn-instance-name ] ] [ slot slot-number ] [ count ]

2. 显示flood攻击的IPv6类型的受保护IP表项

可在任意视图下执行以下命令,显示flood攻击防范的IPv6类型的受保护IP表项。

display attack-defense policy policy-name { ack-flood | dns-flood | fin-flood | flood | http-flood | icmpv6-flood | rst-flood | syn-ack-flood | syn-flood | udp-flood } ipv6 [ ipv6-address [ vpn vpn-instance-name ] ] [ slot slot-number ] ] [ count ]

3. 显示扫描攻击的IPv4地址表项

可在任意视图下执行以下命令,显示扫描攻击者的IPv4地址表项。

display attack-defense scan attacker ip [ [ interface interface-type interface-number | local ] [ slot slot-number ] ] [ count ]

4. 显示扫描攻击的IPv6地址表项

可在任意视图下执行以下命令,显示扫描攻击者的IPv6地址表项。

display attack-defense scan attacker ipv6 [ [ interface interface-type interface-number | local ] [ slot slot-number ] ] [ count ]

1.8.3  显示和清除攻击防范统计信息

1. 显示IPv4 flood攻击防范统计信息

可在任意视图下执行以下命令,显示IPv4 flood攻击防范统计信息。

display attack-defense { ack-flood | dns-flood | fin-flood | flood | http-flood | icmp-flood | rst-flood | syn-ack-flood | syn-flood | udp-flood } statistics ip [ ip-address [ vpn vpn-instance-name ] ] [ [ interface interface-type interface-number | local ] [ slot slot-number ] ] [ count ]

2. 显示IPv6 flood攻击防范统计信息

可在任意视图下执行以下命令,显示IPv6 flood攻击防范统计信息。

display attack-defense { ack-flood | dns-flood | fin-flood | flood | http-flood | icmpv6-flood | rst-flood | syn-flood | syn-ack-flood | udp-flood } statistics ipv6 [ ipv6-address [ vpn vpn-instance-name ] ] [ [ interface interface-type interface-number | local ] [ slot slot-number ] ] [ count ]

3. 清除攻击防范运行状况的统计信息

请在用户视图下执行以下命令,清除flood攻击防范受保护IP表项的统计信息。

reset attack-defense policy policy-name flood protected { ip | ipv6 } statistics

4. 显示和清除接口上的攻击防范统计信息

可在任意视图下执行以下命令,显示接口上的攻击防范统计信息。

display attack-defense statistics interface interface-type interface-number [ slot slot-number ]

请在用户视图下执行以下命令,清除接口上的攻击防范统计信息。

reset attack-defense statistics interface interface-type interface-number

5. 显示和清除本机的攻击防范统计信息

可在任意视图下执行以下命令,显示本机攻击防范统计信息。

display attack-defense statistics local [ slot slot-number ]

请在用户视图下执行以下命令,清除本机攻击防范的统计信息。

reset attack-defense statistics local

1.9  攻击检测及防范典型配置举例

1.9.1  在接口上配置攻击检测及防范

1. 组网需求

Router上的接口GigabitEthernet0/0/1与内部网络连接,接口GigabitEthernet0/0/2与外部网络连接,接口GigabitEthernet0/0/3与一台内部服务器连接。现有如下安全需求:

·     为防范外部网络对内部网络主机的Smurf攻击和扫描攻击,需要在接口GigabitEthernet0/0/2上开启Smurf攻击防范和扫描攻击防范。具体要求为:低防范级别的扫描攻击防范;丢弃攻击者发送的报文;检测到Smurf攻击或扫描攻击后,输出告警日志。

·     为防范外部网络对内部服务器的SYN flood攻击,需要在接口GigabitEthernet0/0/2上开启SYN flood攻击防范。具体要求为:当设备监测到向内部服务器每秒发送的SYN报文数持续达到或超过5000时,输出告警日志并丢弃攻击报文。

2. 组网图

图1-1 接口上的攻击检测与防范配置典型组网图

3. 配置步骤

# 配置各接口的IP地址,略。

# 创建攻击防范策略a1。

<Router> system-view

[Router] attack-defense policy a1

# 开启Smurf单包攻击报文的特征检测,配置处理行为为输出告警日志。

[Router-attack-defense-policy-a1] signature detect smurf action logging

# 开启低防范级别的扫描攻击防范,配置处理行为输出告警日志并丢弃攻击报文。

[Router-attack-defense-policy-a1] scan detect level low action logging drop

# 为保护IP地址为10.1.1.2的内部服务器,配置针对IP地址10.1.1.2的SYN flood攻击防范参数,触发阈值为5000,处理行为输出告警日志并丢弃攻击报文。

[Router-attack-defense-policy-a1] syn-flood detect ip 10.1.1.2 threshold 5000 action logging drop

[Router-attack-defense-policy-a1] quit

# 在接口GigabitEthernet0/0/2上应用攻击防范策略a1。

[Router] interface gigabitethernet 0/0/2

[Router-GigabitEthernet0/0/2] attack-defense apply policy a1

[Router-GigabitEthernet0/0/2] quit

4. 验证配置

完成以上配置后,可以通过display attack-defense policy命令查看配置的攻击防范策略a1具体内容。

# 查看攻击防范策略a1的配置信息。

[Router] display attack-defense policy a1

          Attack-defense Policy Information

--------------------------------------------------------------------------

Policy name                        : a1

Applied list                       : GE0/0/2

--------------------------------------------------------------------------

Exempt IPv4 ACL                    : Not configured

Exempt IPv6 ACL                    : Not configured

--------------------------------------------------------------------------

  Actions: CV-Client verify  BS-Block source  L-Logging  D-Drop  N-None

 

Signature attack defense configuration:

Signature name                     Defense      Level             Actions

Fragment                           Disabled     low               L

Impossible                         Disabled     medium            L,D

Teardrop                           Disabled     medium            L,D

Tiny fragment                      Disabled     low               L

IP option abnormal                 Disabled     medium            L,D

Smurf                              Enabled      medium            L

Traceroute                         Disabled     low               L

Ping of death                      Disabled     medium            L,D

Large ICMP                         Disabled     info              L

  Max length                       4000 bytes

Large ICMPv6                       Disabled     info              L

  Max length                       4000 bytes

TCP invalid flags                  Disabled     medium            L,D

TCP null flag                      Disabled     medium            L,D

TCP all flags                      Disabled     medium            L,D

TCP SYN-FIN flags                  Disabled     medium            L,D

TCP FIN only flag                  Disabled     medium            L,D

TCP Land                           Disabled     medium            L,D

Winnuke                            Disabled     medium            L,D

UDP Bomb                           Disabled     medium            L,D

UDP Snork                          Disabled     medium            L,D

UDP Fraggle                        Disabled     medium            L,D

IP option record route             Disabled     info              L

IP option internet timestamp       Disabled     info              L

IP option security                 Disabled     info              L

IP option loose source routing     Disabled     info              L

IP option stream ID                Disabled     info              L

IP option strict source routing    Disabled     info              L

IP option route alert              Disabled     info              L

ICMP echo request                  Disabled     info              L

ICMP echo reply                    Disabled     info              L

ICMP source quench                 Disabled     info              L

ICMP destination unreachable       Disabled     info              L

ICMP redirect                      Disabled     info              L

ICMP time exceeded                 Disabled     info              L

ICMP parameter problem             Disabled     info              L

ICMP timestamp request             Disabled     info              L

ICMP timestamp reply               Disabled     info              L

ICMP information request           Disabled     info              L

ICMP information reply             Disabled     info              L

ICMP address mask request          Disabled     info              L

ICMP address mask reply            Disabled     info              L

ICMPv6 echo request                Disabled     info              L

ICMPv6 echo reply                  Disabled     info              L

ICMPv6 group membership query      Disabled     info              L

ICMPv6 group membership report     Disabled     info              L

ICMPv6 group membership reduction  Disabled     info              L

ICMPv6 destination unreachable     Disabled     info              L

ICMPv6 time exceeded               Disabled     info              L

ICMPv6 parameter problem           Disabled     info              L

ICMPv6 packet too big              Disabled     info              L

 

Scan attack defense configuration:

 Defense : Enabled

 Level   : low

 Actions : L,D

 

Flood attack defense configuration:

Flood type      Global thres(pps)  Global actions  Service ports   Non-specific

SYN flood       1000(default)      -               -               Disabled

ACK flood       1000(default)      -               -               Disabled

SYN-ACK flood   1000(default)      -               -               Disabled

RST flood       1000(default)      -               -               Disabled

FIN flood       1000(default)      -               -               Disabled

UDP flood       1000(default)      -               -               Disabled

ICMP flood      1000(default)      -               -               Disabled

ICMPv6 flood    1000(default)      -               -               Disabled

DNS flood       1000(default)      -               53              Disabled

HTTP flood      1000(default)      -               80              Disabled

 

Flood attack defense for protected IP addresses:

 Address                 VPN instance Flood type    Thres(pps) Actions Ports

 10.1.1.2                --           SYN-FLOOD     5000       L,D     -

之后,可以通过display attack-defense statistics interface命令查看接口GigabitEthernet0/0/2上攻击防范的统计信息。

# 查看接口GigabitEthernet0/0/2上攻击防范的统计信息。

[Router] display attack-defense statistics interface gigabitethernet 0/0/2

Attack policy name: a1

Scan attack defense statistics:

 AttackType                          AttackTimes Dropped

 Port scan                           2           0

 IP sweep                            3           0

 Distribute port scan                1           0

Flood attack defense statistics:

 AttackType                          AttackTimes Dropped

 SYN flood                           1           5000

Signature attack defense statistics:

 AttackType                          AttackTimes Dropped

 Smurf                               1           0

 

 

 

 

 

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

新华三官网
联系我们