nameConstraints DNS bypass via subject CommonName fallback in public_key hostname verification
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Passive
- Attack complexity
- High
- Attack requirements
- Present
- Impact type
- Spoofing
- Confidentiality · integrity · availability
- High · High · None
- Fix status
- Partial Red Hat: 3 fixed, 1 without a fix
Attack profile from CVSS 4.0 · CNA. Fix status from CNA and Red Hat. Impact type from CWE-295.
Summary
Improper Certificate Validation vulnerability in Erlang OTP public_key (pubkey_cert and public_key modules) allows a DNS nameConstraints bypass via subject CommonName fallback in TLS hostname verification. Two flaws combine to allow a subordinate CA whose DNS nameConstraints are restricted (e.g. permitted;DNS:allowed.example.com) to issue a leaf certificate that an OTP TLS client accepts as a valid identity for an out-of-scope hostname (e.g. victim.example.com): First, pubkey_cert:validate_names/6 in lib/public_key/src/pubkey_cert.erl only checks SAN DNS entries against nameConstraints. Per RFC 5280, a permitted DNS subtree only restricts certificates that contain a DNS-typed name. A leaf with no subjectAltName therefore trivially satisfies any permitted;DNS:... constraint regardless of its subject commonName. Second, public_key:pkix_verify_hostname/3 in lib/public_key/src/public_key.erl falls back to the subject commonName when no subjectAltName is present, extracting id-at-commonName attributes as presented IDs and matching them against the reference hostname. The strict pkix_verify_hostname_match_fun(https) matcher does not suppress this fallback. The result is that path validation accepts a CN-only leaf under a DNS-constrained intermediate (no SAN means the nameConstraints are not triggered), and hostname verification then accepts it via the CN fallback. The bypass is reachable from stock ssl:connect with verify_peer, a trusted CA, SNI, and the canonical strict https hostname matcher. This issue affects OTP from OTP 19.3 before OTP 29.0.1, OTP 28.5.0.1, OTP 27.3.4.12 and OTP 26.2.5.21, corresponding to public_key from 1.4 before 1.21.1, 1.20.3.1, 1.17.1.3 and 1.15.1.7.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| Erlang | OTP | 1.4 and later | — | No fix listed | CNA |
| Erlang | OTP | 19.3 and later | — | No fix listed | CNA |
- OTP VendorErlang Affected 1.4 and later Fixed in — No fix listed CNA
- OTP VendorErlang Affected 19.3 and later Fixed in — No fix listed CNA
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:erlang:erlang\/otp:*:*:*:*:*:*:*:* | 19.3 to before 26.2.5.21; 27.0 to before 27.3.4.12; 28.0 to before 28.5.0.1; 29.0 to before 29.0.1 | Vulnerable | Erlang |
- cpe:2.3:a:erlang:erlang\/otp:*:*:*:*:*:*:*:* Versions 19.3 to before 26.2.5.21; 27.0 to before 27.3.4.12; 28.0 to before 28.5.0.1; 29.0 to before 29.0.1 Vulnerable ·Erlang
Remediation
Red Hat 3 advisories
- RHSA-2026:63160 Released 2026-09-03 · Red Hat rating ImportantRed Hat Hardened Images RPMs bug fix and enhancement update
- Red Hat Hardened Images erlang27-27.3.4.17-1.hum1@aarch64, erlang27-27.3.4.17-1.hum1@src, erlang27-27.3.4.17-1.hum1@x86_64 +47
- RHSA-2026:54757 Released 2026-08-13 · Red Hat rating ImportantRed Hat OpenStack Platform 16.2 security advisory
- Red Hat OpenStack Platform 16.2 collectd-sensubility-0.2.1-1.1.el8ost, erlang-23.3.4.18-2.el8ost, erlang-asn1-23.3.4.18-2.el8ost +41
- RHSA-2026:39809 Released 2026-07-15 · Red Hat rating ImportantRed Hat OpenStack Services on OpenShift 18.0 (erlang) security update
- Red Hat OpenStack Services on OpenShift 18.0 erlang-26.2.5.21-2.el9ost, erlang-asn1-26.2.5.21-2.el9ost, erlang-compiler-26.2.5.21-2.el9ost +17
Vendor assessments
Red Hat
Red Hat rating: Important. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat OpenStack Platform 17.1 | Affected | No fix yet |
| Red Hat Hardened Images | Fixed | RHSA-2026:63160 |
| Red Hat OpenStack Platform 16.2 | Fixed | RHSA-2026:54757 |
| Red Hat OpenStack Services on OpenShift 18.0 | Fixed | RHSA-2026:39809 |
Not affected: 1 product
- Red Hat OpenStack Platform 16.2
Timeline
- 2026-10-02 Threatist record created from CVE-2026-42790
References
Patch 3
Advisory 3
More Erlang/otp vulnerabilities
- TI-2025-23504 Erlang/OTP SSH Vulnerable to Pre-Authentication RCE KEVCVSS 3.1CRITICAL 10.0
- TI-2023-26623 The SSH transport protocol with certain OpenSSH extensions, found in OpenSSH before 9.6… CVSS 3.1MEDIUM 5.9
- TI-2017-14604 The Erlang otp TLS server answers with different TLS alerts to different error types in… CVSS 3.0MEDIUM 5.9
- TI-2026-36669 Stack buffer overflow in SCTP error cause parsing in inet_drv allows remote VM crash CVSS 4.0HIGH 8.8
- TI-2022-17230 In Erlang/OTP before 23.3.4.15, 24.x before 24.3.4.2, and 25.x before 25.0.2, there is a… CVSS 3.1CRITICAL 9.8
- TI-2016-08327 An issue was discovered in Erlang/OTP 18.x. CVSS 3.0CRITICAL 9.8
Sources
- CVE-2026-42790 · CVE Program
- CVE-2026-42790 · NVD
- FIRST EPSS
- CVE-2026-42790 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences