Web应用防护

本帮助主要介绍以下内容:

特性简介

Web应用防护功能用于阻断Web应用层攻击,保护内网用户和内部Web服务器。当设备收到来自外部的HTTP或HTTPS请求后,会执行防护策略,对请求内容的安全性和合法性进行检测和验证,对非法的请求予以实时阻断,从而对内网的用户和Web服务器进行有效防护。

Web应用防护特征

Web应用防护特征用来扫描网络中的攻击行为以及对攻击行为采取防御措施,设备通过将数据流与Web应用防护特征进行比较来检测和防御攻击。

Web应用防护特征包含多种属性,例如攻击分类、动作、保护对象、严重级别和方向。这些属性可作为过滤条件来筛选Web应用防护特征。

设备支持如下类型的特征:

特征例外

缺省情况下,设备基于配置文件统一动作对符合Web应用防护特征的报文进行处理。当需要对符合某个Web应用防护特征的报文采取不同的动作时,可以将此特征设置为特征例外。或者,当Web应用防护配置文件中不包含某个Web应用防护特征时,可以将此特征设置为特征例外,添加到该Web应用防护配置文件中。

特征例外中动作的优先级高于配置文件统一动作的优先级。

语义分析检测

语义分析检测基于对报文中的SQL语法进行分析来检测SQL注入攻击行为。

开启本功能后,设备将同时使用特征匹配和语义分析检测对SQL注入攻击进行识别,可以提升该类攻击的识别率。

配置文件动作

配置文件动作是指设备对匹配上Web应用防护特征或经过语义分析检测识别出攻击的报文做出的处理。动作包括如下几种类型:

Web应用防护实现流程

在设备配置了Web应用防护功能的情况下,当用户的数据流量经过设备时,设备将进行Web应用防护处理。处理流程如图-1所示:

图-1 Web应用防护数据处理流程图

Web应用防护处理的整体流程如下:

  1. 如果报文匹配了某条安全策略,且此策略的动作是允许并引用了Web应用防护配置文件,则设备将对报文进行深度内容检测:首先,识别报文的协议,然后根据协议分析方案进行更精细的分析,并深入提取报文特征。其中,如果配置文件中开启了语义分析检测功能,则同时提取报文中的SQL语句信息。

  2. 设备将提取的报文特征与Web应用防护特征进行匹配,并对匹配成功的报文进行如下处理:

    • 如果报文同时与多个Web应用防护特征匹配成功,则根据这些动作中优先级最高的动作进行处理。动作优先级从高到低的顺序为:重置 > 重定向 > 丢弃 > 允许。但是,对于黑名单日志捕获三个动作只要匹配成功的特征中存在就会执行。

    • 如果报文只与一个Web应用防护特征匹配成功,则根据此特征中指定的动作进行处理。

    其中,如果配置文件中开启了语义分析检测功能,则设备将同时对报文中的SQL语句进行语法分析。如果检测到攻击,则进行如下判断:

    • 如果指定了配置文件动作,则执行指定的动作。

    • 如果未指定配置文件动作,则以快速日志方式输出Web应用防护日志。

    • 当设备通过特征匹配和语义分析功能同时检测出攻击时,则执行两种检测方式下严重级别最高的动作。其中,只要一种检测方式下开启了日志记录功能,设备就会记录日志。

  3. 如果报文未与任何Web应用防护特征匹配成功且语义分析检测也未识别出攻击时,则设备直接允许报文通过。

防篡改

防篡改功能用于对客户端访问的服务器网页内容进行检测,判断其内容是否被篡改。如果被篡改,设备支持对篡改后的页面进行恢复,防止被篡改后的网页信息发布到客户端。

CC攻击防护

CC(Challenge Collapsar)攻击防护是一种对以网站页面为目标的攻击进行阻断的应用层安全防护功能。CC攻击防护通过对来自Web应用程序客户端的请求进行内容检测、规则匹配和统计计算,对攻击请求予以实时阻断,从而对内网的Web服务器进行有效防护。

CC攻击防护功能是通过在安全策略中引用Web应用防护配置文件,并且在Web应用配置文件中引用CC攻击防护配置文件来实现的。当用户的数据流量经过设备时,设备将进行CC攻击防护处理。处理流程如下图所示:

