已经接入Web应用防火墙进行防护的网站出现访问异常

作者阿里云代理 文章分类 分类:图文教程 阅读次数 已被围观 969

本文介绍了已经接入Web应用防火墙进行防护的网站出现访问异常问题时,如何排查和修复问题。

排查流程

网站接入Web应用防火墙后,如果出现访问异常,您可以按照以下流程排查问题:
  1. 检查是否为源站问题:通过旁路Web应用防火墙,判断是否为源站服务器的响应问题。
  2. 检查是否为WAF误拦截:通过手动关闭防护模块,判断是否为WAF误拦截问题。
  3. 排查常见访问错误:对照常见访问异常错误,分析和排查问题。
说明 如果上述方法都不能帮助您解决问题,您可以提交工单联系阿里云技术工程师。

检查是否为源站问题

您可以参照以下步骤旁路Web应用防火墙,判断源站服务器响应是否有问题:
  1. 禁用源站上的安全组、黑白名单、防火墙、安全狗、云锁等应用,防止WAF回源IP被拉入黑名单。
  2. 修改本地计算机的hosts文件,将问题域名的解析指向对应的ECS实例、SLB实例、服务器公网IP(即在WAF上填写的源站IP地址)。
  3. 通过本地计算机的浏览器访问问题域名,查看访问请求不经过Web应用防火墙时,是否能复现问题。
    • 如果问题复现,说明可能是源站服务器的响应异常,建议您及时检查源站服务器的工作状态(例如进程、CPU、内存、Web日志等)是否有异常并修复异常。
    • 如果问题没有复现,说明不是源站服务器的响应异常。

检查是否为WAF误拦截

您可以参照以下步骤关闭WAF的拦截功能,判断是否是WAF误拦截:
  1. 为域名关闭正则防护引擎,查看问题是否仍然存在。

    如果问题消失,建议您将正则防护引擎防护规则组设置为宽松规则组(默认为中等规则组),或者您可以通过日志服务分析有问题的URL,并添加一条自定义防护策略,放行访问该URL的请求。

  2. 如果关闭正则防护引擎后问题仍然存在,您可以为域名关闭CC安全防护,查看问题是否仍然存在。

    如果问题消失,建议您将CC安全防护的模式设置为防护(如果本来就是防护模式,请忽略),或者您可以通过日志服务分析有问题的URL,并添加一条自定义防护策略,放行访问该URL的请求。

    如果关闭CC安全防护后问题仍然存在,说明不是WAF误拦截。

排查常见访问错误

如果发现不经过Web应用防火墙问题会消失,而接入Web应用防火墙后,问题稳定复现,您可以按照以下方式进行排查。

问题 现象 原因 解决方案
405访问阻断 出现405阻断页面或者HTTP返回码为405。 请求被自定义防护策略或者正则防护引擎阻断。
  1. 为域名关闭自定义防护策略,查看是否还有405页面。

    如果不再出现,说明您所配置的自定义防护规则误拦截了请求,需要您找到对应规则并将其删除。

  2. 如果关闭自定义防护策略开关后问题仍然存在,您可以为域名关闭正则防护引擎,查看问题是否仍然存在。

    如果问题消失,建议您将正则防护引擎防护规则组设置为宽松规则组(默认为中等规则组),或者您可以通过日志服务分析有问题的URL,并添加一条自定义防护策略,放行访问该URL的请求。

302连接重置 某些IP在访问网站时显示连接被重置,HTTP返回码为302,且在请求头获得Set-Cookie。 IP访问触发了CC防御规则。 为域名关闭CC安全防护,查看问题是否仍然存在。

如果关闭防护后访问恢复正常,说明是CC防护规则误拦截,建议您将CC安全防护的模式设置为防护(如果本来就是防护模式,请忽略),或者您可以通过日志服务分析有问题的URL,并添加一条自定义防护策略,放行访问该URL的请求。

HTTPS访问异常 客户端的HTTPS请求返回证书为www.notexist.com Web应用防火墙需要浏览器支持SNI,而客户端的浏览器可能不支持SNI。 一般苹果系统默认支持SNI,而Windows、Android系统需要做SNI兼容。
502访问白屏 网站显示白屏,同时HTTP返回码为502。 当源站(指ECS、SLB或服务器)出现丢包或者不可达的时候,Web应用防火墙会返回白屏。
  1. 检查源站是否有黑名单、iptables、防火墙、安全狗、云锁等安全软件或策略。如果有,停用或卸载相关服务并清空黑名单,查看问题是否消失。
  2. 绕过WAF测试访问,检查是否正常。如果仍然无法正常访问,可检查源站的进程、CPU、内存、Web日志等是否有异常。
域名ping不通 域名ping不通,且收到短信提示,WAF受DDoS攻击,进入了黑洞。 DDoS流量攻击不在Web应用防火墙的防护范围内。 开通DDoS防护服务,抵御DDoS攻击。
服务器负载不均 后端多台服务器负载不均。 Web防火墙使用四层IP哈希。因此,当DDoS高防串联Web应用防火墙或SLB使用四层转发时,ECS可能出现负载不均。 Web应用防火墙和ECS直接使用SLB负载均衡,即使用7层转发,并打开cookie会话保持或负载均衡。
微信或支付宝回调失败 微信或支付宝回调失败。 可能是高频访问被CC防护规则拦截,或者使用了HTTPS方式回调,且微信和支付宝不支持SNI。
  • CC安全防护问题:
    1. 为域名关闭CC安全防护,查看问题是否仍然存在。
    2. 如果关闭防护后恢复正常,说明是CC防护规则误拦截,建议您将CC安全防护的模式设置为防护(如果本来就是防护模式,请忽略),或者您可以通过日志服务分析有问题的URL,并添加一条自定义防护策略,放行访问该URL的请求。
  • SNI问题:设置让微信或支付宝直接调用ECS或者SLB IP,不要经过Web应用防火墙。

如果您有其他问题,可以联系汉中创云互联阿里云代理商,为您提供一对一专业全面的技术服务,同时新老阿里云会员,均可享受我公司代理商价格,欢迎咨询欢迎咨询.gif

本公司销售:阿里云、腾讯云、百度云、天翼云、金山大米云、金山企业云盘!可签订合同,开具发票。

我有话说: