ADC

XML 拒绝服务检查

XML 拒绝服务(XML DoS 或 xDoS)检查会检查传入的 XML 请求,以确定它们是否与拒绝服务 (DoS) 攻击的特征匹配。如果有匹配项,则阻止这些请求。XML DoS 检查的目的是防止攻击者使用 XML 请求对您的 Web 服务器或网站发起拒绝服务攻击。

如果使用向导或 GUI,则在“修改 XML 拒绝服务复选”对话框中的“常规”选项卡上,可以启用或禁用“阻止”、“日志”、“统计信息”和“学习”操作:

如果使用命令行接口,则可以输入以下命令来配置 XML 拒绝服务检查:

  • set appfw profile <name> -xmlDoSAction [**block**] [**log**] [**learn**] [**stats**] [**none**]

要配置单个 XML 拒绝服务规则,必须使用 GUI。在 修改 XML 拒绝服务复 选对话框的 检查 选项卡上,选择一个规则,然后单击 开以打开该规则的 修改 XML 拒绝服务 对话框。不同规则的各个对话框有所不同,但很简单。有些仅允许您启用或禁用规则;另一些则允许您通过在文本框中键入新值来修改数字。

注意:

学习引擎拒绝服务攻击的预期行为取决于配置的操作。如果操作设置为“阻止”,则引擎将获知配置的绑定值 +1,当出现违规时 XML 解析将停止。如果配置的操作未设置为“阻止”,引擎将获知实际传入的违规长度值。

单个 XML 拒绝服务规则是:

  • 最大元素深度。将每个元素中嵌套级别的最大数量限制为 256。如果启用此规则,并且 Web App Firewall 检测到某个 XML 请求的元素超过了允许的最大级别数,则会阻止该请求。您可以将最大等级数修改为一 (1) 到 65,535 之间的任意值。

  • 元素名称的最大长度。将每个元素名称的最大长度限制为 128 个字符。这包括扩展后的命名空间中的名称,其中包括以下格式的 XML 路径和元素名称:

     {http://prefix.example.com/path/}target_page.xml
     <!--NeedCopy-->
    

用户可以将最大名称长度修改为一 (1) 个字符到 65,535 之间的任意值。

  • 最大元素数。将每个 XML 文档中任何一种元素的最大数量限制为 65,535。您可以将最大元素数修改为一 (1) 到 65,535 之间的任意值。

  • 最多 # 元素子元素。将每个元素允许的最大子元素(包括其他元素、字符信息和注释)数量限制为 65,535。您可以将元素子元素的最大数量修改为介于 1 到 65535 之间的任意值。

  • 最大 # 个属性。将每个元素允许的最大属性数限制为 256。您可以将最大属性数修改为一 (1) 到 256 之间的任意值。

  • 最大属性名称长度。将每个属性名称的最大长度限制为 128 个字符。可以将最大属性名称长度修改为一 (1) 到 2,048 之间的任意值。

  • 最大属性值长度。将每个属性值的最大长度限制为 2048 个字符。可以将最大属性名称长度修改为一 (1) 到 2,048 之间的任意值。

  • 最大字符数据长度。将每个元素的最大字符数据长度限制为 65,535。您可以将长度修改为一 (1) 到 65,535 之间的任意值。

  • 最大文件大小。将每个文件的大小限制为 20 MB。您可以将最大文件大小修改为任意值。

  • 最小文件大小。要求每个文件的长度至少为 9 字节。您可以将最小文件大小修改为任何表示不同字节的正整数。

  • 最大实体扩展次数。将允许的实体扩展次数限制为指定数量。默认值:1024。

  • 最大实体扩展深度。将嵌套实体扩展的最大数量限制为不超过指定数量。默认值:32。

  • 最大命名空间数。将 XML 文档中命名空间声明的数量限制为不超过指定数量。默认值:16。

  • 命名空间 URI 的最大长度。将每个命名空间声明的 URL 长度限制为不超过指定的字符数。默认值:256。

  • 区块处理指令。屏蔽请求中包含的任何特殊处理指令。此规则没有用户可修改的值。

  • 阻止 DTD。阻止请求中包含的任何文档类型定义 (DTD)。此规则没有用户可修改的值。

  • 封锁外部实体。阻止请求中对外部实体的所有引用。此规则没有用户可修改的值。

  • SOAP 数组检查。启用或禁用以下 SOAP 数组检查:

    • 最大 SOAP 数组大小。在连接被阻塞之前,XML 请求中所有 SOAP 数组的最大总大小。您可以修改此值。默认:200000000。
    • 最大 SOAP 数组排名。在连接被阻塞之前,XML 请求中任何单个 SOAP 数组的最大等级或维度。您可以修改此值。默认值:16。
XML 拒绝服务检查