防护配置常见问题

更新时间:
复制为 MD 格式

本文列举了Web应用防火墙(Web Application Firewall,简称WAF)3.0版本防护配置过程中,可能遇见的问题和解决方案。

WAF控制台无法找到指定的防护规则ID原因?

当无法在WAF控制台找到指定规则ID时,请根据规则类型,逐条进行检查:

内置Web核心防护规则查找

  1. 登录Web应用防火墙3.0控制台。在顶部菜单栏,选择WAF实例的资源组和地域(中国内地非中国内地

  2. 在左侧导航栏,选择防护配置 > Web 核心防护 > Web 核心防护规则

  3. 定位并展开目标防护模板,单击操作列的引擎配置image

  4. 在弹出的引擎配置页面进行搜索。image

自定义规则查找

针对Web 核心防护下的其他防护模块(如自定义规则CC防护扫描防护等),其自定义规则的查找步骤如下:

  1. 在左侧导航栏,选择防护配置 > Web 核心防护

  2. 在下图位置进行搜索。image

白名单规则查找

  1. 在左侧导航栏,选择防护配置 > 白名单

  2. 在下图位置进行搜索。image

Bot管理规则查找

Web防护内置规则

  1. 在左侧导航栏,选择防护配置 > BOT管理 > Web防护

  2. 在下图位置进行搜索。image

App防护内置规则

  1. 在左侧导航栏,选择防护配置 > BOT管理 > App防护

  2. 在下图位置进行搜索。image

高级自定义规则

  1. 在左侧导航栏,选择防护配置 > BOT管理 > 高级自定义规则

  2. 在下图位置进行搜索。image

防护规则被删除

如果规则在上述位置都找不到,可能原因是规则被删除,可以使用操作审计,查询是否有事件名称为DeleteDefenseRuleDeleteDefenseTemplate的事件,具体步骤,请参见通过操作审计控制台查询事件

WAF日志中acl_action:block是否实际阻断请求?

acl_action:block不能直接说明请求被阻断,如果acl_testtrue,表示观察模式,即仅记录日志,不触发拦截等防护动作。请求是否被实际阻断需要查询final_action字段,final_action:block才表示阻断。

配置自定义规则匹配字段Body Parameter后为何不生效?

可能原因是填写的匹配内容长度过短,使用Body Parameter字段时请确保匹配内容长度大于四个字符,否则流量无法被检测。image

如何让某个域名的请求不经过CC防护检测?

如果您需要让某个域名的请求不经过CC防护检测,您可以参考以下任意方案进行配置。

通过创建白名单规则

  1. (可选)将不需要经过CC防护检测的域名添加为防护对象。具体操作,请参见手动添加防护对象。只有ALB实例中的域名需要执行该操作。

  2. 创建白名单规则。白名单规则的不检测模块CC防护,规则模板的生效对象为不需要经过CC防护检测的域名。具体操作,请参见白名单

完成以上配置后,被添加到白名单规则中的域名的请求不经过CC防护检测。

通过创建CC防护规则

域名不属于ALB实例

  1. 创建CC防护规则。规则模板的生效对象为不需要经过CC防护检测的域名。具体操作,请参见设置CC防护规则防御CC攻击

  2. 关闭该CC防护规则的模板开关

完成以上配置后,被添加到已关闭CC防护规则中的域名的请求不经过CC防护检测。

域名属于ALB实例

  1. ALB实例中的所有域名添加为防护对象。具体操作,请参见手动添加防护对象

  2. 创建两个CC防护规则。具体操作,请参见设置CC防护规则防御CC攻击

    防护规则配置要求如下:

    • 防护规则A:根据业务需要配置防护模式正常模式严格模式生效对象ALB实例中需要经过CC防护检测的域名。

    • 防护规则B:生效对象为不需要经过CC防护检测的域名和ALB实例。

  3. 开启CC防护规则A模板开关,关闭CC防护规则B模板开关

完成以上配置后,已添加到防护规则A的域名的请求经过CC防护检测,已添加到防护规则B的域名的请求不经过CC防护检测。

为什么URL匹配字段包含双斜杠(//)的自定义防护策略规则不会生效?

由于WAF的规则引擎在处理URL匹配字段时会进行标准化处理,默认将连续的正斜杠(/)进行压缩,因此无法正确匹配包含双斜杠(//)URL的自定义防护策略规则。

如果您需要对包含双斜杠(//)的URL设置ACL访问控制,您可以直接设置该URL对应的单斜杠路径作为匹配条件。例如,如果需要将//api/sms/request作为URL匹配字段的条件值,您只需在匹配内容中填写/api/sms/request,WAF即可针对包含该内容的请求进行访问控制。

如何通过请求 ID(Request ID)排查 WAF 拦截原因?

当请求被 WAF拦截时,系统将在响应中返回唯一的请求 ID(Request ID)。请利用该 ID 在安全报表或日志中检索详细信息,以定位拦截原因。

  1. 获取请求 ID:请求被拦截后,拦截页面将默认显示请求 ID。请复制该 ID 以供后续查询使用。image

  2. 进入 WAF 控制台查询:登录Web应用防火墙3.0控制台,在左侧导航栏,选择检测响应 > 安全报表。设定查询时间范围,在“请输入traceid”搜索框中粘贴请求 ID 进行检索。

    说明

    若防护对象已开启日志投递功能,也可在检测响应 > 日志服务 页面进行查询。

  3. 分析拦截原因:在安全报表页面下方,查看该请求命中的防护模块命中规则。若确认该请求为正常业务流量,请在日志列表操作列单击误报屏蔽,将其加入白名单。更多信息,请参见白名单

按量付费版WAF如何关闭API安全功能?

对于按量付费版WAF实例,若不再需要使用API安全功能,请按以下步骤进行关闭。

  1. 登录Web应用防火墙3.0控制台。在顶部菜单栏,选择WAF实例的资源组和地域(中国内地非中国内地

  2. 在左侧导航栏,选择防护配置 > API安全

  3. 进入策略配置 > 生效对象配置页签。

  4. 关闭所有防护对象与防护对象组的基础检测开关,操作完成后,API安全相关的历史数据将被清除且无法查看。

阿里云 WAF 是否默认注入 CORS 响应头或动态回显 Origin 请求头?

WAF 不会更改请求的 CORS 头,也没有相关配置项用于自动注入 CORS 响应头或动态回显 Origin。CORS 策略应由源站服务器或应用程序自行配置和管理。

WAF 返回 413 Request Entity Too Large 错误的原因是什么?

原因:上传的文件大小超过了 WAF 设定的单次请求大小限制(当前限制为 2 GB)。

处理方法

  • 调整上传文件的大小,确保单次请求低于 2 GB。

  • 升级WAF至旗舰版,支持最大10GB文件,具体信息,请参见控制上传文件大小

收到WAF 拦截告警是否意味着业务受到了影响?

收到 WAF 拦截告警表明安全防护机制正在生效,并不直接意味着业务受损。但在特定场景下,需排查是否存在误拦截或防护失效风险。

告警含义

WAF 拦截告警表示系统已成功识别并阻断命中安全规则的恶意请求。此类请求在到达源站前已被清洗,不会消耗源站资源或造成实际攻击伤害,属于防护机制正常工作的表现。

需介入排查的场景

  1. 误报:若合法用户访问(如后台登录、API 调用)被拦截,说明规则配置过严导致误伤。此时业务可用性已受影响,需调整防护规则或将相关特征加入白名单。

  2. 大规模 CC 攻击:遭遇高频 CC 攻击时,尽管 WAF 执行了拦截,但仍可能存在漏拦情况。此外,攻击流量过大可能触发黑洞机制,导致 WAF 服务不可用。具体防御策略请参见设置CC防护规则防御CC攻击

WAF 默认防护策略为何不拦截 .py/.sh 等脚本文件上传?

WAF 默认防护策略主要针对高频 Web 攻击(如 SQL 注入、XSS)及常见 WebShell(JSP、PHP、ASP)。

.py.sh.cmd.bat 等脚本文件扩展名在合法业务中常被用于后台任务或批处理。为避免误拦截正常业务请求,默认策略未将此类扩展名纳入全局拦截范围。

若需拦截,建议通过自定义规则,匹配上传接口路径及文件名后缀进行精准管控。

如何配置仅拦截境外 IP 但放行特定搜索引擎爬虫?

可以通过组合配置实现:

  1. 开启设置区域封禁规则封禁特定区域请求功能,选择拦截所有中国境外区域。

  2. 创建白名单匹配条件设置为 User-Agent 包含特定爬虫标识(如 Googlebot、bingbot),不检测模块区域封禁

前缀匹配与正则匹配有什么区别?如何选择?

  1. 匹配能力:前缀匹配属于简单模式,仅支持固定字符串的匹配;正则匹配属于高级规则,支持复杂的模式匹配。

  2. 性能表现:前缀匹配执行效率高;正则匹配由于底层引擎的复杂性,在使用按量付费版时消耗的费用略高。

  3. 规则调优建议:若当前规则未按预期拦截,需检查是否因匹配方式不当导致。例如,对于 URI 路径,可尝试使用包含多值之一正则匹配来替代单一的前缀/后缀匹配,以提高命中率。在使用正则匹配时,务必注意正则表达式的写法规范,避免复杂的嵌套。

配置白名单后是否立即生效?是否需要等待封禁时间结束?

添加白名单规则后即时生效,无需等待原有的封禁时间结束。

若配置后仍被拦截,请检查以下内容:

  • 模板和规则开关是否已开启。

  • 生效对象设置是否正确。

  • 匹配条件是否配置准确。

  • 确认 WAF 前是否存在 CDN、高防等七层代理。若存在,需在接入资产时正确配置WAF前是否有七层代理(高防/CDN等)选项,否则将导致 WAF 无法获取真实的客户端 IP。

WAF 指纹规则(JA3/JA4/HTTP2)的匹配原理是什么?为何非 IP 维度也能命中?

指纹规则是基于客户端浏览器或工具的特征生成的哈希值进行匹配,而非基于 IP 地址。具体包括:

  1. JA3 指纹:对 TLS 握手关键参数(版本、密码套件等)进行 MD5 哈希生成。

  2. JA4 指纹:引入更多算法(浏览器版本、OS 等)以减少重复性。

  3. HTTP/2 指纹:根据 HTTP/2 客户端原始指纹利用 MD5 算法生成。

只要请求带有匹配的指纹特征,无论 IP 归属地如何,均会触发规则。