Skip to main content

body-parser CVE-2026-12590

| EUVDEUVD-2026-42577 MEDIUM
Allocation of Resources Without Limits or Throttling (CWE-770)
2026-07-09 openjs GHSA-v422-hmwv-36x6
5.9
CVSS 3.1 · NVD
Share

Severity by source

Vendor (openjs) PRIMARY
LOW
qualitative
NVD
5.9 MEDIUM
AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
vuln.today AI
3.7 LOW

AC:H reflects the required misconfiguration precondition (invalid limit value); A:L captures bounded DoS impact; no confidentiality or integrity impact applies.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
SUSE
MEDIUM
qualitative
Red Hat
5.9 MEDIUM
qualitative

Primary rating from Vendor (openjs).

CVSS VectorNVD

Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Lifecycle Timeline

4
Severity Changed
Jul 10, 2026 - 02:52 NVD
LOW MEDIUM
CVSS changed
Jul 10, 2026 - 02:52 NVD
3.7 (LOW) 5.9 (MEDIUM)
Patch available
Jul 09, 2026 - 12:16 EUVD
Analysis Generated
Jul 09, 2026 - 12:11 vuln.today

DescriptionNVD

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.

AnalysisAI

Denial of service in body-parser npm middleware allows unauthenticated remote attackers to submit arbitrarily large HTTP request bodies when the package is misconfigured with an invalid limit option value. Affected versions span both the 1.x line (prior to 1.20.6) and 2.x line (prior to 2.3.0). The silent misconfiguration failure bypasses all payload size enforcement, enabling an attacker to exhaust server memory and CPU through oversized request flooding - though exploitation requires the specific precondition of an invalid limit setting, reflected accurately in the low CVSS score of 3.7. No public exploit or CISA KEV listing exists at time of analysis.

Technical ContextAI

body-parser is a Node.js HTTP request body parsing middleware, foundational to Express.js applications and among the most downloaded npm packages globally. The CPE cpe:2.3:a:body-parser:body-parser:*:*:*:*:*:*:*:* covers all versions in both the 1.x and 2.x release branches. The root cause is CWE-770 (Allocation of Resources Without Limits or Throttling): the internal bytes.parse() function silently returns null when given an unparseable string or NaN as input. Rather than throwing or applying a safe default, the middleware interprets the null return as 'no limit configured' and skips the body size enforcement check entirely. This is a fail-open design defect - invalid configuration degrades security silently instead of failing loudly at startup.

RemediationAI

Upgrade body-parser to version 1.20.6 (for 1.x consumers) or 2.3.0 (for 2.x consumers), as confirmed by the OpenJS Foundation advisory at https://github.com/expressjs/body-parser/security/advisories/GHSA-v422-hmwv-36x6. After the fix, invalid limit values throw a clear error at parser construction time, allowing deployment pipelines to catch misconfiguration before requests are served. If an immediate upgrade is not possible, the advised workaround is to validate the limit value at application startup - parse the value explicitly (e.g., using the bytes library) and terminate or refuse to start if the result is null or a non-finite number. This validation should be treated as defense-in-depth regardless of patching, since the underlying risk is configuration hygiene. Additionally, configuring an upstream reverse proxy (nginx, Caddy, AWS ALB) or load balancer with an independent request body size limit provides a compensating control that remains effective even if body-parser's limit is silently bypassed.

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise High Performance Computing 15 SP7 Affected
SUSE Linux Enterprise Micro 5.3 Affected
SUSE Linux Enterprise Micro 5.3 Affected
SUSE Linux Enterprise Micro 5.4 Affected

Share

CVE-2026-12590 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy