规则防护引擎最佳实践

本文介绍了使用Web应用防火墙(Web Application Firewall,简称WAF)的规则防护引擎功能进行Web应用攻击防护的最佳实践,包含应用场景、防护策略、防护效果、规则更新四个方面。

应用场景

WAF主要帮助网站防御不同类型的Web应用攻击,例如SQL注入、XSS跨站攻击、远程命令执行、WebShell上传等攻击。关于Web攻击的更多信息,请参见常见Web漏洞释义

说明

主机层服务的安全问题(例如Redis、MySQL未授权访问等)导致的服务器入侵不在WAF的防护范围之内。

设置防护策略

您在完成网站接入后,WAF规则防护引擎功能默认开启,并使用正常模式的防护策略,为网站防御常见的Web攻击。您可以在网站防护页面定位到规则防护引擎区域,设置防护策略和查看规则防护引擎的防护状态。具体操作,请参见操作步骤

防护状态解读

  • 状态:是否开启规则防护引擎模块,默认开启。

  • 模式:WAF检测发现网站的访问请求中包含Web攻击时要执行的动作,包含拦截告警两种模式。

    • 拦截模式:WAF自动拦截攻击请求,并在后台记录攻击日志。

    • 告警模式:WAF不会拦截攻击请求,仅在后台记录攻击日志。

  • 防护规则组:规则防护引擎使用的防护规则合集,默认提供中等规则组严格规则组宽松规则组,分别表示正常、严格、宽松的检测强度。

    • 中等规则组:防护粒度较宽松且防护规则策略精准,可以拦截常见的具有绕过特征的攻击请求。

    • 严格规则组:防护粒度最精细,可以拦截具有复杂的绕过特征的攻击请求,相比中等规则组带来的误拦截可能更多。

    • 宽松规则组:防护粒度较粗,只拦截攻击特征比较明显的请求。

    说明

    防护规则组设置仅在开启规则防护引擎后生效。

    如果您开通了企业版或旗舰版的中国内地WAF实例,或者旗舰版的非中国内地WAF实例,则您可以自定义防护规则组。自定义防护规则组允许您自由组合WAF提供的所有防护规则,形成有针对性的防护策略,并将其应用到网站防护。具体操作,请参见自定义防护规则组

使用建议

  • 如果您对自己的业务流量特征还不完全清楚,建议您先切换到告警模式进行观察。一般情况下,建议您观察一至两周,然后分析告警模式下的攻击日志:

    • 如果没有发现任何正常业务流量被拦截的记录,则可以切换到拦截模式。

  • 业务操作方面应注意以下问题:

    • 正常业务的HTTP请求中尽量不要直接传递原始的SQL语句、JavaScript代码。

    • 正常业务的URL尽量不要使用一些特殊的关键字(UPDATE、SET等)作为路径,例如www.aliyundoc.com/abc/update/mod.php?set=1

    • 如果业务中需要上传文件,不建议直接通过Web方式上传超过50 MB的文件,建议使用OSS或者其他方式上传。更多信息,请参见开始使用OSS

查看防护效果

开启规则防护引擎后,您可以在安全报表页面查询Web安全 > Web入侵防护报表,了解规则防护引擎的防护记录。具体操作,请参见WAF安全报表

Web入侵防护报表支持查询最近30天内的攻击记录。报表下方提供了详细的攻击记录列表,您可以筛选出规则防护记录,然后单击某条记录后的查看详情,查询攻击详情。例如,下图中的攻击详情表示一条已被WAF拦截的SQL注入请求。查看攻击详情

说明

如果您发现WAF误拦截了正常的业务流量,建议您通过Web入侵防护白名单功能,对受影响的URL配置白名单策略,具体操作,请参见设置Web入侵防护白名单

查看规则更新通知

对于互联网披露的已知漏洞和未披露的0day漏洞,WAF将及时完成防护规则的更新并发布规则更新通知。您可以在产品信息页面,查询WAF发布的规则更新通知。具体操作,请参见查看产品信息

说明

Web攻击往往存在不止一种概念证明方法(Proof of Concept,简称PoC),阿里云安全专家会对漏洞原理进行深度分析,从而确保发布的Web防护规则覆盖已公开和未公开的各种漏洞利用方式。