图-2 CC攻击防护数据处理流程图

  1. 如果报文与例外IP地址匹配成功,则直接放行该报文。

  2. 设备对报文进行深度内容检测,并提取报文内容。

  3. 设备将提取的报文内容与CC攻击防护规则进行匹配,并进行如下处理:

    • 如果未匹配到任何CC攻击防护规则,则设备对报文执行允许动作。

    • 如果匹配到一条CC攻击防护规则,则不再进行后续规则匹配,进入步骤4处理。

  4. 如果当前处于检测周期内,则对报文数据进行统计,并与规则下配置的检测指标阈值进行比较,并进行如下处理:

    • 如果达到阈值,则执行规则下配置的动作,包括允许、黑名单和记录日志。

    • 如果未达到阈值,则放行报文。

  5. 如果当前处理超过检测周期,则不对报文内容进行统计,直接放行报文。

vSystem相关说明

非缺省vSystem对于本特性的支持情况,请以页面的实际显示为准。

License支持情况

Web应用防护功能需要购买并正确安装License后才能使用。License过期后,Web应用防护功能可以采用设备中已有的Web应用防护特征库正常工作,但无法升级到官方网站在过期时间后发布的新版本的特征库。关于License的详细介绍请参见“License配置”。

使用限制和注意事项

配置指南

配置思路

Web应用防护功能的配置思路如下图所示:

图-3 Web应用防护功能配置指导图

配置准备

在配置本特性之前,需要完成以下任务:

  • 配置接口IP地址。接口在“网络 > 接口与VRF > 接口”页面配置。

  • 配置路由,保证路由可达。路由在“网络 > 路由”页面配置。

  • 创建安全域。安全域在“网络 > 安全域”页面配置。

  • 配置接口加入安全域。可在安全域页面添加接口,也可在接口页面选择接口所属的安全域。

  • 配置安全策略,放行业务流量。安全策略在“策略 > 安全策略”页面配置。

缺省Web应用防护配置任务

设备上存在一个名称为default的Web应用防护配置文件,缺省Web应用防护配置文件使用当前系统中所有缺省处于启用状态的Web应用防护特征,缺省Web应用防护配置文件不能修改和删除。

如果需要检测当前系统中的所有Web应用防护特征,可使用缺省Web应用防护配置文件,从而简化操作并节省时间。

  1. 选择“对象 > 安全配置文件 > Web应用防护 > 配置文件”。default的Web应用防护配置文件不可编辑。

  2. 在安全策略的内容安全配置中引用此Web应用防护配置文件,有关安全策略的详细配置介绍请参见“安全策略”。

    图-4 安全策略引用配置文件

定制化Web应用防护配置任务

