ADC

XML 外部实体 (XXE) 攻击防护

XML 外部实体 (XXE) 攻击防护会检查传入的负载中是否存在有关 Web 应用程序所在的可信域之外的实体的未经授权的 XML 输入。如果您有一个弱的 XML 解析器,该解析器会解析包含外部实体引用的输入的 XML 负载,则会发生 XXE 攻击。

在 NetScaler ADC 设备中,如果 XML 解析器配置不正确,利用该漏洞的影响可能是危险的。它允许攻击者读取 Web 服务器上的敏感数据。执行拒绝服务攻击等等。因此,保护设备免受 XXE 攻击非常重要。只要内容类型被标识为 XML,Web App Firewall就能够保护设备免受 XXE 攻击。为防止恶意用户绕过此保护机制,如果 HTTP 标头中的“推断”内容类型与正文的内容类型不匹配,WAF 会阻止传入请求。当使用白名单的默认或非默认内容类型时,此机制可防止绕过 XXE 攻击防护。

影响 NetScaler ADC 设备的一些潜在 XXE 威胁包括:

  • 机密数据泄露
  • 拒绝服务 (DOS) 攻击
  • 服务器端的伪造请求
  • 端口扫描

配置 XML 外部实体 (XXE) 注入保护

要使用命令界面配置 XML 外部实体 (XXE) 检查: 在命令行界面中,可以添加或修改应用程序防火墙配置文件命令以配置 XXE 设置。 您可以启用阻止、日志和统计信息操作。

在命令提示符下,键入:

set appfw profile <name> [-inferContentTypeXmlPayloadAction <inferContentTypeXmlPayloadAction <block | log | stats | none>]

注意:

默认情况下,XXE 操作设置为“无”。

示例:

set appfw profile profile1 -inferContentTypeXmlPayloadAction Block

其中,操作类型为:

阻止:请求被阻止,请求中的 URL 没有任何例外。

日志:如果 HTTP 请求标头中的内容类型与负载不匹配,则日志消息中必须包含有关违规请求的信息。

统计数据:如果检测到内容类型不匹配,则此违规类型的相应统计数据将增加。

无:如果检测到内容类型不匹配,则不采取任何操作。任何操作类型都不能与任何其他操作类型结合使用。默认操作设置为“无”。

使用 Citrix ADC GUI 配置 XXE 注入检查

完成以下步骤以配置 XXE 注入检查。

  1. 导航到 安全 > Citrix Web App Firewall > 配置文件
  2. 配置文件页面上,选择一个配置文件,然后单击编辑
  3. Citrix Web App Firewall 配置文件页面上,转到高级设置部分,然后单击安全检查

  4. 在“安全检查”部分中,选择“推断内容类型 XML 负载”,然后单击“操作 设置”。
  5. 在“推断内容类型 XML 负载设置”页面中,设置以下参数:

    1. 操作。为 XXE 注入安全检查选择一个或多个要执行的操作。
  6. 单击确定

查看 XXE 注入流量和违规统计信息

Citrix Web App Firewall 统计 信息页面以表格或图形格式显示安全流量和安全违规详细信息。

使用命令界面查看安全统计信息。

在命令提示符下,键入:

stat appfw profile profile1

使用 Citrix ADC GUI 查看 XXE 注入统计信息

完成以下步骤以查看 XXE 注入统计信息:

  1. 导航到 安全 > Citrix Web App Firewall > 配置文件
  2. 在详细信息窗格中,选择 Web App Firewall 配置文件,然后单击“统计信息”。
  3. Citrix Web App Firewall 统计信息页面显示 XXE 命令注入流量和违规详情。
  4. 您可以选择 表格视图 或切换到 图形视图 以表格或图形格式显示数据。
XML 外部实体 (XXE) 攻击防护