Skip to content

chore(deps): update dependency undici to >=7.24.0 [security]#1394

Open
renovate[bot] wants to merge 1 commit intomainfrom
renovate/npm-undici-vulnerability
Open

chore(deps): update dependency undici to >=7.24.0 [security]#1394
renovate[bot] wants to merge 1 commit intomainfrom
renovate/npm-undici-vulnerability

Conversation

@renovate
Copy link
Copy Markdown
Contributor

@renovate renovate Bot commented Mar 14, 2026

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
undici (source) >=7.18.2>=7.24.0 age adoption passing confidence

Undici has an HTTP Request/Response Smuggling issue

CVE-2026-1525 / GHSA-2mjp-6q6p-2qxm

More information

Details

Impact

Undici allows duplicate HTTP Content-Length headers when they are provided in an array with case-variant names (e.g., Content-Length and content-length). This produces malformed HTTP/1.1 requests with multiple conflicting Content-Length values on the wire.

Who is impacted:

  • Applications using undici.request(), undici.Client, or similar low-level APIs with headers passed as flat arrays
  • Applications that accept user-controlled header names without case-normalization

Potential consequences:

  • Denial of Service: Strict HTTP parsers (proxies, servers) will reject requests with duplicate Content-Length headers (400 Bad Request)
  • HTTP Request Smuggling: In deployments where an intermediary and backend interpret duplicate headers inconsistently (e.g., one uses the first value, the other uses the last), this can enable request smuggling attacks leading to ACL bypass, cache poisoning, or credential hijacking
Patches

Patched in the undici version v7.24.0 and v6.24.0. Users should upgrade to this version or later.

Workarounds

If upgrading is not immediately possible:

  1. Validate header names: Ensure no duplicate Content-Length headers (case-insensitive) are present before passing headers to undici
  2. Use object format: Pass headers as a plain object ({ 'content-length': '123' }) rather than an array, which naturally deduplicates by key
  3. Sanitize user input: If headers originate from user input, normalize header names to lowercase and reject duplicates

Severity

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

References

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


Undici: Malicious WebSocket 64-bit length overflows parser and crashes the client

CVE-2026-1528 / GHSA-f269-vfmq-vjvj

More information

Details

Impact

A server can reply with a WebSocket frame using the 64-bit length form and an extremely large length. undici's ByteParser overflows internal math, ends up in an invalid state, and throws a fatal TypeError that terminates the process.

Patches

Patched in the undici version v7.24.0 and v6.24.0. Users should upgrade to this version or later.

Workarounds

There are no workarounds.

Severity

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

References

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


Undici has CRLF Injection in undici via upgrade option

CVE-2026-1527 / GHSA-4992-7rv2-5pvq

More information

Details

Impact

When an application passes user-controlled input to the upgrade option of client.request(), an attacker can inject CRLF sequences (\r\n) to:

  1. Inject arbitrary HTTP headers
  2. Terminate the HTTP request prematurely and smuggle raw data to non-HTTP services (Redis, Memcached, Elasticsearch)

The vulnerability exists because undici writes the upgrade value directly to the socket without validating for invalid header characters:

// lib/dispatcher/client-h1.js:1121
if (upgrade) {
  header += `connection: upgrade\r\nupgrade: ${upgrade}\r\n`
}
Patches

Patched in the undici version v7.24.0 and v6.24.0. Users should upgrade to this version or later.

Workarounds

Sanitize the upgrade option string before passing to undici:

function sanitizeUpgrade(value) {
  if (/[\r\n]/.test(value)) {
    throw new Error('Invalid upgrade value')
  }
  return value
}

client.request({
  upgrade: sanitizeUpgrade(userInput)
})

Severity

  • CVSS Score: 4.6 / 10 (Medium)
  • Vector String: CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N

References

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


Release Notes

nodejs/undici (undici)

v7.24.0

Compare Source

What's Changed

Full Changelog: nodejs/undici@v7.23.0...v7.24.0

v7.23.0

Compare Source

v7.22.0

Compare Source

What's Changed

New Contributors

Full Changelog: nodejs/undici@v7.21.0...v7.22.0

v7.21.0

Compare Source

What's Changed

New Contributors

Full Changelog: nodejs/undici@v7.20.0...v7.21.0

v7.20.0

Compare Source

What's Changed

New Contributors

Full Changelog: nodejs/undici@v7.19.2...v7.20.0

v7.19.2

Compare Source

What's Changed

New Contributors

Full Changelog: nodejs/undici@v7.19.1...v7.19.2

v7.19.1

Compare Source

What's Changed

New Contributors

Full Changelog: nodejs/undici@v7.19.0...v7.19.1

v7.19.0

Compare Source

What's Changed

New Contributors

Full Changelog: nodejs/undici@v7.18.2...v7.19.0


Configuration

📅 Schedule: (in timezone Asia/Tokyo)

  • Branch creation
    • ""
  • 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 added the renovate label Mar 14, 2026
