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

11-安全配置指导

目录

14-攻击检测与防范配置

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

docurl=/cn/Service/Document_Software/Document_Center/Routers/Catalog/SR_Router/SR8800-F/Configure/Operation_Manual/H3C_SR8800-F_CG-R7153-6W712/11/201510/894539_30005_0.htm

14-攻击检测与防范配置


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应答请求,该请求包的目的地址设置为目标网络的广播地址,这样该网络中的所有主机都会对此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的ECHO报文或者UDP端口为19的Chargen报文,令网络产生大量无用的应答报文,占满网络带宽,达到攻击目的。

Teardrop

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

Ping of death

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

 

1.2.2  扫描攻击

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

·     IP Sweep攻击

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

·     Port scan攻击

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

·     分布式Port scan攻击

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

1.2.3  泛洪攻击

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

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

·     SYN flood攻击

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

·     ACK flood攻击

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

·     SYN-ACK flood攻击

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

·     FIN flood攻击

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

·     RST flood攻击

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

·     DNS flood攻击

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

·     HTTP flood攻击

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

·     ICMP flood攻击

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

·     ICMPv6 flood攻击

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

·     UDP flood攻击

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

1.3  黑名单功能

黑名单功能是根据报文的源IP地址进行报文过滤的一种攻击防范特性。同基于ACL(Access Control List,访问控制列表)的包过滤功能相比,黑名单进行报文匹配的方式更为简单,可以实现报文的高速过滤和有效屏蔽。

黑名单可以由设备动态或由用户手工进行添加、删除,具体机制如下:

·     动态添加黑名单是与扫描攻击防范功能配合实现的,动态生成的黑名单表项会在一定的时间之后老化。当设备根据报文的行为特征检测到某特定IP地址的扫描攻击企图之后,便将攻击者的IP地址自动加入黑名单,之后该IP地址发送的报文会被设备过滤掉。

·     手动配置的黑名单表项分为永久黑名单表项和非永久黑名单表项。永久黑名单表项建立后,一直存在,除非用户手工删除该表项。非永久黑名单表项的老化时间由用户指定,超出老化时间后,设备会自动将该黑名单表项删除。

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

表1-2 攻击检测及防范配置任务简介

配置任务

说明

详细配置

创建攻击防范策略

必选

1.5.1 

配置攻击防范策略

配置单包攻击防范策略

必选

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

1.5.2  1.

配置扫描攻击防范策略

1.5.2  2.

配置泛洪攻击防范策略

1.5.2  3.

配置攻击防范例外列表

可选

1.5.3  

在本机应用攻击防范策略

必选

1.5.4 

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

可选

1.5.5 

配置黑名单

可选

可单独使用,也可与扫描攻击防范策略配合使用

1.6 

 

1.5  配置攻击防范

1.5.1  创建攻击防范策略

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

表1-3 创建攻击防范策略

配置步骤

命令

说明

进入系统视图

system-view

-

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

attack-defense policy policy-number

缺省情况下,不存在任何攻击防范策略

 

1.5.2  配置攻击防范策略

在一个攻击防范策略中,可以根据实际的网络安全需求来配置策略中的具体内容,主要包括针对攻击类型指定检测条件及采取的防范措施。

不同类型的攻击防范策略在配置内容上有所不同,下面将按照攻击类型(单包攻击、扫描攻击、泛洪攻击)分别进行介绍。

1. 配置单包攻击防范策略

单包攻击防范主要通过分析经过设备的报文特征来判断报文是否具有攻击性。若设备检测到某报文具有攻击性,则默认会输出告警日志,另外还可以根据配置将检测到的攻击报文做丢弃处理。

表1-4 配置单包攻击防范策略

配置步骤

命令

说明

进入系统视图

system-view

-

进入攻击防范策略视图

attack-defense policy policy-name

-

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

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

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 } ]

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 } ]

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 } ]

至少选其一

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

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

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

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

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

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

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

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

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

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

 

2. 配置扫描攻击防范策略

扫描攻击防范主要通过监测网络使用者向目标系统发起连接的速率来检测其探测行为。若设备监测到某IP地址主动发起的连接速率达到或超过了一定阈值,则可以根据配置输出告警日志、丢弃来自该IP地址的后续报文,或者将检测到的攻击者的源IP地址加入黑名单。

若指定的扫描攻击的处理行为为加入黑名单,则需要开启全局上的黑名单过滤功能来配合。

