Every CVE Search/ Get API key

CVE-2026-12590

body-parser vulnerable to denial of service when invalid limit value silently disables size enforcement

3.7 LowFix available

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.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
High
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
None
Availability
Low

Exploit likelihood

0.41%Up 0.2 points since Jul 10, 2026
90%50%10%1%

What each source reports

CVE List Score used 3.7

body-parser vulnerable to denial of service when invalid limit value silently disables size enforcement

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.

Record
CVE-2026-12590
CVSS 3.1
3.7 LowCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-770
Updated
2026-11-02
EUVDEUVD-2026-42577 3.7

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.

Record
EUVD-2026-42577
CVSS 3.1
3.7 LowCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
Updated
2026-11-02
GitHub AdvisoriesGHSA-v422-hmwv-36x6 3.7

body-parser vulnerable to denial of service when invalid limit value silently disables size enforcement

Impact

When body-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.

This issue affects applications that pass a programmatically computed or user-configurable value to the limit option without validating it first.

Patches

This issue is fixed in [email protected] and [email protected] via #698. After the fix, invalid limit values throw a clear error at parser construction time instead of silently disabling enforcement. null and undefined continue to fall back to the default limit (100kb).

Workarounds

Validate limit before passing it to body-parser. For example, parse the value with bytes.parse() at startup and reject any configuration where it returns null or a non-finite number.

References

Record
GHSA-v422-hmwv-36x6
CVSS 3.1
3.7 LowCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-770
Updated
2026-11-02
NVD 3.7

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.

Record
CVE-2026-12590
CVSS 3.1
3.7 LowCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
CVSS 3.1
5.9 MediumCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-770
Updated
2026-11-02
OSV 3.7

body-parser vulnerable to denial of service when invalid limit value silently disables size enforcement

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.

Record
CVE-2026-12590
CVSS 3.1
3.7 LowCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-770
Updated
2026-11-02
OSVDEBIAN-CVE-2026-12590 5.9

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.

Record
DEBIAN-CVE-2026-12590
CVSS 3.1
5.9 MediumCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
Show 13 moreShow less
OSVGHSA-v422-hmwv-36x6 3.7

body-parser vulnerable to denial of service when invalid limit value silently disables size enforcement

Impact

When body-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.

This issue affects applications that pass a programmatically computed or user-configurable value to the limit option without validating it first.

Patches

This issue is fixed in [email protected] and [email protected] via #698. After the fix, invalid limit values throw a clear error at parser construction time instead of silently disabling enforcement. null and undefined continue to fall back to the default limit (100kb).

Workarounds

Validate limit before passing it to body-parser. For example, parse the value with bytes.parse() at startup and reject any configuration where it returns null or a non-finite number.

References

Record
GHSA-v422-hmwv-36x6
CVSS 3.1
3.7 LowCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-770
Updated
2026-11-02
OSVUBUNTU-CVE-2026-12590 3.7

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.

Record
UBUNTU-CVE-2026-12590
CVSS 3.1
3.7 LowCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
CVSS 3.1
5.9 MediumCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVCLSA-2026-1784596302 No score

TuxCare security update for body-parser (1 CVE)

TuxCare rebuilt body-parser to address 1 CVE. Fixed in 1.20.2-tuxcare.2.

Record
CLSA-2026-1784596302
Updated
2026-11-02
OSVCLSA-2026-1787151610 No score

TuxCare security update for body-parser (1 CVE)

TuxCare rebuilt body-parser to address 1 CVE. Fixed in 1.13.3-tuxcare.2.

Record
CLSA-2026-1787151610
Updated
2026-11-02
OSVCLSA-2026-1787151617 No score

TuxCare security update for body-parser (1 CVE)

TuxCare rebuilt body-parser to address 1 CVE. Fixed in 1.8.4-tuxcare.3.

Record
CLSA-2026-1787151617
Updated
2026-11-02
OSVCLSA-2026-1787151664 No score

TuxCare security update for body-parser (1 CVE)

TuxCare rebuilt body-parser to address 1 CVE. Fixed in 1.14.2-tuxcare.3.

Record
CLSA-2026-1787151664
Updated
2026-11-02
OSVCLSA-2026-1787151794 No score

TuxCare security update for body-parser (1 CVE)

TuxCare rebuilt body-parser to address 1 CVE. Fixed in 1.19.0-tuxcare.2.

Record
CLSA-2026-1787151794
Updated
2026-11-02
OSVCLSA-2026-1787256348 No score

TuxCare security update for body-parser (1 CVE)

TuxCare rebuilt body-parser to address 1 CVE. Fixed in 1.20.1-tuxcare.2.

Record
CLSA-2026-1787256348
Updated
2026-11-02
OSVCLSA-2026-1787256578 No score

TuxCare security update for body-parser (1 CVE)

TuxCare rebuilt body-parser to address 1 CVE. Fixed in 1.20.0-tuxcare.2.

Record
CLSA-2026-1787256578
Updated
2026-11-02
OSVCLSA-2026-1790520930 No score

TuxCare security update for body-parser (1 CVE)

TuxCare rebuilt body-parser to address 1 CVE. Fixed in 1.20.3-tuxcare.1.

Record
CLSA-2026-1790520930
Updated
2026-11-02
OSVCLSA-2026-1790541942 No score

TuxCare security update for body-parser (1 CVE)

TuxCare rebuilt body-parser to address 1 CVE. Fixed in 1.20.5-tuxcare.1.

Record
CLSA-2026-1790541942
Updated
2026-11-02
OSVCLSA-2026-1790544295 No score

