Help Center/ Web Application Firewall/ User Guide/ Configuring Protection Policies/ Configuring CC Attack Protection Rules to Defend Against CC Attacks
Updated on 2024-11-05 GMT+08:00

Configuring CC Attack Protection Rules to Defend Against CC Attacks

CC attack protection can limit the access to a protected website based on a single IP address, cookie, or referer. Beyond that, CC attack protection can also limit access rate based on policies, domain names, and URLs to precisely mitigate CC attacks. In policy-based rate limiting, the number of requests for all domain names in the same policy are counted for triggering the rule. In domain-based rate limiting, the total number of requests for each domain name is counted separately for triggering the rule. In URL-based rate limiting, the number of requests for each URL is counted separately for triggering the rule. To use this protection, ensure that you have toggled on CC Attack Protection ().

A reference table can be added to a CC attack protection rule. The reference table takes effect for all protected domain names.

If you have enabled enterprise projects, ensure that you have all operation permissions for the project where your WAF instance locates. Then, you can select the project from the Enterprise Project drop-down list and configure protection policies for the domain names in the project.

Prerequisites

A website has been added to WAF.

Constraints

  • If you set Logic to Include any value, Exclude any value, Equal to any value, Not equal to any value, Prefix is any value, Prefix is not any of them, Suffix is any value, or Suffix is not any of them, select an existing reference table. For details, see Creating a Reference Table to Configure Protection Metrics in Batches.
  • It takes several minutes for a new rule to take effect. After the rule takes effect, protection events triggered by the rule will be displayed on the Events page.