表1-5 配置扫描攻击防范策略

配置步骤

命令

说明

进入系统视图

system-view

-

进入攻击防范策略视图

attack-defense policy policy-number

-

开启指定级别的扫描攻击防范

scan detect level { high | low | medium } action { { block-source [ timeout minutes ] | drop } | logging } *

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

 

3. 配置泛洪攻击防范策略

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

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

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

(1)     配置SYN flood攻击防范策略

表1-6 配置SYN flood攻击防范策略

配置步骤

命令

说明

进入系统视图

system-view

-

进入攻击防范策略视图

attack-defense policy policy-number

-

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

syn-flood detect non-specific

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

配置SYN flood攻击防范的全局触发阈值

syn-flood threshold threshold-value

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

配置SYN flood攻击防范的全局处理行为

syn-flood action { drop | logging } *

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

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

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

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

 

(2)     配置ACK flood攻击防范策略

表1-7 配置ACK flood攻击防范策略

配置步骤

命令

说明

进入系统视图

system-view

-

进入攻击防范策略视图

attack-defense policy policy-number

-

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

ack-flood detect non-specific

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

配置ACK flood攻击防范全局触发阈值

ack-flood threshold threshold-value

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

配置ACK flood攻击防范的全局处理行为

ack-flood action { drop | logging } *

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

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

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

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

 

(3)     配置SYN-ACK flood攻击防范策略

表1-8 配置SYN-ACK flood攻击防范策略

配置步骤

命令

说明

进入系统视图

system-view

-

进入攻击防范策略视图

attack-defense policy policy-number

-

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

syn-ack-flood detect non-specific

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

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

syn-ack-flood threshold threshold-value

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

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

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

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

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

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

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

 

(4)     配置FIN flood攻击防范策略

表1-9 配置FIN flood攻击防范策略

配置步骤

命令

说明

进入系统视图

system-view

-

进入攻击防范策略视图

attack-defense policy policy-number

-

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

fin-flood detect non-specific

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

配置FIN flood攻击防范的全局触发阈值

fin-flood threshold threshold-value

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

配置FIN flood攻击防范的全局处理行为

fin-flood action { drop | logging } *

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

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

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

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

 

(5)     配置RST flood攻击防范策略

表1-10 配置RST flood攻击防范策略

配置步骤

命令

说明

进入系统视图

system-view

-

进入攻击防范策略视图

attack-defense policy policy-number

-

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

rst-flood detect non-specific

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

配置RST flood攻击防范的全局触发阈值

rst-flood threshold threshold-value

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

配置全局的RST flood攻击防范的全局处理行为

rst-flood action { drop | logging } *

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

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

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

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

 

(6)     配置ICMP flood攻击防范策略

表1-11 配置ICMP flood攻击防范策略

配置步骤

命令

说明

进入系统视图

system-view

-

进入攻击防范策略视图

attack-defense policy policy-number

-

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

icmp-flood detect non-specific

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

配置ICMP flood攻击防范的全局触发阈值

icmp-flood threshold threshold-value

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

配置ICMP flood攻击防范的全局处理动作

icmp-flood action { drop | logging } *

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

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

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

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

 

(7)     配置ICMPv6 flood攻击防范策略

表1-12 配置ICMP flood攻击防范策略

配置步骤

命令

说明

进入系统视图

system-view

-

进入攻击防范策略视图

attack-defense policy policy-number

-

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

icmpv6-flood detect non-specific

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

配置ICMPv6 flood攻击防范的全局触发阈值

icmpv6-flood threshold threshold-value

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

配置ICMPv6 flood攻击防范的全局处理行为

icmpv6-flood action { drop | logging } *

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

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

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

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

 

(8)     配置UDP flood攻击防范策略

表1-13 配置UDP flood攻击防范策略

配置步骤

命令

说明

进入系统视图

system-view

-

进入攻击防范策略视图

attack-defense policy policy-number

-

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

udp-flood detect non-specific

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

配置UDP flood攻击防范的全局触发阈值

udp-flood threshold threshold-value

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

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

udp-flood action { drop | logging } *

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

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

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

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

 

(9)     配置DNS flood攻击防范策略

表1-14 配置DNS flood攻击防范策略

配置步骤

命令

说明

进入系统视图

system-view

-

进入攻击防范策略视图

attack-defense policy policy-number

-

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

dns-flood detect non-specific

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

