华为云WAF CC攻击防护规则配置完全指南:从入门到实战

apphuang2026年07月07日 20:03:177

1. CC攻击概述与WAF防护原理

CC攻击全称为Challenge Collapsar,是一种针对Web服务器或应用程序的资源耗尽型攻击。攻击者利用标准的GET、POST请求,向那些涉及数据库操作或消耗系统资源的URI发起大量看似正常的协议数据包,持续占用服务器计算资源与连接数,最终导致服务器无法响应正常用户的访问请求。与DDoS攻击不同,CC攻击的流量包本身是符合HTTP协议规范的,因此传统的网络层防火墙难以有效识别和拦截。

华为云Web应用防火墙(WAF)的CC攻击防护功能,通过对满足限速条件的源端(IP、Cookie、Header、Referer)和目的端(策略、域名、URL)进行访问频率限制,精准识别并有效缓解CC攻击。当某个访问者在规定时间内的请求次数超过预设阈值时,WAF将按照配置的防护动作(如阻断、人机验证等)对该请求进行处置,从而保护后端服务器免受流量冲击。

需要特别注意的是,网站接入WAF后,CC攻击防护默认并不生效。这意味着管理员必须手动配置CC防护规则并开启防护开关,WAF才能根据规则进行CC攻击检测与拦截。

需要先登录华为云控制台,点击:华为云控制台,还没有账号,点击:注册并关联,已有账号点击:登录后关联

2. 配置CC防护规则的前置条件

在开始配置CC攻击防护规则之前,需要确保满足以下前置条件:

2.1 网站已成功接入WAF

防护网站必须已经添加到WAF防护体系中。无论是云模式-CNAME接入、云模式-ELB接入还是独享模式接入,都需要先完成域名解析和流量转发配置,确保WAF能够正常检测并转发业务流量。

2.2 独享引擎版本要求

如果使用独享WAF模式,需要确保独享引擎已升级到最新版本。具体的升级操作可参考华为云官方文档中关于升级独享引擎实例的说明。

2.3 权限要求

操作人员需要具备WAF的管理权限。华为云WAF提供了多种权限角色,包括WAF Administrator(管理员权限)、WAF FullAccess(所有权限)和WAF ReadOnlyAccess(只读权限)。配置CC防护规则需要至少具备WAF FullAccess或WAF Administrator权限。

3. 控制台配置CC防护规则的详细步骤

以下是通过华为云管理控制台配置CC攻击防护规则的完整操作流程:

3.1 进入WAF控制台

登录华为云管理控制台后,在页面左上角单击服务列表图标,选择“安全”分类下的“Web应用防火墙 WAF”。进入WAF控制台后,在左上角选择对应的区域或项目。如果已开通企业项目,还可以通过“按企业项目筛选”下拉框选择特定企业项目下的数据。

3.2 进入防护策略配置页面

在WAF控制台左侧导航栏中,单击“防护策略”,进入防护策略列表页面。在策略列表中,找到目标域名所绑定的防护策略,单击策略名称进入防护规则的详细配置页面。

另外,也可以通过“网站设置”页面快速进入:在网站列表中,单击目标域名“防护策略”列中“已开启防护项”后面的数字,同样可以跳转到该域名绑定的防护策略规则配置页面。

3.3 开启CC攻击防护开关

在防护规则配置页面中,找到“CC攻击防护”配置区域,确认CC攻击防护功能已处于开启状态。如果开关处于关闭状态,需要先将其开启,WAF才能根据后续配置的规则进行CC攻击检测。

3.4 添加CC防护规则

在“CC攻击防护”规则配置列表的左上方,单击“添加规则”按钮。此时会弹出“添加CC防护规则”的配置面板,需要根据业务需求填写各项参数。

4. CC防护规则核心参数深度解读

CC防护规则的配置涉及多个核心参数,每个参数的选择与取值都直接影响防护效果和业务可用性。以下对各项参数进行详细解读:

4.1 限速模式

