CVE-2026-12590
LowCVSS 3.7Exploitation Probability (EPSS)
Low risk16th percentile - higher than 16% of all known CVEs
Summary
In body-parser versions prior to 1.20.6 (1.x line) and 2.3.0 (2.x line), an invalid limit option value (e.g., unparseable string or NaN) causes bytes.parse to return null, silently skipping the request body size check. Applications relying on limit as their primary safeguard against oversized requests will accept arbitrarily large payloads, leading to excessive memory and CPU usage and denial of service.
Risk Assessment
The organization is vulnerable to DoS attacks where an attacker can send very large requests, causing server overload and potential service disruption.
Recommendation
Immediately update body-parser to version 1.20.6 (for 1.x line) or 2.3.0 (for 2.x line). If an update is not possible, manually validate the limit option value before passing it to body-parser.
Original NVD description (English source)
Impact: In body-parser versions prior to 1.20.6 (1.x line) and 2.3.0 (2.x line), when the parser is configured with an invalid limit option value such as an unparseable string or NaN, bytes.parse returns null and the request body size check is silently skipped. Applications that rely on limit as their primary safeguard against oversized request bodies will accept arbitrarily large payloads, leading to excessive memory and CPU usage and denial of service. Patches: This issue is fixed in body-parser 1.20.6 and 2.3.0. After the fix, invalid limit values throw a clear error at parser construction time instead of silently disabling enforcement, while null and undefined continue to fall back to the default limit of 100kb. Workarounds: Validate the limit value before passing it to body-parser. For example, parse the value at startup and reject any configuration where the result is null or a non-finite number.

