本节详细介绍了配置 WAF 配置文件的步骤。

注:
  • 导航到模板 > WAF > WAF 配置文件以找到默认配置文件。

  • System-WAF-Profile 是默认配置文件,其中包含通过虚拟服务提供的最常用 Web 应用程序设置。

  • 要自定义配置文件,强烈建议创建新的配置文件,而不是编辑默认配置文件 (System-WAF-Profile)

要创建新的配置文件,请执行以下操作。

  1. 导航到模板 > WAF > WAF 配置文件

  2. 单击创建

  3. 在以下选项卡下面配置新的 WAF 配置文件:

    1. 常规

    2. 默认操作

    3. 内容类型映射

    4. 文件

  4. 单击保存

常规

创建 WAF 配置文件屏幕中的常规部分如下所示。



提供以下详细信息以配置 WAF 配置文件。

字段

描述

附加信息

名称

输入配置文件的相关名称。

允许的版本

为配置文件输入允许的 HTTP 版本。

默认输入内容为 1.01.12.0

允许的方法

为配置文件输入允许的 HTTP 方法。不同的应用程序可能需要使用不同的方法。

网站可能仅使用默认 HTTP 方法,即 GETHEADPOSTOPTIONS。API 可以使用其他 HTTP 方法,例如 PUT、DELETE、TRACE、CONNECT 等。

您也可以从以下其他选项中进行选择:

  • PATCH

  • PROPFIND

  • PROPPATCH

  • MKCOL

  • COPY

  • MOVE

  • LOCK

  • UNLOCK

允许的请求内容类型字符集

为配置文件输入接受的请求内容类型。默认情况下,将涵盖所有标准内容类型。

默认字符集为 utf-8、iso8859-1、iso8859-15 和 windows-1252。您可以直接在 WAF 配置文件中添加或更新所需的字符集,而无需配置任何 CRS 之前的规则。

受限制的扩展

输入必须限制和阻止的扩展名。

通常,这些是没有位于 Web 服务器上的文件。

受限制的标头

输入 WAF 不允许的标头。

静态扩展

输入将绕过 WAF 检查的静态文件扩展名列表。

没有任何参数或动态部分的 GET 请求划分为静态请求。它不包含任何攻击向量。

其他设置

以下是可以在 常规选项卡中配置的一些其他设置。

字段

描述

附加信息

最大客户端请求大小

这是 WAF 扫描的客户端请求正文的最大大小。

示例 - 32

最大后端响应

输入 WAF 允许的最大响应大小(以 KB 为单位)。

示例 - 128

正则表达式匹配限制

这是处理规则时每个正则表达式匹配的 CPU 占用率限制。

示例 - 30000

正则表达式递归限制

处理规则时限制每个正则表达式匹配的递归深度。

最长执行时间

这是 WAF 处理单个请求时允许的最长时间。

示例 - 50。

参数分隔符

为具有不同参数分隔符的特殊应用程序输入分隔符。

示例 - &。

Cookie 格式版本

选择首选 Cookie 格式版本。

Version 1 cookies 已弃用。因此,建议使用 Netscape cookies

忽略由部分扫描导致的请求正文解析错误

选择此项将忽略由部分扫描导致的请求正文解析错误。

启用 XXE 防护

阻止或标记引用外部实体的 XML 请求。

选中或取消选中该复选框。

默认操作选项卡

每个阶段具有一个默认操作。为默认操作定义的字段包括阶段操作状态代码其他日志记录WAF 日志

默认操作的值采用以下格式:

<phase:n>, <action>, <status code>, <additional-log-level>, <WAF-log-level>

  • <phase>:下面列出了 WAF 阶段以及各阶段允许的值:

    • 请求标头阶段 - phase:1

    • 请求正文阶段 - phase:2

    • 响应标头阶段 - phase:3

    • 响应正文阶段 - phase:4

  • <action>:操作的两个选项包括 passdeny

  • <status code>:如果 WAF 拒绝了请求,则默认向客户端发送 403 状态代码。此外,也可以自定义状态代码(如果需要)。例如,403。

  • <additional-log-level>:其他日志记录级别。例如,log

  • <WAF-log-level>:WAF 日志记录级别。例如,auditlog

以下是请求标头阶段的默认操作示例。

phase:1,deny,status:403,log,auditlog

“内容类型映射”选项卡

此选项卡用于为配置文件配置接受的请求内容类型。

有关 content-type 映射和可用的请求正文解析程序的更多信息,请参阅 WAF 配置文件中的 Content-Type 映射

“文件”选项卡

虚拟服务之间共享的 WAF 配置文件中的静态输入数据存储在此处。例如,文件名 sql-errors.data 具有默认数据集,其中包含用于检查 HTTP 响应以进行数据泄露保护的字符串。

要创建新文件,请执行以下操作。

  1. 导航到文件选项卡。

  2. 单击添加

  3. 提供一个名称并输入相关数据

可以在自定义 WAF 策略规则中引用这些文件。有关更多信息,请参阅自定义规则