CVE-2023-28709:
Apache Tomcat - Fix for CVE-2023-24998 was incomplete
7.5
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.48561%
CWE
Published
7/6/2023
Updated
4/24/2024
KEV Status
No
Technology
Java
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
org.apache.tomcat.embed:tomcat-embed-core | maven | >= 11.0.0-M2, < 11.0.0-M5 | 11.0.0-M5 |
org.apache.tomcat.embed:tomcat-embed-core | maven | >= 10.1.5, < 10.1.8 | 10.1.8 |
org.apache.tomcat.embed:tomcat-embed-core | maven | >= 9.0.71, < 9.0.74 | 9.0.74 |
org.apache.tomcat:tomcat-coyote | maven | >= 8.5.85, < 8.5.88 | 8.5.88 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stems from an off-by-one error in parameter counting logic. The commit diff shows the fix moved 'parameterCount++' after the limit check and changed the condition to 'parameterCount >= limit'. In the original code, incrementing before checking meant that when exactly maxParameterCount parameters were sent, the count would reach limit+1 only after processing, failing to trigger the protection. This allowed bypassing uploaded parts limits via precisely maxParameterCount query parameters.