使用缺省default的Web应用防护配置文件不满足需求时,可创建自定义的配置文件。管理员可以基于业务环境和安全需求灵活调整自定义Web应用防护配置文件中例外特征的相关属性,。包括特征的状态、动作、日志和抓包功能等。

  1. 选择“对象 > 安全配置文件 > Web应用防护 > 配置文件”。

  2. 在“Web应用防护配置文件”页面单击<新建>按钮,进入“新建Web应用防护配置文件”页面。在基础参数区域配置如下内容:

    图-5 新建Web应用防护配置文件

    表-1 Web应用防护配置文件-基础参数区域配置内容

    参数

    说明

    名称

    Web应用防护配置文件的名称

    CC攻击防护配置文件

    用于引用CC攻击防护配置文件

    语义分析检测

    语义分析检测基于对报文中的SQL语法进行分析来检测SQL注入攻击行为

    开启本功能后,设备将同时使用特征匹配和语义分析检测对SQL注入攻击进行识别,可以提升该类攻击的识别率

    配置文件动作

    当设备通过特征匹配或语义分析检测功能识别出攻击后,将对报文执行本命令配置的动作

    其中,如果动作为缺省,则表示对特征匹配方式检测出攻击的报文执行该特征的缺省动作;对语义分析检测方式识别出攻击的报文,会以快速日志输出的方式发送Web应用防护日志

    日志

    开启日志功能后,设备将对检测出Web攻击的报文生成日志信息

    抓包

    开启抓包功能后,设备会将捕获到的报文保存在本地并输出到指定的路径,有关捕获参数的详细配置,请参见“安全动作”

  3. 在服务器信息隐藏区域,可配置服务器信息隐藏功能的具体参数,使设备对指定协议或字段中包含的服务器信息进行隐藏,防止服务器信息泄露。具体配置内容如下:

    图-6 服务器信息隐藏

    表-2 Web应用防护配置文件-服务器信息隐藏区域配置内容

    参数

    说明

    FTP协议应答信息

    FTP协议报文的应答信息中包含了服务器版本等信息,开启本功能后,设备会对应答信息进行隐藏,防止服务器信息暴露

    HTTP协议头部字段

    HTTP响应报文的头部字段中可能包含服务器信息,配置本功能后,设备会对指定头部字段内容进行隐藏,防止客户端通过指定字段获取服务器信息

    错误响应状态码页面

    错误状态码返回页面中可能包含服务器信息,配置本功能后,设备会对指定错误状态码返回的页面内容进行隐藏,防止客户端通过该页面获取服务器版本等信息

  4. 在筛选特征区域,可通过配置筛选条件(例如保护对象、攻击分类和方向等)灵活选择此Web应用防护配置文件中所需的Web应用防护特征。单击<查看特征筛选结果>按钮,可查看当前配置文件中已选择的Web应用防护特征。若不配置任何一项筛选条件(即保持缺省情况),则此配置文件中将会包含所有缺省处于启用状态的Web应用防护特征。具体配置内容如下:

    图-7 筛选特征

    表-3 Web应用防护配置文件-筛选特征区域配置内容

    参数

    说明

    保护对象

    通过选择保护对象可快速选择所需的Web应用防护特征

    攻击分类

    通过选择攻击分类可快速选择所需的Web应用防护特征

    方向

    Web应用防护特征库中的特征分为服务端和客户端两类,可通过选择服务端和客户端来筛选配置文件所需的Web应用防护特征

    缺省动作

    Web应用防护特征的缺省动作分为如下四种:丢弃、允许、重置、黑名单,可通过选择不同的缺省动作来筛选配置文件所需的Web应用防护特征

    严重级别

    Web应用防护特征的严重级别分为如下四种:严重、高、中、低,可通过选择不同的严重级别来筛选配置文件所需的Web应用防护特征

  5. 在设置例外特征区域,可通过如下两种方式添加例外特征。

    • 在特征例外输入框中直接输入Web应用防护特征的ID号,然后单击右边<添加>按钮,即可把此特征加入特征例外中。

    • 先单击<查看特征筛选结果>按钮,进入“查看特征”页面,在此页面选中需要加入特征例外的Web应用防护特征,然后单击此页面上方的<添加到例外列表>按钮,在弹出的“修改例外特征”页面中修改特征的动作和状态等。单击<确定>按钮,即可把此特征加入特征例外中。

    在特征例外列表中,单击目标Web应用防护特征右边的<编辑>按钮,进入“修改例外特征”页面,在此页面可配置此特征的动作、状态、日志和抓包功能。单击<确定>,此例外特征修改成功。

    图-8 设置例外特征

  6. 单击<确定>按钮,新建Web应用防护配置文件成功,且会在“Web应用防护配置文件”页面中显示。

  7. 在安全策略的内容安全配置中引用此Web应用防护配置文件,具体配置步骤请参见“缺省Web应用防护配置任务”章节。

  8. 单击<提交>按钮,激活Web应用防护配置文件的配置内容。配置此功能会暂时中断DPI业务的处理,为避免重复配置此功能对DPI业务造成影响,请完成部署DPI各业务模块的配置文件后统一配置此功能。

防篡改配置任务

