Skip to content

Bump undici from 8.12.0 to 8.12.2 - #3606

Merged
HughParry merged 4 commits into
mainfrom
dependabot/npm_and_yarn/undici-8.12.2
Oct 26, 2026
Merged

HughParry merged 4 commits into
mainfrom
dependabot/npm_and_yarn/undici-8.12.2

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 24, 2026 •

Copy link
Copy Markdown
Contributor

Bumps undici from 8.12.0 to 8.12.2.

Release notes

Sourced from undici's releases.

v8.12.2

Security fixes

High severity

Denial of service via TLS 1.2 certificate-changing renegotiation

CVE-2026-87018 · GHSA-qrxm-fqhp-jwvm

A malicious or compromised HTTPS server could crash the Node.js process by initiating TLS 1.2 renegotiation and presenting a different, CA-trusted certificate whose hostname did not match the requested host. The resulting socket error reached an assertion in undici's HTTP/1.1 and HTTP/2 connection handling. This release handles post-connect certificate errors without terminating the process.

TLS certificate validation bypass through dropped Agent options

CVE-2026-109383 · GHSA-2m5v-pch6-74hx

Agent used a JSON-based clone for constructor options, which silently removed function-valued TLS options such as checkServerIdentity. Applications relying on custom certificate or public-key verification could therefore accept a certificate that the callback was intended to reject. This release preserves TLS options when creating per-origin dispatchers.

Cache poisoning and cross-user disclosure through cross-origin redirects

CVE-2026-109829 · GHSA-4w7w-5xrc-9h26

When an originless Agent combined redirect and shared-cache interceptors as compose(redirect(), cache()), a response from a cross-origin redirect could be stored under the original URL. This could allow persistent cache poisoning or disclosure of user-specific responses to later callers. This release verifies the response origin before caching and preserves redirect-hop cache-control policy.

Denial of service through excessive Content-Encoding values

CVE-2026-109869 · GHSA-xjj6-f33q-929c

A malicious HTTP server could crash the Node.js process by returning more than five content codings and closing the connection before sending the body. Although fetch() rejected the response, an error from an orphaned internal stream could remain unhandled. This release validates the content-encoding chain before creating the body stream and aborts oversized chains safely.

Medium severity

Denial of service through the decompress interceptor

CVE-2026-87029 · GHSA-55wc-3pg8-jfw6

An exception thrown by a downstream response handler from an asynchronous decompression callback could escape as an uncaught exception. A server could trigger this when decompress was composed with a handler such as dump with a size limit. This release converts downstream handler exceptions into per-request errors.

Subresource Integrity bypass with non-lowercase algorithm tokens

CVE-2026-109841 · GHSA-f72v-6w45-q472

fetch() treated valid mixed-case or uppercase SRI algorithm tokens, such as SHA256, as unknown and could accept a response whose body did not match the configured digest. This release normalizes algorithm tokens before validation and digest selection.

Denial of service through unbounded EventSource parser state

CVE-2026-109924 · GHSA-4qv8-2p9j-2685

A malicious Server-Sent Events endpoint could exhaust process memory by sending many tiny data: fields without completing an event, or by splitting an unfinished line across many chunks. This release bounds retained EventSource parser state, including field counts, buffered chunks, unfinished-line length, and retained field data.

... (truncated)

Commits
  • bb6cc0a Bumped v8.12.2 (#6021)
  • b217373 fix(websocket): bound automatic PONG writes under backpressure
  • 789ef26 fix(eventsource): bound retained SSE parser state
  • 4f7ef68 fix(sri): accept non-lowercase algorithm tokens
  • f851f31 fix(decompress): converge downstream handler throws to per-request errors
  • b5084c7 fix(fetch): abort excessive content encoding responses
  • 26c2bfb fix(cache): prevent cross-origin redirect cache confusion
  • f75eac0 fix: preserve Agent connection options
  • e257e9f fix: handle post-connect TLS certificate errors
  • a65ec32 Bumped v8.12.1 (#6010)
  • Additional commits viewable in compare view

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code labels Oct 24, 2026
@github-actions

Copy link
Copy Markdown
Contributor

No updates since 2026-10-24T03:14:19Z (over 1 days), so this PR has been converted to draft. That stops it holding CI runners.

Nothing is lost — gh pr ready 3606, or the "Ready for review" button, picks it straight back up. Add the keep-ready label to exempt it permanently.

Converting to draft disables auto-merge, so PRs with auto-merge enabled are excluded from this entirely.

@dependabot
dependabot Bot force-pushed the dependabot/npm_and_yarn/undici-8.12.2 branch from ff0bfcc to c68c610 Compare October 25, 2026 11:00
Bumps [undici](https://github.com/nodejs/undici) from 8.12.0 to 8.12.2.
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](nodejs/undici@v8.12.0...v8.12.2)

---
updated-dependencies:
- dependency-name: undici
  dependency-version: 8.12.2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/npm_and_yarn/undici-8.12.2 branch from 864bc1a to 20dd7b2 Compare October 25, 2026 11:54
@HughParry
HughParry enabled auto-merge (squash) October 26, 2026 11:43
@HughParry
HughParry merged commit ab3c124 into main Oct 26, 2026
20 checks passed
@HughParry
HughParry deleted the dependabot/npm_and_yarn/undici-8.12.2 branch October 26, 2026 12:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant