Zero Radar
← feed
HighVulnerabilityCVE-2026-109383updated 27 Oct 2026, 19:02 UTC

undici: custom TLS certificate checks silently skipped in Agent

If your app uses a custom rule to check which servers it trusts, that rule can be quietly ignored. A fake server with a certificate that passes normal checks could then be accepted by mistake.

Fixed in 6.29.1, 7.30.1, 8.12.2Official source
SeverityHighCVSS 7.4 of 10
Being exploited?UnclearNo reports either way yet
Fix available?Yes6.29.1, 7.30.1, 8.12.2 · since 27 Oct 2026
How sure is this?Official sourceBacked by an official source

How the attack works simplified

  1. 1Impostor serverPresents a certificate that passes default checks
  2. 2Network pathAttacker intercepts the connection
  3. 3Agent connectsCustom checkServerIdentity callback is dropped
  4. 4Trust check skippedPinning rule never runs
  5. ResultImpostor server is silently accepted

What happened

In undici's Agent, a function-valued tls option such as checkServerIdentity is dropped by a JSON deep clone before reaching the TLS layer, so custom certificate or public-key pinning callbacks are not enforced.

Why it is dangerous: Applications relying on certificate pinning via Agent (the default dispatcher behind request, fetch and setGlobalDispatcher) may connect to impostor servers, enabling man-in-the-middle interception of traffic.

Are you affected?

You are affected if you use undici Agent (or EnvHttpProxyAgent) with a function-valued tls option, such as a custom checkServerIdentity, in versions >= 4.0.0 < 6.29.1, >= 7.0.0 < 7.30.1, or >= 8.0.0 < 8.12.2.

Package / productAffected versionsFixed in
undici · npm>= 4.0.0, < 6.29.16.29.1
undici · npm>= 7.0.0, < 7.30.17.30.1
undici · npm>= 8.0.0, < 8.12.28.12.2

What to do

  1. Update undici to 6.29.1, 7.30.1, or 8.12.2 (whichever matches your major version)
  2. If you cannot update yet, pass TLS options through connect instead of tls
  3. For EnvHttpProxyAgent proxied destinations, use requestTls / proxyTls

Timeline

  1. 27 Oct 2026, 19:02 UTC
    Publicly disclosed
  2. 27 Oct 2026, 19:02 UTC
    Reported by GitHub Advisory · GitHub Advisory
  3. 27 Oct 2026, 19:02 UTC
    Picked up by Zero Radar

Sources 1 report, oldest first

Official vendor, government CERT or advisory database

Technical details

ID
CVE-2026-109383 · GHSA-2m5v-pch6-74hx
CVSS
7.4 / 10
EPSS
0.2% chance of exploitation within 30 days
Disclosed
27 Oct 2026, 19:02 UTC
On Zero Radar
27 Oct 2026, 19:02 UTC (1 min after disclosure)
Last change
27 Oct 2026, 19:02 UTC

The plain-language parts and the attack diagram were written by an AI model (anthropic/claude-haiku-5.5) from the sources above. Facts like versions, exploitation and dates come from the sources themselves. How Zero Radar works

undici: custom TLS certificate checks silently skipped in Agent · Zero Radar