限速模式决定了WAF以何种维度来区分和统计单个Web访问者。华为云WAF支持以下三种限速模式:

  • IP限速:根据访问者的源IP地址来区分单个Web访问者。这是最基础的限速模式,适用于WAF与访问者之间没有代理设备的场景。在大规模CC攻击中,单台傀儡机发包的速率往往远超过正常用户的请求频率,直接对请求源IP设置限速规则是最有效的办法。
  • 用户限速:根据Cookie键值或HTTP Header来区分单个Web访问者。这种模式适用于需要通过用户身份标识(如Session ID、用户Token等)来区分访问者的场景。当多个用户共享同一个出口IP(如企业内网、移动运营商NAT)时,IP限速可能会误伤正常用户,此时用户限速是更好的选择。选择Cookie限速时,需要指定Cookie中的某个字段名作为用户标识;选择Header限速时,需要指定自定义的HTTP首部作为用户标识。
  • 其他(Referer限速):根据Referer字段来区分单个Web访问者。Referer字段记录了请求的来源页面,适用于需要限制特定来源访问频率的场景。选择此模式时,“内容”需要填写为包含域名的完整URL链接,仅支持前缀匹配和精准匹配。

4.2 限速条件

限速条件用于配置防护规则要匹配的请求特征。请求一旦命中这些特征,WAF就会按照配置的规则对该请求进行处置。配置限速条件时需要注意以下几点:

  • 至少需要配置一项条件,规则才能生效。
  • 配置多个条件时,所有条件需同时满足,规则才会生效。
  • 最多可添加30个条件。
  • 条件字段支持多种类型,包括URL、IP、Cookie、Header、Params、Method、Response Code、Response Length等。详细的字段说明可参考华为云官方文档中的条件字段说明。
  • 当逻辑关系选择“包含任意一个”、“不包含任意一个”、“等于任意一个”等操作时,需要选择引用表来进行批量配置。引用表功能仅云模式专业版和企业版支持,标准版不支持此功能。

4.3 限速频率与限速周期

限速频率和限速周期共同定义了访问频率的上限。例如,“限速频率”设置为10次,“限速周期”设置为60秒,表示在60秒内最多允许10次访问请求。一旦在60秒内访问请求超过10次,WAF就会触发防护动作。

限速频率的取值范围为1至2147483647次,限速周期的取值范围为1至3600秒。实际配置时,需要根据业务正常访问量来合理设置阈值——设置过小可能导致正常用户被误拦截,设置过大则可能无法有效防御攻击。

4.4 防护动作

当访问频率超过限速阈值时,WAF会执行配置的防护动作。华为云WAF支持以下防护动作:

  • 阻断:直接拦截触发规则的请求,返回拦截页面。可以选择返回默认的拦截页面,也可以自定义拦截页面的内容和类型。阻断时长可设置,取值范围为0至65535秒。
  • 人机验证:阻断后要求用户输入正确的验证码,验证通过后才能恢复正常访问。此动作不适用于Referer限速模式。
  • 仅记录:不阻断请求,仅在防护事件中记录日志。适用于规则调试验证阶段,帮助观察规则是否会产生误报。

4.5 放行频率

放行频率是当防护动作为“动态阻断”类型时才需要配置的参数。当触发限速后,在阻断期间内如果访问频率降低到放行频率以下,WAF可以提前解除阻断状态,恢复正常访问。放行频率的取值范围为0至2147483647次。

5. 标准模式与高级模式

华为云WAF的CC防护规则支持标准模式和高级模式两种工作模式:

5.1 标准模式

标准模式只支持对域名的防护路径做限制。在标准模式下,需要指定具体的防护URL路径,WAF仅对该路径下的请求进行频率统计和限速。标准模式配置相对简单,适用于需要对特定URL(如登录页面、API接口)进行精细化频率控制的场景。

5.2 高级模式

高级模式支持对路径、IP、Cookie、Header、Params等多个字段进行综合限速。在高级模式下,可以通过conditions参数配置复杂的匹配条件,实现更灵活、更精细化的防护策略。目前华为云WAF主要推荐使用高级模式进行CC防护规则配置。

6. 高级特性与进阶配置

6.1 域名聚合统计

域名聚合统计开启后,泛域名对应的所有子域名的请求次数会合并限速,不区分访问IP。例如,配置的泛域名为“*.a.com”,那么所有子域名(如b.a.com、c.a.com等)的请求将被一起聚合统计。此功能通过API中的domain_aggregation参数控制。

6.2 全局计数

全局计数仅云模式支持配置。默认情况下,WAF按每个节点单独计数。开启全局计数后,本区域所有WAF节点将合并计数。此功能通过API中的region_aggregation参数控制。在分布式部署场景下,开启全局计数可以避免攻击者通过分散访问不同WAF节点来绕过频率限制。

6.3 策略限速