配置DNS flood攻击防范的全局触发阈值

dns-flood threshold threshold-value

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

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

dns-flood port port-list

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

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

dns-flood action { drop | logging } *

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

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

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

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

 

(10)     配置HTTP flood攻击防范策略

表1-15 配置HTTP flood攻击防范策略

配置步骤

命令

说明

进入系统视图

system-view

-

进入攻击防范策略视图

attack-defense policy policy-number

-

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

http-flood detect non-specific

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

配置HTTP flood攻击防范的全局触发阈值

http-flood threshold threshold-value

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

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

http-flood port port-list

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

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

http-flood action { drop | logging } *

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

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

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

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

 

1.5.3  配置攻击防范例外列表

攻击防范例外列表用于过滤不需要进行攻击防范检测的主机报文,与指定的ACL permit规则匹配的报文将不会受到任何类型的攻击防范检测。该配置用于过滤某些被信任的安全主机发送的报文,可以有效的减小误报率,并提高服务器处理效率。

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

表1-16 配置攻击防范例外列表

配置步骤

命令

说明

进入系统视图

system-view

-

进入攻击防范策略视图

attack-defense policy policy-number

-

配置攻击防范例外列表

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

缺省情况下,应用了攻击防范策略后,所有接收到目的地址为本机的报文都需要进行攻击防范检测

 

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

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

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

表1-17 配置在本机应用攻击防范策略

配置步骤

命令

说明

进入系统视图

system-view

-

配置在本机应用攻击防范策略

attack-defense local apply policy policy-number

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

 

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

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

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

表1-18 配置单包攻击防范日志的非聚合输出功能

配置步骤

命令

说明

进入系统视图

system-view

-

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

attack-defense signature log non-aggregate

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

 

1.6  配置黑名单

通过配置黑名单功能可以对来自指定IP地址的报文进行过滤。

黑名单的配置包括开启黑名单过滤功能和添加黑名单表项。若全局的黑名单过滤功能处于开启状态,则所有接口上的黑名单过滤功能均处于开启状态。若全局的黑名单过滤功能处于关闭状态,则需要开启指定接口上的黑名单过滤功能。添加黑名单表项的同时可以选择配置黑名单表项的老化时间,若不配置,那么该黑名单表项永不老化,除非用户手动将其删除。

黑名单表项除了可以手工添加之外,还可以通过扫描攻击防范自动添加。具体来讲就是,在黑名单功能使能的前提下,若配置了扫描攻击防范策略及相应的黑名单添加功能,则可以将检测到的扫描攻击方IP地址添加到黑名单中。扫描攻击防范添加的黑名单必定会老化,老化时间可配。关于扫描攻击防范的相关配置请参见“1.5.2  2. 配置扫描攻击防范策略”。

表1-19 配置黑名单

配置步骤

命令

说明

进入系统视图

system-view

-

(可选)开启全局黑名单过滤功能

blacklist global enable

缺省情况下,全局黑名单功能处于关闭状态

进入接口视图

interface interface-type interface-number

-

开启接口上的黑名单过滤功能

blacklist enable

缺省情况下,接口上的黑名单功能处于关闭状态

(可选)添加IPv4黑名单表项

blacklist ip source-ip-address [ vpn-instance vpn-instance-name ] [ ds-lite-peer ds-lite-peer-address ] [ timeout minutes ]

缺省情况下,无IPv4黑名单表项

(可选)添加IPv6黑名单表项

blacklist ipv6 source-ipv6-address [ vpn-instance vpn-instance-name ] [ timeout minutes ]

缺省情况下,无IPv6黑名单表项

(可选)使能黑名单日志功能

blacklist logging enable

缺省情况下,黑名单日志功能处于关闭状态

 

1.7  攻击检测及防范显示和维护

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

在用户视图下,执行reset命令可以清除攻击检测及防范的统计信息。

表1-20 攻击检测及防范配置的显示和维护

操作

命令

显示本机攻击防范统计信息(独立运行模式)

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

显示本机攻击防范统计信息(IRF模式)

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

显示攻击防范策略的配置信息

display attack-defense policy [ policy-name ]

显示扫描攻击者的IPv4信息(独立运行模式)

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

显示扫描攻击者的IPv4信息(IRF模式)

display attack-defense scan attacker ip [ local [ chassis chassis-number slot slot-number ] ] [ count ]

显示扫描攻击者的IPv6信息(独立运行模式)

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

