[CLSA-2026:1788181921] Fix CVE(s): CVE-2026-48618, CVE-2026-48928, CVE-2026-48934, CVE-2026-58040
Type:
security
Severity:
Moderate
Release date:
2026-08-31 13:12:15 UTC
Description:
* SECURITY UPDATE: TLS wildcard-depth authentication bypass via Unicode dot separators - debian/patches/CVE-2026-48618.patch: IDNA-normalize the peer hostname with domainToASCII() before splitHost() in tls.checkServerIdentity() (lib/tls.js), so the verifier splits the same DNS labels the resolver does; a name such as "foo怂bar.example.com" can no longer be authenticated by a certificate for *.example.com. Includes the mandatory IPv6 follow-up so IP-Address SANs keep matching IPv6 hosts (backport of nodejs/node@2197a471 + @1d87a240 adapted to 14.21.3) - CVE-2026-48618 * SECURITY UPDATE: case-sensitive SNI context matching -> mTLS authorization bypass - debian/patches/CVE-2026-48928.patch: add the 'i' flag to the RegExp built by tls.Server.prototype.addContext() (lib/_tls_wrap.js), so an uppercase or mixed-case SNI hostname selects its per-hostname SecureContext instead of silently falling back to the server default and bypassing per-tenant client-certificate policy, as required by RFC 6066 Section 3 (backport of nodejs/node@39d1d096) - CVE-2026-48928 * SECURITY UPDATE: TLS host identity verification bypass via session reuse - debian/patches/CVE-2026-48934.patch: bind a reusable client TLS session to the host it was authenticated for (lib/_tls_wrap.js) by wrapping the session blob with the server identity and refusing to reuse it for a different one; a session obtained from host A can no longer be replayed against host B, where checkServerIdentity() is skipped because the session is resumed (backport of nodejs/node@fd890ba0) - CVE-2026-48934 * SECURITY UPDATE: https.Agent shares sockets and TLS sessions across different checkServerIdentity callbacks - debian/patches/CVE-2026-58040.patch: incomplete-fix follow-up to CVE-2026-48934, which bound reusable sessions to the authenticated host in lib/_tls_wrap.js but left the https.Agent layer untouched: lib/https.js never referenced checkServerIdentity, so getName() did not key on it, createConnection() cached and reused sessions purely on options._agentKey, and there was no keepSocketAlive override. A request carrying a custom per-request checkServerIdentity is now tagged with a symbol-keyed marker that is folded into the agent key, excluded from the session cache and refused re-entry to the keep-alive pool, so a connection authenticated under one callback can no longer be resumed under another -- where the identity check is skipped altogether (backport of nodejs/node@51123159, the v22.x release-line commit shipped in v22.23.2; its upstream establishTunnel() hunk is dropped because 14.21.3 has no proxy-tunnel support in lib/https.js) - CVE-2026-58040
Updated packages:
  • alt-nodejs14-docs_14.21.3-30_amd64.deb
    sha:ae05c80325d767292e3ce1e714162dce792854f0
  • alt-nodejs14-nodejs_14.21.3-30_amd64.deb
    sha:53831d9b4d5af62721926e93fe3e3baa22d68356
  • alt-nodejs14-nodejs-devel_14.21.3-30_amd64.deb
    sha:b1ed6ef2fd1c3cca3e91dfdba7b241fd1054b105
  • alt-nodejs14-npm_6.14.18-14.21.3-30_amd64.deb
    sha:4fa6d949299182709f23da758d5759d9e6689f63
Notes:
This page is generated automatically and has not been checked for errors. For clarification or corrections please contact the CloudLinux Packaging Team.