当多个域名共用一个防护策略时,可以开启策略限速。开启后,该策略下对应的所有域名请求次数合并限速,不区分访问IP。策略限速适用于需要统一管理多个域名访问频率的场景。

7. 通过API方式配置CC防护规则

除了通过控制台进行配置外,华为云WAF还提供了完整的API接口,支持通过编程方式创建、更新和删除CC防护规则。以下介绍如何使用API进行CC防护规则的配置。

7.1 API调用基础信息

创建CC防护规则的API端点为:

POST /v1/{project_id}/waf/policy/{policy_id}/cc

其中,project_id为项目ID,可以从控制台“我的凭证”中获取;policy_id为防护策略ID,可以通过调用查询防护策略列表接口获取。

更新CC防护规则的API端点为:

PUT /v1/{project_id}/waf/policy/{policy_id}/cc/{rule_id}

其中rule_id为CC规则的ID,可以通过调用ListCcRules API获取。

7.2 请求参数详解

创建CC防护规则的核心请求参数包括:

  • name:规则名称,可选。
  • mode:工作模式,0为标准模式,1为高级模式。
  • url:需要防护的域名路径,标准模式下必填。
  • conditions:限速条件列表,高级模式下必填。
  • action:防护动作配置。
  • tag_type:限速模式,可选值包括ip(IP限速)、cookie(用户限速-基于Cookie)、header(用户限速-基于Header)、other(Referer限速)、policy(策略限速)、domain(域名限速)、url(URL限速)。
  • tag_index:用户标识,当限速模式为cookie或header时必填。
  • tag_condition:用户标识,当限速模式为other时必填。
  • limit_num:限制频率,单位为次。
  • limit_period:限速周期,单位为秒。
  • unlock_num:放行频率,仅动态阻断类型需要。
  • lock_time:阻断时间,单位为秒。
  • domain_aggregation:是否开启域名聚合统计。
  • region_aggregation:是否开启全局计数。

7.3 Python代码示例

以下是通过Python调用华为云WAF API创建CC防护规则的完整示例:

import requests
import json

# 配置信息
project_id = "your_project_id"
policy_id = "your_policy_id"
url = f"https://waf.cn-north-4.myhuaweicloud.com/v1/{project_id}/waf/policy/{policy_id}/cc"

# IAM认证信息(需先获取Token)
headers = {
    "X-Auth-Token": "your_iam_token",
    "Content-Type": "application/json;charset=utf8"
}

# 创建IP限速规则:60秒内超过100次则阻断10分钟
payload = {
    "name": "api-rate-limit-rule",
    "mode": 1,  # 高级模式
    "tag_type": "ip",  # IP限速
    "limit_num": 100,
    "limit_period": 60,
    "lock_time": 600,  # 阻断600秒
    "action": {
        "category": "block"  # 阻断
    },
    "conditions": [
        {
            "category": "url",
            "logic_operation": "contain",
            "contents": ["/api/"]
        }
    ]
}

response = requests.post(url, headers=headers, json=payload)
print(json.dumps(response.json(), indent=2, ensure_ascii=False))

7.4 cURL命令示例

以下是使用cURL命令创建CC防护规则的示例:

curl -X POST \
  'https://waf.cn-north-4.myhuaweicloud.com/v1/{project_id}/waf/policy/{policy_id}/cc' \
  -H 'X-Auth-Token: {your_iam_token}' \
  -H 'Content-Type: application/json;charset=utf8' \
  -d '{
    "name": "login-protect-rule",
    "mode": 1,
    "tag_type": "cookie",
    "tag_index": "sessionid",
    "limit_num": 20,
    "limit_period": 60,
    "lock_time": 300,
    "action": {
        "category": "captcha"
    },
    "conditions": [
        {
            "category": "url",
            "logic_operation": "prefix",
            "contents": ["/login"]
        }
    ]
}'

8. 典型场景防护策略建议

8.1 大流量高频CC攻击场景

在大规模CC攻击中,单台傀儡机发包速率远超正常用户。建议直接使用IP限速模式进行防护。一个典型的配置建议是:当一个IP在30秒内访问当前域名下任意路径的次数超过1000次,则封禁该IP的请求10个小时。此规则可作为一般中小型站点的预防性配置。

对于防护效果的验证,可以通过模拟测试来确认:持续在30秒内访问目标域名1000次,正常情况下第1001次访问应返回自定义的拦截页面;10小时后刷新页面,应恢复正常访问。