防篡改功能分为学习阶段和工作阶段。开启网页自学习功能后,防篡改功能将进入处于学习阶段。在此阶段中,设备会对服务器网页内容进行学习,生成基线文件。管理员可以通过查看自学习URL列表,判断设备是否已完成学习,如果已完成学习,可以关闭网页自学习功能,防篡改将进入工作阶段。在工作阶段,设备会对服务器返回给客户端的响应报文中的网页文件进行缓存,再使用基线文件与其进行对比。如果一致,则认为服务器网页文件未被篡改,否则,则认为网页文件已被篡改。

  1. 选择“对象 > 安全配置文件 > Web应用防护 > 配置文件”。

  2. 新建一个Web应用防护配置文件,或者编辑已有的Web配置文件。在防篡改区域进行如下配置:

    图-9 防篡改

    表-4 配置防篡改功能

    参数

    说明

    防篡改功能

    开启本功能后,设备可对客户端访问的网页内容进行检测,判断内容是否被篡改,同时支持对篡改后的页面进行恢复,防止被篡改后的网页信息发布到客户端

    网页自学习功能

    开启本功能后,设备会对客户端访问的网页内容进行学习,并将学习到的页面内容保存为基线文件。当设备未挂载硬盘时,基线文件保存在内存中,设备重启后会被清空。当设备挂载了硬盘时,基线文件会被保存在硬盘中,可以长时间保存

    学习到的URL可以到“Web应用防护 > 配置文件 > 自学习URL列表”页面查看。其中,URL仅学习到路径(path)字段

    文件类型

    防篡改功能检测的文件类型,包括如下取值:

    • XLS(支持扩展名为xl和xla)

    • HLP(支持扩展名为hlp和chm)

    • PPT(支持扩展名为ppt、ppz、pps、pot和pptx)

    • DOC(支持扩展名为doc和dot)

    • PE(支持扩展名为bin、exe、com和dll)

    • PDF(支持扩展名为pdf)

    • SWF(支持扩展名为swf和cab)

    • ZIP(支持扩展名为zip)

    • GIF(支持扩展名为gif)

    • JPEG(支持扩展名为jpeg、jpg和jpe)

    • CSS(支持扩展名为css)

    • HTML(支持扩展名为html和htm)

    • TXT(支持扩展名为txt)

    工作模式

    防篡改功能的工作模式,包括如下取值:

    • 监控模式:此模式下,当设备检测到用户访问网页的内容被篡改时,仅记录日志

    • 保护模式:此模式下,当设备检测到用户访问网页的内容被篡改时,会将响应报文中的网页内容替换为通过网页自学习功能学习到的基线内容,返回给客户端,并记录日志。此模式仅当设备配置了TCP代理时生效。有关TCP代理的详细介绍,请参见“应用代理”

    自定义静态资源

    用来添加防篡改功能检测的静态网页资源路径,配置步骤如下:

    1. 单击<添加>按钮,进入添加自定义静态资源页面

    2. 配置主机名、请求方法和URI。其中,URI必须以“/”开头

    3. 单击<确定>按钮,完成配置

  3. 单击确定按钮,完成配置。

CC攻击防护配置任务

设备基于CC攻击防护配置文件对攻击报文进行处理,且CC攻击防护配置文件仅在被Web应用防护配置文件引用后才能生效。

CC攻击防护配置文件中可以配置匹配报文的过滤条件以及检测指标等,管理员可以根据实际需求进行配置。

  1. 选择“对象 > 安全配置文件 > Web应用防护 > CC攻击防护配置文件”。

  2. 在“CC攻击防护配置文件”页面单击<新建>按钮,进入“新建CC攻击防护配置文件”页面。在“基本配置”区域可配置CC攻击防护配置文件的基本信息,具体配置内容如下:

    图-10 新建CC攻击防护配置文件

    表-5 新建CC攻击防护配置文件

    参数

    说明

    名称

    CC攻击防护配置文件的名称

    描述

    通过合理编写描述信息,便于管理员快速理解和识别CC攻击防护配置文件的作用,有利于后期维护

    例外IP地址

    如果用户HTTP报文中的源IP地址与例外IP地址匹配成功,则直接允许此报文通过;如果匹配失败,则继续进行后续的CC攻击检测

    检测周期

    用于检测是否存在CC攻击行为的计时周期,从一条流的首个报文命中CC攻击防护规则时开始计时

  3. 在“CC攻击防护规则”区域可配置CC攻击防护规则,单击<新建>按钮,进入新建CC攻击防护规则页面,具体配置内容如下:

    图-11 新建CC攻击防护规则

    表-6 新建CC攻击防护规则

    参数

    说明

    规则名称

    CC攻击防护规则的名称

    目的IPv4地址

    配置作为CC攻击防护规则过滤条件的目的IPv4地址

    目的IPv6地址

    配置作为CC攻击防护规则过滤条件的目的IPv6地址

    目的端口

    配置作为CC攻击防护规则过滤条件的目的端口

    请求方法

    配置作为CC攻击防护规则过滤条件的请求方法

    防护路径

    配置防护的网站资源的路径

    X-Forwarded-For检测

    开启X-forward-For字段检测功能后,设备将从客户端HTTP请求报文头的X-forward-for字段获取真正的源IP地址,本功能适用于客户端使用代理方式访问服务器的场景

    检测指标

    用于检测是否存在CC攻击的指标项,包括请求速率和请求集中度

    • 请求速率:用于检测客户端是否过于频繁地访问某网站,包括如下参数:

      • 速率阈值:表示一个检测周期内,访问任意防护路径的最大次数

    • 请求集中度:用于检测客户端是否主要针对某网站进行访问,包括如下参数:

      • 访问基数:表示所有访问路径的命中总次数,仅当达到访问基数后,才计算请求集中度

      • 集中度阈值:表示最常访问的防护路径的访问次数占所有防护路径访问总次数的百分比

    动作

    配置CC攻击的防护动作,包括允许和黑名单。配置动作为黑名单后,还需要配置黑名单的老化时间

    日志

    开启日志记录功能后,当设备检测出存在CC攻击时,将记录日志

  4. 单击<确定>按钮,完成CC攻击防护规则的配置。

  5. 单击<确定>按钮,完成CC攻击防护配置文件的配置。

  6. 选择“对象 > 安全配置文件 > Web应用防护 > 配置文件”。

  7. 在“Web应用防护配置文件”页面编辑或者新建一个Web应用防护配置文件,在配置文件中引用CC攻击防护配置文件。新建Web应用防护配置文件的步骤请参见“定制化Web应用防护配置任务”。

  8. 单击<提交>按钮,激活Web应用防护配置文件的配置内容。

