Skip to content

Update dependency body-parser to v1.20.6 [SECURITY] - #28

Open
renovate[bot] wants to merge 1 commit into
masterfrom
renovate/npm-body-parser-vulnerability
Open

Update dependency body-parser to v1.20.6 [SECURITY]#28
renovate[bot] wants to merge 1 commit into
masterfrom
renovate/npm-body-parser-vulnerability

Conversation

@renovate

@renovate renovate Bot commented Sep 15, 2024

Copy link
Copy Markdown

This PR contains the following updates:

Package Change Age Confidence
body-parser 1.19.11.20.6 age confidence

body-parser vulnerable to denial of service when url encoding is enabled

CVE-2024-45590 / GHSA-qwcr-r2fm-qrc7

More information

Details

Impact

body-parser <1.20.3 is vulnerable to denial of service when url encoding is enabled. A malicious actor using a specially crafted payload could flood the server with a large number of requests, resulting in denial of service.

Patches

this issue is patched in 1.20.3

References

Severity

  • CVSS Score: 8.7 / 10 (High)
  • Vector String: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

References

This data is provided by the GitHub Advisory Database (CC-BY 4.0).


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

CVE-2026-12590 / GHSA-v422-hmwv-36x6

More information

Details

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 body-parser@2.3.0 and body-parser@1.20.6 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

Severity

  • CVSS Score: 3.7 / 10 (Low)
  • Vector String: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L

References

This data is provided by the GitHub Advisory Database (CC-BY 4.0).


Release Notes

expressjs/body-parser (body-parser)

v1.20.6

Compare Source

What's Changed

Full Changelog: expressjs/body-parser@1.20.5...1.20.6

v1.20.5

Compare Source

What's Changed

The reason for this release is a fix to the extended urlencoded parser returning objects instead of arrays for large array inputs (> 100) on qs@​6.14.2+. (#​716)

New Contributors

Special thanks to triager @​krzysdz for keeping this on our radar and effectively triaging the specific issue!

Full Changelog: expressjs/body-parser@1.20.4...1.20.5

v1.20.4

Compare Source

===================

  • deps: qs@~6.14.0
  • deps: use tilde notation for dependencies
  • deps: http-errors@~2.0.1
  • deps: raw-body@~2.5.3

v1.20.3

Compare Source

===================

  • deps: qs@​6.13.0
  • add depth option to customize the depth level in the parser
  • IMPORTANT: The default depth level for parsing URL-encoded data is now 32 (previously was Infinity)

v1.20.2

Compare Source

===================

  • Fix strict json error message on Node.js 19+
  • deps: content-type@~1.0.5
    • perf: skip value escaping when unnecessary
  • deps: raw-body@​2.5.2

v1.20.1

Compare Source

===================

  • deps: qs@​6.11.0
  • perf: remove unnecessary object clone

v1.20.0

Compare Source

===================

  • Fix error message for json parse whitespace in strict
  • Fix internal error when inflated body exceeds limit
  • Prevent loss of async hooks context
  • Prevent hanging when request already read
  • deps: depd@​2.0.0
    • Replace internal eval usage with Function constructor
    • Use instance methods on process to check for listeners
  • deps: http-errors@​2.0.0
    • deps: depd@​2.0.0
    • deps: statuses@​2.0.1
  • deps: on-finished@​2.4.1
  • deps: qs@​6.10.3
  • deps: raw-body@​2.5.1
    • deps: http-errors@​2.0.0

v1.19.2

Compare Source

===================

  • deps: bytes@​3.1.2
  • deps: qs@​6.9.7
    • Fix handling of __proto__ keys
  • deps: raw-body@​2.4.3
    • deps: bytes@​3.1.2

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate
renovate Bot force-pushed the renovate/npm-body-parser-vulnerability branch from db066f3 to 96e1e67 Compare December 2, 2024 09:35
@renovate renovate Bot changed the title Update dependency body-parser to v1.20.3 [SECURITY] Update dependency body-parser to v1.20.3 [SECURITY] - autoclosed Dec 8, 2024
@renovate renovate Bot closed this Dec 8, 2024
@renovate
renovate Bot deleted the renovate/npm-body-parser-vulnerability branch December 8, 2024 18:20
@renovate renovate Bot changed the title Update dependency body-parser to v1.20.3 [SECURITY] - autoclosed Update dependency body-parser to v1.20.3 [SECURITY] Dec 8, 2024
@renovate renovate Bot reopened this Dec 8, 2024
@renovate
renovate Bot force-pushed the renovate/npm-body-parser-vulnerability branch 2 times, most recently from 96e1e67 to f29e260 Compare December 9, 2024 02:51
@renovate
renovate Bot force-pushed the renovate/npm-body-parser-vulnerability branch from f29e260 to 3962464 Compare January 23, 2025 20:39
@renovate
renovate Bot force-pushed the renovate/npm-body-parser-vulnerability branch from 3962464 to c6fa60e Compare February 9, 2025 14:50
@renovate
renovate Bot force-pushed the renovate/npm-body-parser-vulnerability branch from c6fa60e to 2ef19b3 Compare March 3, 2025 15:25
@renovate
renovate Bot force-pushed the renovate/npm-body-parser-vulnerability branch from 2ef19b3 to 76048bf Compare March 11, 2025 11:20
@renovate renovate Bot changed the title Update dependency body-parser to v1.20.3 [SECURITY] Update dependency body-parser to v1.20.3 [SECURITY] - autoclosed Mar 27, 2026
@renovate renovate Bot closed this Mar 27, 2026
@renovate renovate Bot changed the title Update dependency body-parser to v1.20.3 [SECURITY] - autoclosed Update dependency body-parser to v1.20.3 [SECURITY] Mar 31, 2026
@renovate renovate Bot reopened this Mar 31, 2026
@renovate
renovate Bot force-pushed the renovate/npm-body-parser-vulnerability branch from 76048bf to 8495090 Compare March 31, 2026 09:58
@renovate
renovate Bot force-pushed the renovate/npm-body-parser-vulnerability branch from 8495090 to 383524e Compare April 8, 2026 19:09
@renovate
renovate Bot force-pushed the renovate/npm-body-parser-vulnerability branch from 383524e to 4409fee Compare April 29, 2026 18:55
@renovate
renovate Bot force-pushed the renovate/npm-body-parser-vulnerability branch 2 times, most recently from 19525ef to 58f63d2 Compare June 1, 2026 21:41
@renovate
renovate Bot force-pushed the renovate/npm-body-parser-vulnerability branch from 58f63d2 to 4395c4a Compare June 11, 2026 18:50
@renovate renovate Bot changed the title Update dependency body-parser to v1.20.3 [SECURITY] Update dependency body-parser to v1.20.6 [SECURITY] Jul 28, 2026
@renovate
renovate Bot force-pushed the renovate/npm-body-parser-vulnerability branch from 4395c4a to 9ff4664 Compare July 28, 2026 07:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants