Skip to content

WAF features

Last updated on

This document details the core features and configurations available within the STACKIT Web Application Firewall (WAF).

The following table outlines which STACKIT WAF features are currently available and which are still being developed:

To use a STACKIT WAF it is necessary to have a STACKIT Content Delivery Network (CDN) in place as a base. It is tightly bundled with a CDN as it also works on the edge. Therefore, it is highly recommended to make use of STACKIT CDN features.

Before you can configure WAF properties, you must enable the WAF by setting the mode to ENABLED or LOG_ONLY. If the WAF is not enabled, most properties are not populated.

The operating mode determines how the WAF handles incoming traffic.

You can enable the Web Application Firewall (WAF) as an additional service within your CDN distribution. For detailed pricing information, see Billing and costs.

  • BASIC: Provides standard WAF features and basic rule sets.
  • PREMIUM: Unlocks additional premium-only rules and the ability to create custom rules (custom rules are planned for future release).

The paranoia level defines how aggressively the WAF actions requests. Higher levels are more effective at catching attacks but increase the chance of blocking legitimate traffic (false positives).

Available levels range from least strict to most strict:

  • L1 (Lowest chance of false positives)
  • L2
  • L3
  • L4 (Highest chance of false positives)

Whitelists restrict which requests the distribution accepts. The WAF blocks non-whitelisted requests before they reach the origin.

  • Allowed HTTP methods: Restricts accepted HTTP methods (e.g., GET, POST, PUT).
  • Allowed HTTP versions: Restricts the accepted HTTP protocol versions.
  • Allowed request content types: Restricts the accepted Content-Type headers in request bodies (e.g., application/json, multipart/form-data). Formats must be type/subtype without spaces.

You control rule behavior using nine properties divided into three specificity groups: collections, rule groups, and rules.

The rule levels, from broadest to most specific, are:

  1. Collections: Broad categories of rules. Currently, the available collections are @builtin/crs/response (response rules) and @builtin/crs/request (request rules).
  2. Rule groups: Sub-categories within collections. Call the ListWafCollections operation to view available rule groups.
  3. Rules: Individual, specific rules.

The precedence of these levels dictates how overlapping configurations are resolved. The order of precedence is (from highest to lowest):

  1. Rule
  2. Rule group
  3. Collection

This means that a more specific setting always overrides a broader one. For example, disabling a collection but activating a specific rule within it will deactivate every rule in that collection except for the explicitly activated one.

Use the following properties to enable, disable, or log rules at each hierarchy level:

These rules focus on detecting security tools and scanners.

The rules in this table target specific attacks on the HTTP protocol, such as HTTP request smuggling and response splitting.

These rules detect attempts to include files that are local to the web server and should not be accessible to users.

These rules detect attempts to include remote resources in the web application that may be executed.

Rule group: 934 - Application Attack GENERIC

Section titled “Rule group: 934 - Application Attack GENERIC”

Rule group: 942 - Application Attack SQL Injection

Section titled “Rule group: 942 - Application Attack SQL Injection”

This table lists rules that protect against SQL injection (SQLi) attacks.

Rule group: 943 - Application Attack Session Fixation

Section titled “Rule group: 943 - Application Attack Session Fixation”

These rules protect against session fixation attacks.


The following log fields are added to the CDN Logs only when an enabled or logged rule is triggered:

The costs for the Web Application Firewall (WAF) depend on your selected security tier and the total volume of incoming requests. For exact pricing, see the STACKIT pricing list.

The standard WAF tier is included in your distribution and provides basic rule sets.

  • Request allowance: Free to use up to x requests.
  • Overage billing: Exceeding the free request limit incurs charges based on predefined request buckets.

The Premium WAF unlocks advanced capabilities and premium rule sets.

  • Base fee: A fixed recurring charge to enable the Premium tier.
  • Request billing: In addition to the base fee, all requests processed by the Premium WAF are billed per request.

WAF log fields are integrated into your existing CDN Logs at no additional cost, regardless of your active WAF tier.