TuxCare security update for body-parser (1 CVE)

TuxCare rebuilt body-parser to address 1 CVE. Fixed in 1.20.4-tuxcare.1.

Record
CLSA-2026-1790544295
Updated
2026-11-02
OSVCLSA-2026-1792476566 No score

TuxCare security update for body-parser (1 CVE)

TuxCare rebuilt body-parser to address 1 CVE. Fixed in 1.18.2-tuxcare.1.

Record
CLSA-2026-1792476566
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
body-parser
npm
before 1.20.6
1.20.6
body-parser
npm
2.0.0 up to 2.3.0
2.3.0
body-parser
TuxCare:npm
1.20.2-tuxcare.0 up to 1.20.2-tuxcare.2, plus listed versions
1.20.21.20.2-tuxcare.1
1.20.2-tuxcare.2
body-parser
TuxCare:npm
1.13.3-tuxcare.0 up to 1.13.3-tuxcare.2, plus listed versions
1.13.31.13.3-tuxcare.1
1.13.3-tuxcare.2
body-parser
TuxCare:npm
1.8.4-tuxcare.0 up to 1.8.4-tuxcare.3, plus listed versions
1.8.41.8.4-tuxcare.11.8.4-tuxcare.2
1.8.4-tuxcare.3
body-parser
TuxCare:npm
1.14.2-tuxcare.0 up to 1.14.2-tuxcare.3, plus listed versions
1.14.21.14.2-tuxcare.11.14.2-tuxcare.2
1.14.2-tuxcare.3
body-parser
TuxCare:npm
1.19.0-tuxcare.0 up to 1.19.0-tuxcare.2, plus listed versions
1.19.01.19.0-tuxcare.1
1.19.0-tuxcare.2
body-parser
TuxCare:npm
1.20.1-tuxcare.0 up to 1.20.1-tuxcare.2, plus listed versions
1.20.11.20.1-tuxcare.1
1.20.1-tuxcare.2
body-parser
TuxCare:npm
1.20.0-tuxcare.0 up to 1.20.0-tuxcare.2, plus listed versions
1.20.01.20.0-tuxcare.1
1.20.0-tuxcare.2
body-parser
TuxCare:npm
1.20.3-tuxcare.0 up to 1.20.3-tuxcare.1, plus listed versions
1.20.3
1.20.3-tuxcare.1
Show 14 moreShow less
Affected packages
PackageAffectedFixed
body-parser
TuxCare:npm
1.20.5-tuxcare.0 up to 1.20.5-tuxcare.1, plus listed versions
1.20.5
1.20.5-tuxcare.1
body-parser
TuxCare:npm
1.20.4-tuxcare.0 up to 1.20.4-tuxcare.1, plus listed versions
1.20.4
1.20.4-tuxcare.1
body-parser
TuxCare:npm
1.18.2-tuxcare.0 up to 1.18.2-tuxcare.1, plus listed versions
1.18.2
1.18.2-tuxcare.1
node-body-parser
Debian:12
All versions, plus listed versions
1.20.1+~1.19.2-11.20.2+~1.19.5-11.20.3+~1.19.5-11.20.3+~1.19.5-21.20.3+~1.19.5-3
Show 6 moreShow less
2.2.0+~1.19.6-12.2.0+~1.19.6-22.2.0+~1.19.6-32.2.1+~1.19.6-12.2.2+~1.19.6-12.3.0+~1.19.6-1
None known
node-body-parser
Debian:13
All versions, plus listed versions
1.20.3+~1.19.5-32.2.0+~1.19.6-12.2.0+~1.19.6-22.2.0+~1.19.6-32.2.1+~1.19.6-12.2.2+~1.19.6-12.3.0+~1.19.6-1
None known
node-body-parser
Debian:14
before 2.3.0+~1.19.6-1, plus listed versions
1.20.3+~1.19.5-32.2.0+~1.19.6-12.2.0+~1.19.6-22.2.0+~1.19.6-32.2.1+~1.19.6-12.2.2+~1.19.6-1
2.3.0+~1.19.6-1
node-body-parser
Ubuntu:16.04:LTS
All versions, plus listed versions
1.8.1-1
None known
node-body-parser
Ubuntu:18.04:LTS
All versions, plus listed versions
1.8.1-11.8.1-1ubuntu1
None known
node-body-parser
Ubuntu:20.04:LTS
All versions, plus listed versions
1.18.3-21.19.0-2
None known
node-body-parser
Ubuntu:22.04:LTS
All versions, plus listed versions
1.19.0-21.19.0-51.19.1+~1.19.2-11.19.2+~1.19.2-1
None known
node-body-parser
Ubuntu:24.04:LTS
All versions, plus listed versions
1.20.1+~1.19.2-11.20.2+~1.19.5-11.20.2+~1.19.5-1build2
None known
node-body-parser
Ubuntu:25.10
All versions, plus listed versions
1.20.3+~1.19.5-3
None known
node-body-parser
Ubuntu:26.10
All versions, plus listed versions
2.2.2+~1.19.6-12.3.0+~1.19.6-1
None known
node-body-parser
Ubuntu:26.04:LTS
All versions, plus listed versions
1.20.3+~1.19.5-32.2.0+~1.19.6-12.2.2+~1.19.6-1
None known

History

History
RecordedChangedSources
affected, aliases, facts
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2026-12590 is a low vulnerability (CVSS 3.7) in Body-parser, published July 9, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.41%, the 35th percentile. Fixed in body-parser 1.20.6.

References

Show 9 moreShow less
MoveEnter Open