CVE-2026-114100: Coraza request body inspection bypass in Content-Type parsing

CVE-2026-114100 · Severity: medium · CVSS 5.8 · Published 2026-10-21

Coraza is a web application firewall that inspects HTTP requests to block attacks. Versions 3.0.4 through 3.8.0 fail to parse form request bodies when the Content-Type header includes media-type parameters like charset, allowing attackers to hide malicious form data from Coraza's security rules while the backend application still processes the payload. An attacker can exploit this by adding "; charset=UTF-8" to ordinary form requests to bypass custom Coraza rules designed to block injection attacks or enforce business logic.

Technologies: Coraza, github.com/corazawaf/coraza (Go), github.com/corazawaf/coraza/v2 (Go), github.com/corazawaf/coraza/v3 (Go). Vendors: Coraza, Go.

Quick answers

Is CVE-2026-114100 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-114100 being exploited in the wild.
How severe is CVE-2026-114100?
Medium severity, with a CVSS score of 5.8, published 21 October 2026.
Which products and versions are affected?
Coraza 3.0.4 before 3.8.1; github.com/corazawaf/coraza (Go) SEMVER:introduced=0; github.com/corazawaf/coraza/v2 (Go) SEMVER:introduced=0; github.com/corazawaf/coraza/v3 (Go) SEMVER:introduced=3.0.4,fixed=3.8.1.
Is there a fix for CVE-2026-114100?
Yes. github.com/corazawaf/coraza/v3 (Go): upgrade to 3.8.1 or later. Until then: Enable OWASP CRS rule 901340, use the ctl:forceRequestBodyVariable=On directive to force body variable population, or explicitly configure a request-body processor to mitigate this bypass path. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-114100 attacked?
It is attacked over the network.
Am I affected by CVE-2026-114100?
Check whether you run Coraza, github.com/corazawaf/coraza (Go), github.com/corazawaf/coraza/v2 (Go) or one of the others listed at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • github.com/corazawaf/coraza/v3 (Go): upgrade to 3.8.1 or later
    go get github.com/corazawaf/coraza/v3@v3.8.1

Enable OWASP CRS rule 901340, use the ctl:forceRequestBodyVariable=On directive to force body variable population, or explicitly configure a request-body processor to mitigate this bypass path.

Technical details

The vulnerability is a parser differential in request-body processor selection: Coraza's Transaction.AddRequestHeader performs exact string matching on the full Content-Type header value, failing to recognize "application/x-www-form-urlencoded; charset=UTF-8" as URL-encoded because of the media-type parameter. The empty processor is treated as success and body inspection is skipped, leaving ARGS_POST, REQUEST_BODY, and ARGS_NAMES variables unpopulated. Unauthenticated network attackers can trigger this with a simple header modification; the fix was released in version 3.8.1.

Affected products

  • Coraza Coraza 3.0.4 before 3.8.1

Identifiers

  • CVE-2026-114100
  • GHSA-w253-m66g-rx24
  • GO-2026-6698

Timeline

  • 2026-10-02: disclosed
  • 2026-10-21: advisory

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.