Citrix ADC

Web 应用程序防火墙配置文

以下是必须在设备上配置的配置文件设置。

在命令提示符下,键入:

add appfw profile <name> [-invalidPercentHandling <invalidPercentHandling>] [-checkRequestHeaders ( ON | OFF )] [-URLDecodeRequestCookies ( ON | OFF )] [-optimizePartialReqs ( ON | OFF )] [-errorURL <expression>] [-logEveryPolicyHit ( ON | OFF )] [-stripHtmlComments <stripHtmlComments>] [-stripXmlComments ( none | all )] [-postBodyLimitSignature <positive_integer>][-fileUploadMaxNum <positive_integer>][-canonicalizeHTMLResponse ( ON | OFF )][-percentDecodeRecursively ( ON | OFF )] [-multipleHeaderAction <multipleHeaderAction> ...][-inspectContentTypes <inspectContentTypes> ...][-semicolonFieldSeparator ( ON | OFF )]

示例:

add appfw profile profile1 [-invalidPercentHandling secure_mode] [-checkRequestHeaders ON] [-URLDecodeRequestCookies OFF] [-optimizePartialReqs OFF]

其中,

无效的百分比处理。配置用于处理百分比编码的名称和值的方法。

可用设置功能如下:

asp_mode-去除并解析用于解析的无效百分比。示例:- curl –v “http://<vip>/forms/login.html?field=sel%zzect -> Invalid percent encoded char(%zz) 被剥离,其余内容将被检查,并为 SQLinjection 检查采取措施。 secure_mode-我们检测到无效的百分比编码值并忽略它。示例:- curl –v “http://<vip>/forms/login.html?field=sel%zzect -> Invalid percent encoded char(%zz) 被检测到,计数器增加,内容按原样传递给服务器。 apache_mode-此模式的工作方式类似于安全模式。 可能的值:apache_mode、asp_mode、secure_mode 默认值:secure_mode

优化部分 REQS。当 OFF/ON(没有安全对象)时,Citrix ADC 设备会将部分请求发送到后端服务器。此部分响应已发送回客户端。配置安全对象时,OptimizeBartialREQS 很有意义。设备在关闭时从服务器发送完全响应请求,开启时仅请求部分响应。

可用的设置如下:

ON -客户端的部分请求会导致对后端服务器的部分请求。 OFF-客户端的部分请求将更改为对后端服务器的完全请求 可能的值:ON、OFF 默认值:开

URL/解码请求cookies。URL 解码请求 cookie,然后再对其进行 SQL 和跨站点脚本检查。

可能的值:ON、OFF 默认值:OFF

签名邮政正文限制(字节)。限制位置指定为 “HTTP_POST_BODY” 的签名所检查的请求负载(以字节为单位)。

默认值:8096 最小值:0 最大值:4294967295

帖子正文限制(字节)。限制 Web 应用程序防火墙检查的请求负载(以字节为单位)。

默认值:20 万 最小值:0 最大值:10 GB

有关安全设置及其 GUI 过程的详细信息,请参阅配置 Web App Firewall 配置文件主题。

后身限制。当您指定允许的 HTTP 正文的最大大小时,postBodyLimit 将遵循错误设置。 要遵守错误设置,您必须配置一个或多个 “帖子正文限制” 操作。该配置也适用于传输编码标头被分块的请求。

set appfw profile <profile_name> -PostBodyLimitAction block log stats

Wis, Block-此操作阻止违反安全检查的连接,并且它基于所配置的 HTTP 主体的最大大小(后体限制)。你必须始终启用该选项。

日志-记录此安全检查的冲突情况。

统计信息-为此安全检查生成统计信息。

注意:

帖子正文限制操作的日志格式现在已更改为遵循标 准审计日志记录格式,例如: ns.log.4.gz:Jun 25 1.1.1.1. <local0.info> 10.101.10.100 06/25/2020:10:10:28 GMT 0-PPE-0 : default APPFW APPFW_POSTBODYLIMIT 1506 0 : <Netscaler IP> 4234-PPE0 - testprof ><URL> Request post body length(<Post Body Length>) exceeds post body limit.

In@@spectQueryContentTypes 检查针对以下内容类型的注入 SQL 和跨站点脚本的请求查询和 Web 表单。

set appfw profile p1 -inspectQueryContentTypes HTML XML JSON OTHER

可能的值:HTML、XML、JSON、其他

默认情况下,对于基本和高级 appfw 配置文件,此参数设置为 “InspectQueryContentTypes:HTML JSON OTER”。

以 XML 格式检查查询内容类型的示例:

> set appfw profile p1 -type XML
Warning: HTML, JSON checks except “InspectQueryContentTypes” & “Infer Content-Type XML Payload Action” will not be applicable when profile type is not HTML or JSON respectively.
<!--NeedCopy-->

以 HTML 格式检查查询内容类型的示例:

> set appfw profile p1 -type HTML
Warning: XML, JSON checks except “InspectQueryContentTypes” & “Infer Content-Type XML Payload Action” will not be applicable when profile type is not XML or JSON respectively
Done
<!--NeedCopy-->

以 JSON 格式检查查询内容类型的示例:

> set appfw profile p1 -type JSON
Warning: HTML, XML checks except “InspectQueryContentTypes” & “Infer Content-Type XML Payload Action will not be applicable when profile type is not HTML or XML respectively
Done
<!--NeedCopy-->

错误 URL 表达式。Citrix Web App Firewall 用作错误 URL 的 URL。最大长度:2047。

注意:

为了阻止请求的 URL 中的违规,如果错误 URL 类似于签名 URL,设备将重置连接。

LogeveryPolicyHit -记录每个配置文件匹配项,无论安全检查结果如何 可能的值:ON、OFF。 默认值:OFF。

StripxmlComments - 在转发受保护网站为响应用户请求而发送的网页之前,先删除 XML 注释。 可能的值:无、全部、exclude_script_tag。 默认值:无

postbodyLimiter 签 名-签名中位置 HTTP_POST_BODY 的签名检查所允许的 HTTP 帖子正文大小的最大值,以字节为单位。 值的变化可能会影响 CPU 和延迟配置文件。 默认值:2048。 最小值:0 最大值:4294967295

FileUploadMaxNum -每个表单提交请求允许的最大文件上传次数。最大设置 (65535) 允许无限数量的上传。 默认值:65535 最小值:0 最大值:65535

canonicalizeHTMLResponse -对受保护网站发送的响应中的任何特殊字符执行 HTML 实体编码。 可能的值:ON、OFF 默认值:ON

PercentdecodeR ecursive-配置应用程序防火墙是否应使用百分比递归解码。 可能的值:ON、OFF 默认值:ON

MultipleHeaderAction -一个或多个多个标头操作。可用设置功能如下:

  • 阻止。阻止具有多个标头的连接。
  • 日志。记录具有多个标头的连接。
  • KeePlast。当存在多个标题时,只保留最后一个标题。

InspectContentType — 一个或多个 InspectContentType 列表。

  • application/x-www-form-urlencoded
  • multipart/form-data
  • text/x-gwt-rpc

可能的值:无、应用程序 /x-www 表单 urlencoded、多部分/表单数据、text/x-gwt-rpc

SemicolonFieldSparator -允许 ‘;’ 作为 URL 查询和 POST 表单正文中的表单域分隔符。 可能的值:ON、OFF 默认值:OFF

Web 应用程序防火墙配置文

在本文中