@renovate renovate Bot requested a review from a team as a code owner March 14, 2026 01:50
@renovate renovate Bot requested review from chihiro-adachi and shabaraba and removed request for a team March 14, 2026 01:50
@renovate renovate Bot added the renovate label Mar 14, 2026
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.0 [security] chore(deps): update dependency undici to >=7.24.2 [security] Mar 14, 2026
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch 2 times, most recently from 5202aaf to 1dc240d Compare March 14, 2026 11:22
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.2 [security] chore(deps): update dependency undici to >=7.24.0 [security] Mar 14, 2026
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch from 1dc240d to 7666a20 Compare March 15, 2026 17:07
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.0 [security] chore(deps): update dependency undici to >=7.24.3 [security] Mar 15, 2026
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch from 7666a20 to bbe24fc Compare March 15, 2026 17:12
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.3 [security] chore(deps): update dependency undici to >=7.24.0 [security] Mar 15, 2026
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch from bbe24fc to 1804347 Compare March 15, 2026 17:13
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.0 [security] chore(deps): update dependency undici to >=7.24.3 [security] Mar 15, 2026
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch from 1804347 to fd07625 Compare March 15, 2026 17:15
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.3 [security] chore(deps): update dependency undici to >=7.24.0 [security] Mar 15, 2026
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch from fd07625 to be556b8 Compare March 15, 2026 17:16
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.0 [security] chore(deps): update dependency undici to >=7.24.3 [security] Mar 15, 2026
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch from be556b8 to c72c9da Compare March 15, 2026 17:19
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.3 [security] chore(deps): update dependency undici to >=7.24.0 [security] Mar 15, 2026
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.0 [security] chore(deps): update dependency undici to >=7.24.4 [security] Mar 16, 2026
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch from c72c9da to 45487d2 Compare March 16, 2026 17:21
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.4 [security] chore(deps): update dependency undici to >=7.24.0 [security] Mar 16, 2026
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch 2 times, most recently from 8ae27e3 to ae96f1c Compare March 20, 2026 16:55
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.0 [security] chore(deps): update dependency undici to >=7.24.5 [security] Mar 20, 2026
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.5 [security] chore(deps): update dependency undici to >=7.24.0 [security] Mar 20, 2026
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch from ae96f1c to 49a3396 Compare March 20, 2026 16:57
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch from 4bdfd30 to 7720c13 Compare March 23, 2026 17:31
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.0 [security] chore(deps): update dependency undici to >=7.24.5 [security] Mar 23, 2026
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch from 7720c13 to 53243f7 Compare March 23, 2026 17:36
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.5 [security] chore(deps): update dependency undici to >=7.24.0 [security] Mar 23, 2026
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch from 53243f7 to 1cb5fe2 Compare March 26, 2026 17:44
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.0 [security] chore(deps): update dependency undici to >=7.24.6 [security] Mar 26, 2026
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch from 1cb5fe2 to 5993243 Compare March 26, 2026 20:32
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.6 [security] chore(deps): update dependency undici to >=7.24.0 [security] Mar 26, 2026
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.0 [security] chore(deps): update dependency undici to >=7.24.0 [security] - autoclosed Mar 27, 2026
@renovate renovate Bot closed this Mar 27, 2026
@renovate renovate Bot deleted the renovate/npm-undici-vulnerability branch March 27, 2026 00:58
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.0 [security] - autoclosed chore(deps): update dependency undici to >=7.24.0 [security] Mar 30, 2026
@renovate renovate Bot reopened this Mar 30, 2026
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch 3 times, most recently from 23cf622 to 3db3c7c Compare March 31, 2026 07:39
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.0 [security] chore(deps): update dependency undici to >=7.24.6 [security] Mar 31, 2026
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch from 3db3c7c to 70ec918 Compare March 31, 2026 07:40
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.6 [security] chore(deps): update dependency undici to >=7.24.0 [security] Mar 31, 2026
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch from 70ec918 to 2a6e53e Compare March 31, 2026 07:44
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.0 [security] chore(deps): update dependency undici to >=7.24.6 [security] Mar 31, 2026
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch from 2a6e53e to 407c0ff Compare March 31, 2026 07:46
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.6 [security] chore(deps): update dependency undici to >=7.24.0 [security] Mar 31, 2026
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch from 407c0ff to 13757d4 Compare April 1, 2026 18:15
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.0 [security] chore(deps): update dependency undici to >=7.24.7 [security] Apr 1, 2026
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch from 13757d4 to 1d997ae Compare April 1, 2026 23:17
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.7 [security] chore(deps): update dependency undici to >=7.24.0 [security] Apr 1, 2026
@renovate renovate Bot force-pushed the renovate/npm-undici-vulnerability branch from 1d997ae to 1973507 Compare April 3, 2026 17:55
@renovate renovate Bot changed the title chore(deps): update dependency undici to >=7.24.0 [security] chore(deps): update dependency undici to >=7.24.7 [security] Apr 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants