V3: Coraza: Unbounded recursion in JSON response body processor causes CPU exhaustion
Description
Coraza v3 contains a vulnerability in its JSON response body processor where there is no recursion limit enforced when parsing JSON responses. This leads to unbounded recursion and CPU exhaustion when processing deeply nested JSON responses. The request path enforces a recursion limit, but the response path does not, causing quadratic CPU usage growth with nesting depth. This can result in significant CPU consumption and denial of service when ResponseBodyAccess is enabled and JSON responses contain deeply nested structures.
CVSS v3.1
Score 5.9medium
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The JSON response body processor in Coraza v3 calls readJSON with a recursion limit constant set to -1, effectively disabling recursion limits on response bodies. The recursion guard in readItems only triggers when the recursion count reaches zero, but since the response path counts down from -1, it never triggers. This allows deeply nested JSON responses to be parsed with unbounded recursion, causing CPU exhaustion due to quadratic complexity in the nesting depth. The request path correctly enforces a recursion limit (default 1024), but the response path discards the recursion limit parameter and uses a constant that disables the guard. Testing shows that processing a 512 KiB JSON response with about 87,000 nesting levels takes approximately 12 seconds of CPU time on a single core.
Potential Impact
An attacker can cause high CPU usage and potential denial of service by sending deeply nested JSON responses to a Coraza v3 instance with ResponseBodyAccess enabled. This vulnerability does not affect confidentiality or integrity but impacts availability by exhausting CPU resources. It requires that the backend returns JSON responses and that the WAF is configured to inspect response bodies. There are no known exploits in the wild.
Mitigation Recommendations
A patch is available for this vulnerability. Users should upgrade to a fixed version of Coraza v3 that enforces recursion limits on JSON response body processing. Until patched, disabling ResponseBodyAccess or avoiding inspection of JSON response bodies can mitigate the risk. The vendor advisory confirms a fix is available; apply the official update.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- GHSA-3c6w-j9xm-8h2h
- Osv Schema Version
- 1.4.0
- Ecosystems
- ["Go"]
- Database Specific Severity
- MODERATE
- Cvss Version
- 3.1
Threat ID: 6ac80fb92cdf04f65639c2ad
Added to database: 10/08/2026, 21:48:41 UTC
Last enriched: 10/08/2026, 22:11:32 UTC
Last updated: 10/08/2026, 22:11:32 UTC
Views: 2
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.