Configuring a CC Attack Protection Rule

  1. Log in to the management console.
  2. Click in the upper left corner of the management console and select a region or project.
  3. Click in the upper left corner of the page and choose Security > Web Application Firewall.
  4. In the navigation pane on the left, choose Policies.
  5. Click the name of the target policy to go to the protection configuration page.
  6. Click the CC Attack Protection configuration area and toggle it on or off if needed.

    • : enabled.
    • : disabled.

  7. In the upper left corner above the CC Attack Protection rule list, click Add Rule.
  8. In the displayed dialog box, configure a CC attack protection rule by referring to Table 1.

    Figure 1 Adding a CC attack protection rule
    Table 1 Rule parameters

    Parameter

    Description

    Example Value

    Rule Name

    Name of the rule

    waftest

    Rule Description

    A brief description of the rule. This parameter is optional.

    --

    Rate Limit Mode

    • Source: Requests from a specific source are limited. For example, if traffic from an IP address (or user) exceeds the rate limit you configure in this rule, WAF limits traffic rate of the IP address (or user) in the way you configure.
      • Per IP address: A website visitor is identified by the IP address.
      • Per user: A website visitor is identified by the key value of Cookie or Header.
      • Other: A website visitor is identified by the Referer field (user-defined request source).
      NOTE:

      If you set Rate Limit Mode to Other, set Content of Referer to a complete URL containing the domain name. The Content field supports prefix match and exact match only, but cannot contain two or more consecutive slashes, for example, ///admin. If you enter ///admin, WAF will convert it to /admin.

      For example, if you do not want visitors to access www.test.com, set Referer to http://www.test.com.

    • Destination: If this parameter is selected, the following rate limit types are available:
      • By rule: If this rule is used by multiple domain names, requests for all these domain names are counted for this rule no matter what IP addresses these requests originate from. If you have added a wildcard domain name to WAF, requests for all domain names matched the wildcard domain name are counted for triggering this rule no matter what IP addresses these requests originate from.
      • By domain name: Requests for each domain name are counted separately. If the number exceeds the threshold you configure, the protective action is triggered no matter what IP addresses these requests originate from.
      • By URL: Requests for each URL are counted separately. If the number exceeds the threshold you configure, the protective action is triggered no matter what IP addresses these requests originate from.

    --

    User Identifier

    This parameter is mandatory when you select Source and Per user for Rate Limit Mode.

    • Cookie: A cookie field name. You need to configure an attribute variable name in the cookie that can uniquely identify a web visitor based on your website requirements. This field does not support regular expressions. Only complete matches are supported.

      For example, if a website uses the name field in the cookie to uniquely identify a web visitor, enter name.

    • Header: Set the user-defined HTTP header you want to protect. You need to configure the HTTP header that can identify web visitors based on your website requirements.

    name

    Request Aggregation

    This parameter is not required when you select Destination and By rule for Rate Limit Mode.

    This function is disabled by default. Keep this function enabled so that requests to all domain names that match a protected wildcard domain are counted for triggering this rule. For example, if you added *.a.com to WAF, requests to all matched domain names such as b.a.com and c.a.com are counted.

    --

    Trigger

    Click Add and add conditions. At least one condition is required, but up to 30 conditions are allowed. If you add more than one condition, the rule will only take effect when all conditions are met.

    • Field
    • Subfield: Configure this field only when IPv4, Cookie, Header, or Params is selected for Field.
      NOTICE:

      A subfield cannot exceed 2,048 bytes.

    • Logic: Select a logical relationship from the drop-down list.
      NOTE:

      If you set Logic to Include any value, Exclude any value, Equal to any value, Not equal to any value, Prefix is any value, Prefix is not any of them, Suffix is any value, or Suffix is not any of them, select an existing reference table. For details, see Creating a Reference Table to Configure Protection Metrics in Batches.

    • Content: Enter or select the content that matches the condition.

    Path Include /admin

    Rate Limit

    The number of requests allowed from a website visitor in the rate limit period. If the number of requests exceeds the rate limit, WAF takes the action you configure for Protective Action.

    10 requests allowed in 60 seconds

    Protective Action

    The action that WAF will take if the number of requests exceeds Rate Limit you configured. The options are as follows:

    • Verification code: WAF allows requests that trigger the rule as long as your website visitors complete the required verification.
    • Block: WAF blocks requests that trigger the rule.
    • Block dynamically: WAF blocks requests that trigger the rule based on Allowable Frequency, which you configure after the first rate limit period is over.
    • Log only: WAF only logs requests that trigger the rule.

    Block

    Allowable Frequency

    This parameter can be set if you select Block dynamically for Protective Action.

    WAF blocks requests that trigger the rule based on Rate Limit first. Then, in the following rate limit period, WAF blocks requests that trigger the rule based on Allowable Frequency you configure.

    Allowable Frequency cannot be larger than Rate Limit.

    NOTE:

    If you set Allowable Frequency to 0, WAF blocks all requests that trigger the rule in the next rate limit period.

    8 requests allowed in 60 seconds

    Block Duration

    Period of time for which to block the item when you set Protective Action to Block.

    600 seconds

    Block Page

    The page displayed if the request limit has been reached. This parameter is configured only when Protective Action is set to Block.

    • If you select Default settings, the default block page is displayed.
    • If you select Custom, a custom error message is displayed.

    Custom

    Block Page Type

    If you select Custom for Block Page, select a type of the block page among options application/json, text/html, and text/xml.

    text/html

    Page Content

    If you select Custom for Block Page, configure the content to be returned.

    Page content styles corresponding to different page types are as follows:

    • text/html: <html><body>Forbidden</body></html>
    • application/json: {"msg": "Forbidden"}
    • text/xml: <?xml version="1.0" encoding="utf-8"?><error> <msg>Forbidden</msg></error>

  9. Click Confirm. You can then view the added CC attack protection rule in the CC rule list.

    • To disable a rule, click Disable in the Operation column of the rule. The default Rule Status is Enabled.
    • To modify a rule, click Modify in the row containing the rule.
    • To delete a rule, click Delete in the row containing the rule.

Protection Effect

If you have configured a CC attack protection rule like Figure 1 (with Protective Action set to Block) for your domain name www.example.com, take the following steps to verify the protection effect:

  1. Clear the browser cache and enter the domain name in the address bar to check whether the website is accessible.

    • If the website is inaccessible, connect the website domain name to WAF by referring to Website Settings.
    • If the website is accessible, go to 2.

  2. Clear the browser cache, enter http://www.example.com/admin in the address bar, and refresh the page 10 times within 60 seconds. In normal cases, the custom block page will be displayed the eleventh time you refresh the page, and the requested page will be accessible when you refresh the page 60 seconds later.

    If you select Verification code for protective action, a verification code is required for visitors to continue the access if they exceed the configured rate limit.

  3. Return to the WAF console. In the navigation pane, click Events. On the displayed page, view the event log.

Configuration Example - Verification Code

If domain name www.example.com has been connected to WAF, perform the following steps to verify that WAF CAPTCHA verification is enabled.

  1. Add a CC attack protection rule with Protection Action set to Verification code.

    Figure 2 Verification code

  2. Enable CC attack protection.

    Figure 3 Enabling CC Attack Protection

  3. Clear the browser cache and access http://www.example.com/admin/.

    If you access the page 10 times within 60 seconds, a verification code is required when you attempt to access the page for the eleventh time. You need to enter the verification code to continue the access.

  4. Go to the WAF console. In the navigation pane on the left, choose Events. View the event on the Events page.