Nodejs: A per-host mutual-TLS authorization bypass
Affects nodejsSource GCVE Database
Not known to be exploited · CVSS 4.2 Medium.
Data as of 13 Nov 2026, 22:04 UTC
Thin evidence
One scorer or none| CNA (openjs) | CVSS 3.1 | 4.2 |
|---|
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:NExploitation evidence
Disclosed: evidence found.
CVE published 11 Nov 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponized: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 13 Nov 2026.
What to do
Affected software
| Product | Affected | Fixed in |
|---|---|---|
Ubuntu 26.10nodejspkg:deb/ubuntu/nodejs?arch=source&distro=stonkingOther threats | Affected
| Fixed in– |
Ubuntu 26.04 LTSnodejspkg:deb/ubuntu/nodejs?arch=source&distro=resoluteOther threats | Affected
| Fixed in– |
Ubuntu 24.04 LTSnodejspkg:deb/ubuntu/nodejs?arch=source&distro=nobleOther threats | Affected
| Fixed in– |
Ubuntu Pro 22.04 LTSnodejspkg:deb/ubuntu/nodejs?arch=source&distro=esm-apps/jammyOther threats | Affected
| Fixed in– |
Ubuntu Pro 20.04 LTSnodejspkg:deb/ubuntu/nodejs?arch=source&distro=esm-apps/focalOther threats | Affected
| Fixed in– |
Ubuntu Pro 18.04 LTSnodejspkg:deb/ubuntu/nodejs?arch=source&distro=esm-apps/bionicOther threats | Affected
| Fixed in– |
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
Description
A per-host mutual-TLS authorization bypass in Node.js lets a client authorized for the default hostname reach a protected hostname it is not authorized for. When a TLS server assigns a hostname a different client-certificate CA with server.addContext(host, { ca: protectedCA }) but no server certificate in that SNI context, the per-host client CA is never installed and the handshake falls back to the default client CA. In src/crypto/crypto_tls.cc, CertCbDone installs the SNI context's CA only when setSniContext succeeds, but setSniContext returns false for a context with no server certificate, so a CA-only SNI context silently keeps the default CA. A client holding a certificate trusted by the default CA, but not the protected CA, can therefore complete mTLS to the protected hostname and read its response even with requestCert and rejectUnauthorized enabled, while a client certified by the protected CA is rejected. This vulnerability affects Node.js 26.x, 24.x, and 22.x.
References
- ubuntu.com/security/CVE-2026-123867 (opens in a new tab)
- cve.org/CVERecord?id=CVE-2026-123867 (opens in a new tab)
- nodejs.org/en/blog/vulnerability/november-2026-security-releases (opens in a new tab)
- cna.openjsf.org/security-advisories.html (opens in a new tab)
- nodejs.org/en/blog/vulnerability/november-2026-security-releases (opens in a new tab)