显示扫描攻击者的IPv6信息(IRF模式)

display attack-defense scan attacker ipv6 [ local [ chassis chassis-number slot slot-number ] ] [ count ]

显示扫描攻击被攻击者的IPv4信息(独立运行模式)

display attack-defense scan victim ip [ local [ slot slot-number ] ] [ count ]

显示扫描攻击被攻击者的IPv4信息(IRF模式)

display attack-defense scan victim ip [ local [ chassis chassis-number slot slot-number ] ] [ count ]

显示扫描攻击被攻击者的IPv6信息(独立运行模式)

display attack-defense scan victim ipv6 [ local [ slot slot-number ] ] [ count ]

显示扫描攻击被攻击者的IPv6信息(IRF模式)

display attack-defense scan victim ipv6 [ local [ chassis chassis-number slot slot-number ] ] [ count ]

显示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 ] ] [ count ] [ local [ slot slot-number ] ] [ count ]

显示IPv4 flood攻击防范统计信息(IRF模式)

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 ] ] [ local [ chassis chassis-number slot slot-number ] ] [ count ]

显示IPv6 flood攻击防范统计信息(独立运行模式)

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

显示IPv6 flood攻击防范统计信息(IRF模式)

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

显示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 ]

显示flood攻击防范的IPv4类型的受保护IP表项(IRF模式)

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 ] ] [ chassis chassis-number slot slot-number ] [ count ]

显示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 ]

显示flood攻击防范的IPv6类型的受保护IP表项(IRF模式)

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 ] ] [ chassis chassis-number slot slot-number ] [ count ]

显示IPv4黑名单表项(独立运行模式)

display blacklist ip [ source-ip-address [ vpn-instance vpn-instance-name ] ] [ slot slot-number ] [ count ]

显示IPv4黑名单表项(IRF模式)

display blacklist ip [ source-ip-address [ vpn-instance vpn-instance-name ] ] [ chassis chassis-number slot slot-number ] [ count ]

显示IPv6黑名单表项(独立运行模式)

display blacklist ipv6 [ source-ipv6-address [ vpn-instance vpn-instance-name ] ] [ slot slot-number ] [ count ]

显示IPv6黑名单表项(IRF模式)

display blacklist ipv6 [ source-ipv6-address [ vpn-instance vpn-instance-name ] ] [ chassis chassis-number slot slot-number ] [ count ]

清除本机攻击防范的统计信息

reset attack-defense statistics local

清除flood攻击防范受保护IP表项的统计信息

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

清除IPv4动态黑名单表项

reset blacklist ip { source-ip-address [ vpn-instance vpn-instance-name ] | all }

清除IPv6动态黑名单表项

reset blacklist ipv6 { source-ipv6-address [ vpn-instance vpn-instance-name ] | all }

清除黑名单表项的统计信息

reset blacklist statistics

 

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

1.8.1  黑名单配置举例

1. 组网需求

网络管理员通过流量分析发现外部网络中存在一个攻击者Host D,需要将来自Host D的报文在Router上永远过滤掉。另外,网络管理员为了暂时控制内部网络Host C的访问行为,需要将Router上收到的Host C的报文阻止50分钟。

2. 组网图

图1-1 黑名单配置典型组网图

 

3. 配置步骤

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

# 开启全局黑名单过滤功能。

<Router> system-view

[Router] blacklist global enable

# 将Host D的IP地址5.5.5.5添加到黑名单列表中,老化时间使用缺省情况(永不老化)。

[Router] blacklist ip 5.5.5.5

# 将Host C的IP地址192.168.1.4添加到黑名单列表中,老化时间为50分钟。

[Router] blacklist ip 192.168.1.4 timeout 50

4. 验证配置

完成以上配置后,可以通过display blacklist命令查看已添加的黑名单信息。

<Router> display blacklist ip

IP address      VPN instance   DS-Lite tunnel peer  Type    TTL(sec) Dropped

5.5.5.5         --             --                   Manual  Never    0

192.168.1.4     --             --                   Manual  2989     0

配置生效后Router对来自Host D的报文一律进行丢弃处理,除非管理员认为Host D不再是攻击者,通过undo blacklist ip 5.5.5.5将其从黑名单中删除;如果Router接收到来自Host C的报文,则在50分钟之内,一律对其进行丢弃处理,50分钟之后,才进行正常转发。

 

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

新华三官网
联系我们