管理Web应用防护自定义特征

当需要的特征在设备当前特征库中不存在时,用户可通过手工配置的方式新建自定义特征。

自定义特征包括属性和规则。

一个自定义特征下可配置多条规则,规则间包含如下规则逻辑:

自定义特征规则下支持配置规则的匹配条件(包括源/目的IPv4地址、源/目的端口、请求方法等)、检查项和检查项触发条件。

自定义特征规则包括如下类型:

新建自定义特征

新建自定义特征的配置步骤如下:

  1. 选择“对象 > 安全配置文件 > Web应用防护 > 特征”。

  2. 在“Web应用防护特征”页面,单击<新建自定义特征>按钮,进入“新建自定义特征”页面。在“基本配置”区域可配置自定义特征的属性,具体配置内容如下:

    图-12 新建自定义特征

    表-7 配置自定义特征属性

    参数

    说明

    名称

    自定义特征的名称

    描述

    通过合理编写描述信息,便于管理员快速理解和识别自定义特征的作用,有利于后期维护

    严重级别

    可根据具有该特征报文对网络攻击造成危害的严重程度配置不同的严重级别。严重级别分为如下四种:严重、高、中、低

    方向

    可根据具有该特征报文的传输方向进行配置,包括服务端和客户端

    动作

    对具有该特征的报文执行的动作。动作类型包括:黑名单、丢弃、允许和重置

    日志

    开启日志功能后,设备将对与Web应用防护特征匹配成功的报文生成日志信息

    抓包

    开启抓包功能后,设备会将捕获到的报文保存在本地并输出到指定的路径,有关捕获参数的详细配置,请参见“安全动作”

  3. 在“规则”区域可配置自定义特征规则。一个自定义特征下可配置多条规则,用户需要先配置规则逻辑,包括逻辑或和逻辑与。单击<新建>按钮,进入新建规则页面,具体配置内容如下:

    图-13 新建自定义特征规则

    表-8 新建自定义特征规则

    参数

    说明

    ID

    自定义特征规则的ID

    匹配类型

    表示自定义特征的类型,包括关键字类型和数值类型

    请求方法

    HTTP报文的请求方法,如:GET、POST等

    源IPv4地址

    自定义特征匹配的源IPv4地址

    源端口

    自定义特征匹配的源端口

    目的IPv4地址

    自定义特征匹配的目的IPv4地址

    目的端口

    自定义特征匹配的目的端口

  4. 在“检查项触发条件”区域配置检查项的触发条件,仅当自定义特征规则为关键字类型时需要配置。具体配置内容如下:

    图-14 新建检查项触发条件

    表-9 新建检查项触发条件

    参数

    说明

    协议字段

    检查项触发条件检测的协议字段

    匹配模式

    检查项触发条件检测内容的匹配模式,包括文本方式和十六进制方式

    匹配内容

    检查项触发条件检测的内容

    检测深度

    检查项触发条件的检测深度,从起始检测位置开始,检测数据的长度

    偏移量

    检查项触发条件的偏移量,从协议字段开始,偏移指定长度,作为检查项触发条件的起始检测位置

  5. 单击<确定>按钮,完成检查项触发条件的配置。

  6. 在“检查项”区域配置自定义特征规则的检查项,具体配置内容如下:

    图-15 新建自定义特征规则的检查项

    表-10 新建检查项

    参数

    说明

    ID

    检查项的ID

    协议字段

    检查项检测的协议字段

    操作符

    表示检查项和检测内容的匹配方式,不同类型的自定义特征规则支持的操作符不同,取值包括:

    • 关键字类型规则的操作符包括:包含和不包含

    • 数值类型规则的操作符包括:大于、小于、等于、不等于、大于等于和小于等于

    匹配模式

    检查项检测内容的匹配模式,包括文本、正则表达式和十六进制

    匹配内容

    检查项检测的内容

    偏移量

    检查项的偏移量,从协议字段开始,偏移指定长度,作为检查项的检测起始位置

    检测深度

    检查项的检测深度,从检查项检测的起始位置开始,检测数据的长度

    相对偏移量

    表示当前检查项与上一个检查项之间的相对偏移量,从上一个检查项的结束位置开始偏移的长度

    相对检测深度

    表示当前检查项的检测深度

  7. 单击<确定>按钮,完成检查项的配置。

  8. 单击<确定>按钮,完成自定义特征规则的配置。

  9. 单击<确定>按钮,完成自定义特征的配置。

  10. 单击<提交>按钮,使新建的自定义特征生效。

  11. 新建Web应用防护配置文件,配置基础参数和过滤条件。并将配置文件引用至策略中。具体配置步骤请参见“定制化Web应用防护配置任务”章节。

