Google Cloud Armor preconfigured WAF rules are complex web application firewall (WAF) rules with dozens of signatures that are compiled from open source industry standards. Each signature corresponds to an attack detection rule in the ruleset. Google offers these rules as is. The rules let Cloud Armor evaluate dozens of distinct traffic signatures by referring to conveniently named rules rather than requiring you to define each signature manually.
Cloud Armor preconfigured WAF rules can be tuned to best suit your needs. For more information about how to tune the rules, see Tune Cloud Armor preconfigured WAF rules.
The following table lists the preconfigured preconfigured WAF rules available for use in a Cloud Armor security policy. These rules are based on the OWASP ModSecurity Core Rule Set (CRS), such as OWASP Core Rule Set 4.22 . We recommend using version 4.22 for the most up-to-date protection against modern threats. While support for CRS 3.3 and 3.0 is ongoing, we recommend avoiding older versions, especially CRS version 3.0, whenever your workloads allow for version 4.22.
CRS 4.22
| Cloud Armor rule name | OWASP rule name | Current status |
|---|---|---|
| SQL injection | sqli-v422-stable |
In sync with sqli-v422-canary |
sqli-v422-canary |
Latest | |
| Cross-site scripting | xss-v422-stable |
In sync with xss-v422-canary |
xss-v422-canary |
Latest | |
| Local file inclusion | lfi-v422-stable |
In sync with lfi-v422-canary |
lfi-v422-canary |
Latest | |
| Remote file inclusion | rfi-v422-stable |
In sync with rfi-v422-canary |
rfi-v422-canary |
Latest | |
| Remote code execution | rce-v422-stable |
In sync with rce-v422-canary |
rce-v422-canary |
Latest | |
| Method enforcement | methodenforcement-v422-stable |
In sync with methodenforcement-v422-canary |
methodenforcement-v422-canary |
Latest | |
| Scanner detection | scannerdetection-v422-stable |
In sync with scannerdetection-v422-canary |
scannerdetection-v422-canary |
Latest | |
| Protocol attack | protocolattack-v422-stable |
In sync with protocolattack-v422-canary |
protocolattack-v422-canary |
Latest | |
| PHP injection attack | php-v422-stable |
In sync with php-v422-canary |
php-v422-canary |
Latest | |
| Session fixation attack | sessionfixation-v422-stable |
In sync with sessionfixation-v422-canary |
sessionfixation-v422-canary |
Latest | |
| Java attack | java-v422-stable |
In sync with java-v422-canary |
java-v422-canary |
Latest | |
| Generic attack | generic-v422-stable |
In sync with generic-v422-canary |
generic-v422-canary |
Latest |
CRS 3.3
| Cloud Armor rule name | OWASP rule name | Current status |
|---|---|---|
| SQL injection | sqli-v33-stable |
In sync with sqli-v33-canary |
sqli-v33-canary |
Latest | |
| Cross-site scripting | xss-v33-stable |
In sync with xss-v33-canary |
xss-v33-canary |
Latest | |
| Local file inclusion | lfi-v33-stable |
In sync with lfi-v33-canary |
lfi-v33-canary |
Latest | |
| Remote file inclusion | rfi-v33-stable |
In sync with rfi-v33-canary |
rfi-v33-canary |
Latest | |
| Remote code execution | rce-v33-stable |
In sync with rce-v33-canary |
rce-v33-canary |
Latest | |
| Method enforcement | methodenforcement-v33-stable |
In sync with methodenforcement-v33-canary |
methodenforcement-v33-canary |
Latest | |
| Scanner detection | scannerdetection-v33-stable |
In sync with scannerdetection-v33-canary |
scannerdetection-v33-canary |
Latest | |
| Protocol attack | protocolattack-v33-stable |
In sync with protocolattack-v33-canary |
protocolattack-v33-canary |
Latest | |
| PHP injection attack | php-v33-stable |
In sync with php-v33-canary |
php-v33-canary |
Latest | |
| Session fixation attack | sessionfixation-v33-stable |
In sync with sessionfixation-v33-canary |
sessionfixation-v33-canary |
Latest | |
| Java attack | java-v33-stable |
In sync with java-v33-canary |
java-v33-canary |
Latest | |
| NodeJS attack | nodejs-v33-stable |
In sync with nodejs-v33-canary |
nodejs-v33-canary |
Latest |
CRS 3.0
| Cloud Armor rule name | OWASP rule name | Current status |
|---|---|---|
| SQL injection | sqli-stable |
In sync with sqli-canary |
sqli-canary |
Latest | |
| Cross-site scripting | xss-stable |
In sync with xss-canary |
xss-canary |
Latest | |
| Local file inclusion | lfi-stable |
In sync with lfi-canary |
lfi-canary |
Latest | |
| Remote file inclusion | rfi-stable |
In sync with rfi-canary |
rfi-canary |
Latest | |
| Remote code execution | rce-stable |
In sync with rce-canary |
rce-canary |
Latest | |
| Method enforcement | methodenforcement-stable |
In sync with methodenforcement-canary |
methodenforcement-canary |
Latest | |
| Scanner detection | scannerdetection-stable |
In sync with scannerdetection-canary |
scannerdetection-canary |
Latest | |
| Protocol attack | protocolattack-stable |
In sync with protocolattack-canary |
protocolattack-canary |
Latest | |
| PHP injection attack | php-stable |
In sync with php-canary |
php-canary |
Latest | |
| Session fixation attack | sessionfixation-stable |
In sync with sessionfixation-canary |
sessionfixation-canary |
Latest | |
| Java attack | Not included |
|
| NodeJS attack | Not included |
In addition, the following cve-canary rules are available to all
Cloud Armor customers to help detect and optionally block the
following vulnerabilities:
CVE-2021-44228andCVE-2021-45046Log4j RCE vulnerabilities942550-sqliJSON-formatted content vulnerabilitygoogle-mrs-v202512-id000001-rceandgoogle-mrs-v202512-id000002-rceReact RCE vulnerabilities
| Cloud Armor rule name | Covered vulnerability types |
|---|---|
cve-canary |
Log4j and React RCE vulnerabilities |
json-sqli-canary |
JSON-based SQL injection bypass vulnerability |
Best practices
To optimize your use of preconfigured WAF rules, consider the following best practices:
- Tuning and sensitivity: start with sensitivity level 1 in preview mode to understand how rules affect your application. For more information, see Choose your preconfigured WAF rule sensitivity level.
- Request body inspection limit: configure the inspection limit based on your needs. Cloud Armor preconfigured WAF rules can inspect up to 64 kB of the request body. For more information, see Update inspection limit for preconfigured WAF rules.
- Canary and stable rulesets: maintain canary rulesets in preview mode with a higher priority, and keep stable rulesets in enforced mode with a lower priority. This approach lets you validate rule changes before they affect your production traffic.
For a complete list of recommendations, see Cloud Armor best practices.
Preconfigured OWASP rules
Each preconfigured WAF rule has a sensitivity level that corresponds to a OWASP CRS paranoia level. A lower sensitivity level indicates a higher confidence signature, which is less likely to generate a false positive. A higher sensitivity level increases security, but also increases the risk of generating a false positive. By default, Cloud Armor runs at sensitivity level 4 and evaluates all signatures in a rule set once enabled.
SQL injection (SQLi)
The following table provides the signature ID, sensitivity level, and description of each supported signature in the SQLi preconfigured WAF rule.