8.2 登录接口防暴力破解

登录接口是CC攻击和暴力破解的高发目标。建议针对登录路径配置精细化的限速规则:

  • 使用URL前缀匹配,将防护路径设置为“/login”或“/api/login”。
  • 限速模式建议使用Cookie限速(基于Session ID)或IP限速,根据业务架构选择。
  • 限速频率建议设置较低阈值,如60秒内不超过10-20次。
  • 防护动作建议使用“人机验证”,既能有效防御自动化攻击,又不会完全阻断合法用户的访问尝试。

8.3 API接口防刷场景

对于提供公开API接口的服务,需要防止恶意调用者过度消耗API配额。建议配置如下:

  • 针对API路径前缀(如“/api/v1/”)配置独立的CC防护规则。
  • 限速模式建议使用IP限速或API Key限速(通过Header传递)。
  • 限速频率根据API的正常调用量设定,通常可以设置为每分钟100-500次。
  • 防护动作建议使用“阻断”并设置合理的阻断时长。

8.4 请求特征异常场景

很多CC攻击请求是攻击者随意构造的,往往具有畸形或不合理的报文特征。常见的异常特征包括:

  • User-Agent包含Python等自动化工具特征。
  • User-Agent格式明显错乱,如“Mozilla///”。
  • User-Agent明显不合理,如域名本身作为UA。

对于这类场景,可以通过WAF的精准访问防护规则来拦截包含特定畸形特征的请求。例如,可以配置规则拦截User-Agent中包含“Mozilla///”的请求。

9. 误报处理与规则调优

9.1 识别误报

当业务正常请求被WAF误拦截时,可能导致网站访问异常。管理员需要定期查看“防护事件”页面,检查是否有正常请求被误拦截。

9.2 处理误报

在确认某防护事件为误报后,可以针对该事件进行误报处理。具体的处理方式包括:

  • 将该请求添加至白名单。
  • 关闭或删除对应的防护规则。
  • 调整规则的阈值或条件,使其不再误拦正常请求。

处理误报事件后,WAF将不再拦截该事件,“防护事件”页面中将不再显示该攻击事件,管理员也不会收到该攻击事件的告警通知。

9.3 规则调优建议

  • 新规则建议先设置为“仅记录”模式,观察一段时间确认不会产生大量误报后再切换为“阻断”或“人机验证”。
  • 限速频率的设置应基于业务流量分析,参考历史正常访问量的峰值和平均值。
  • 对于不确定的参数取值,可以采用逐步收紧的策略,从较宽松的阈值开始,根据实际防护效果逐步调整。
  • 规则生效需要等待几分钟,修改规则后不要立即判断效果,应给予足够的生效时间。

10. 配置注意事项与常见误区

10.1 引用表功能限制

引用表功能仅云模式专业版和企业版支持,云模式标准版不支持此功能。如果使用的是标准版套餐,在配置条件时需要注意避免使用需要引用表的逻辑关系。

10.2 方法字段限制

当条件字段配置为“Method”时,“内容”不支持配置为“TRACE”和“CONNECT”,否则会导致解析报错。

10.3 Referer配置注意事项