删除自定义特征

删除自定义特征的配置步骤如下:

  1. 选择“对象 > 安全配置文件 > Web应用防护 > 特征”。

  2. 在“Web应用防护特征”页面,选择需要删除的自定义特征,单击<删除>按钮,选择删除选中的自定义特征。

    图-16 删除自定义特征

配置Web应用防护白名单

当发现Web应用防护日志中存在误报的情况时,可通过开启白名单功能,将误报日志中提取到的特征ID、URL或IP地址加入白名单。设备对匹配白名单的报文放行,可以减少误报。

配置白名单功能后,设备会对白名单的命中情况进行统计,用户可在白名单界面中查看统计信息。

  1. 选择“对象 > 安全配置文件 > Web应用防护 > 白名单”。

  2. 在“白名单”页面单击<新建>按钮,进入“新建白名单”页面。具体配置内容如下:

    图-17 新建白名单

    表-11 配置白名单

    参数

    说明

    编号

    白名单的编号

    描述

    通过合理编写描述信息,便于管理员快速理解和识别白名单的作用,有利于后期维护

    特征ID

    从误报的日志中提取到的Web应用防护特征ID

    URL

    从误报的日志中提取到的URL

    URL由报文头域和报文首行组成,例如:111.15.93.166/wnm/get.j

    对于新增、修改和删除URL,设备会在完成修改的10秒后自动激活,使配置生效

    IP地址类型

    IP地址类型,取值包括IPv4和IPv6

    IP地址

    从日志中提取到的源IP地址或者真实源IP地址

    当用户将IP地址配置为真实源IP地址时,必须先到“对象 > 应用安全 > 高级配置”页面,配置真实源IP地址检测功能,使设备可以识别出报文中的真实源IP地址,与白名单进行正确的匹配。有关真实源IP地址功能的详细介绍,请参见“高级配置”

    状态

    表示白名单是否生效。当勾选启用时,此白名单将处于生效状态;当未勾选启用时,此白名单将处于禁用状态

  3. 单击<确定>按钮,完成白名单的创建。

  4. 单击<开启白名单功能>按钮,启用白名单功能。

    图-18 开启白名单功能示意图