---
id: CVE-2026-114099
title: Coraza 3.0.0 before 3.8.1 WAF Bypass via JSON Key Collision
summary: >-
  Coraza from 3.0.0 before 3.8.1 has a JSON body processor that flattens nested
  properties into dot-separated ARGS_POST names without escaping literal dots,
  so distinct properties collide. Unauthenticated attackers can add a later
  dotted p…
severity: medium
cvss: 5.8
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:L/A:N'
cvssSource: cna
cwe:
  - CWE-20
vendor: corazawaf
product: coraza
affected:
  - coraza >= 3.0.0 < 3.8.1
ssvc:
  exploitation: poc
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-10-28T15:59:23.724758Z'
exploitAvailable: true
published: '2026-10-21'
updated: '2026-10-28'
sourceUpdated: '2026-10-28T16:12:46.044Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-114099'
references:
  - url: >-
      https://github.com/corazawaf/coraza/security/advisories/GHSA-5gj4-9gm7-2fx2
    label: GitHub Security Advisory (GHSA-5gj4-9gm7-2fx2)
  - url: >-
      https://www.vulncheck.com/advisories/coraza-3.0.0-before-3.8.1-waf-bypass-via-json-key-collision
    label: >-
      VulnCheck Advisory: Coraza 3.0.0 before 3.8.1 WAF Bypass via JSON Key
      Collision
  - url: >-
      https://github.com/corazawaf/coraza/commit/52af139cab5ad10c5cb0152a161063b523907bdf
  - url: >-
      https://github.com/corazawaf/coraza/commit/5f577a548aeb9ca836122df4258f93ef6cfab38a
  - url: >-
      https://github.com/corazawaf/coraza/commit/cae3c7407e7b84372c207033de03f15f89bf351a
  - url: 'https://github.com/corazawaf/coraza'
  - url: 'https://github.com/corazawaf/coraza/releases/tag/v3.8.1'
tags:
  - cve.org
  - exploit-available
  - osv
  - go
epss: 0.00293
epssPercentile: 0.22069
aliases:
  - GHSA-5gj4-9gm7-2fx2
  - GO-2026-6692
ecosystem: go
patched:
  - github.com/corazawaf/coraza/v3 3.8.1
ingestedAt: '2026-10-21T01:37:08.016Z'
---

## Overview

Coraza from 3.0.0 before 3.8.1 has a JSON body processor that flattens nested properties into dot-separated ARGS_POST names without escaping literal dots, so distinct properties collide. Unauthenticated attackers can add a later dotted property such as account.role that overwrites a malicious nested value, hiding SQL injection payloads from OWASP CRS rules while backends still receive them.

## Affected

- `coraza >= 3.0.0 < 3.8.1`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.

## Package advisory (CVE-2026-114099)

Affected packages:

- `github.com/corazawaf/coraza/v3 >= 3.0.0, < 3.8.1`

Patched in:

- `github.com/corazawaf/coraza/v3 3.8.1`

Source: https://osv.dev/vulnerability/GHSA-5gj4-9gm7-2fx2