选择Referer限速模式时,“内容”里不能含有连续的多条斜线配置(如“///admin”),WAF引擎会将“///”自动转为“/”。

10.4 路径匹配规则

URL路径匹配支持前缀匹配和完全匹配两种方式:

  • 前缀匹配:以“*”结尾代表以该路径为前缀。例如,需要防护的路径为“/admin/test.php”或“/adminabc”,则路径可以填写为“/admin*”。
  • 完全匹配:需要防护的路径需要与此处填写的路径完全相等。如果防护路径为“/admin”,规则必须填写为“/admin”。

11. 总结

华为云WAF的CC攻击防护功能为网站和API服务提供了强大的频率控制能力。通过合理配置限速模式、限速条件、限速频率和防护动作,可以有效防御各类CC攻击,保护后端业务系统的稳定运行。本文系统介绍了从控制台配置到API调用的完整方法,并结合典型场景给出了具体的防护策略建议。在实际运维中,建议管理员持续关注防护事件的日志数据,根据业务变化动态调整规则参数,在安全防护与业务可用性之间找到最佳平衡点。

常见问题问答

问1:CC防护规则配置后多久生效?
答:添加或修改CC防护规则后,规则通常需要等待几分钟才能完全生效。规则生效后,可以在“防护事件”页面查询到相关的防护日志。

问2:限速频率和放行频率有什么区别?
答:限速频率是触发防护动作的阈值,当访问量超过此阈值时WAF执行防护动作。放行频率是在动态阻断场景下,当访问量降低到此阈值以下时提前解除阻断的参数。简单来说,限速频率是“触发线”,放行频率是“恢复线”。

问3:标准模式和高级模式应该如何选择?
答:标准模式仅支持对域名路径进行限速,配置简单。高级模式支持对IP、Cookie、Header、Params等多维度进行综合限速,更加灵活。如果只需要对特定URL进行频率控制,标准模式即可满足;如果需要基于用户身份、来源IP等多种条件组合限速,应选择高级模式。

问4:IP限速和用户限速各适用于什么场景?
答:IP限速适用于WAF与访问者之间无代理设备的场景,实现简单直接。用户限速适用于多个用户共享同一出口IP的场景(如企业内网、移动NAT),通过Cookie或Header中的用户标识来区分不同用户,避免误伤。

问5:如何判断CC防护规则是否产生了误报?
答:可以通过查看“防护事件”页面的防护日志来判断。如果发现正常业务请求被拦截,且该请求不具备攻击特征,则可能是误报。此时可以对该事件进行误报处理,将请求添加至白名单或调整规则参数。

问6:配置CC防护规则时有哪些常见的错误?
答:常见错误包括:限速阈值设置过低导致正常用户被误拦;未开启CC防护开关导致规则不生效;在标准模式下未配置url参数;使用引用表功能但套餐版本不支持;Method条件字段配置了TRACE或CONNECT导致解析报错;Referer配置中包含连续斜线。

相关文章

华为云服务器购买怎么便宜?小公司省钱攻略来了!这样买立省好几千​

华为云服务器购买怎么便宜?小公司省钱攻略来了!这样买立省好几千​

很多朋友都在吐槽:“华为云服务器太贵了,预算有限实在买不起!” 其实,买华为云服务器贵不贵,关键看你会不会选、会不会买。今天就来给大家分享一套超实用的省钱攻略,小公司、创业团队也能轻松用得起稳定又安全…

华为云服务器采购总嫌贵?30%华为云返点返佣 + 旗舰级代理保障,这波省钱操作别错过!

华为云服务器采购总嫌贵?30%华为云返点返佣 + 旗舰级代理保障,这波省钱操作别错过!

最近不少做 IT 运维或企业采购的朋友跟我吐槽,公司要上华为云服务器,去官网一看报价直接犯了难 —— 按年付费算下来,比预期预算高出不少。要是赶上业务扩张需要多台服务器,这笔开支更是让财务部门直皱眉。…

2026华为云返点返佣政策深度解析:头部代理返佣优势与企业合作指南

2026华为云返点返佣政策深度解析:头部代理返佣优势与企业合作指南

上海汪远信息科技有限所在公司年销华为云产品3亿+,属于头部代理梯队,可为合作客户提供最高30%的返佣优惠,直接帮助企业降低30%的云资源成本。…

华为云代理商有哪些?华为云代理返点是真的么?

华为云代理商有哪些?华为云代理返点是真的么?

一,华为云代理商简介华为云代理商,顾名思义就是替华为云做华为云服务器数据库等公有云产品推广的代理商,每推广出一单华为云服务器,华为云会跟这个代理商结算佣金,佣金比例分为月度佣金,季度佣金和年度佣金,华…

2026华为云返点返佣政策深度解析:头部代理返佣优势与企业合作指南

2026华为云返点返佣政策深度解析:头部代理返佣优势与企业合作指南

一、华为云代理商的核心价值定位1. 代理商的角色与职责华为云代理商作为华为云生态的核心合作伙伴,承担着三重核心职能:•产品推广销售:负责推广销售华为云全系列云产品,包括云服务器ECS、云数据…

上海汪远信息:年销1.5亿+的头部华为云代理商,10年深耕为企业上云保驾护航

上海汪远信息:年销1.5亿+的头部华为云代理商,10年深耕为企业上云保驾护航

核心摘要本文深度解析华为云代理商行业现状,揭示小代理商生存困境的核心原因(业绩压力大、垫资周期长、资金链脆弱),重点推荐上海汪远信息科技有限公司——一家拥有10年华为云代理经验、年销量超1.5亿的全国…