LiveActive security incident?Get immediate response
CVE Record

CVE-2026-42789: Non-CA certificate accepted as intermediate issuer in public_key path validation

Improper Following of a Certificate's Chain of Trust vulnerability in Erlang OTP public_key (pubkey_cert module) allows a non-CA certificate to be accepted as an intermediate issuer, enabling certificate chain forgery. In lib/public_key/src/pubkey_cert.erl, pubkey_cert:validate_extensions/7 contains two flaws that together allow a certificate with basicConstraints cA:false and no keyUsage extension to be used as an intermediate issuer in a chain passed to public_key:pkix_path_validation/3: the cA:false clause recurses into the remaining extensions without rejecting the certificate when it is in issuer position, and the keyUsage check only fires when the extension is present, so a certificate lacking keyUsage entirely bypasses the keyCertSign enforcement. Any party holding an end-entity certificate with basicConstraints cA:false and no keyUsage extension, issued by any CA in the victim's trust store, can use that certificate's private key to sign forged leaf certificates for arbitrary identities. public_key:pkix_path_validation/3 accepts the resulting chain, and by extension every TLS or mTLS endpoint built on the OTP ssl application that relies on the default verifier is affected, including server identity verification on the client side and client certificate verification on mTLS servers. This issue affects OTP from OTP 17.0 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 0.22 before 1.21.1, 1.20.3.1, 1.17.1.3 and 1.15.1.7.

HighCVSS 8Not KEV-listedUpdated
Glexia's TakeAutomated analysishigh

Security readout for executives and security teams

Plain-English summary

Erlang OTP may trust a certificate that is explicitly not a certificate authority as though it could issue other certificates. An attacker with a suitable legitimate end-entity certificate and its private key could forge identities accepted by affected OTP TLS or mTLS applications, risking impersonation and data disclosure or modification.

Executive priority

Treat as a high-priority identity-trust issue. Expedite remediation for externally connected TLS clients, mTLS gateways, and services protecting sensitive data. The prerequisites make exploitation harder, but successful abuse could bypass certificate-based identity controls without affecting availability, making normal uptime monitoring unlikely to reveal it.

Technical view

Two public_key validation flaws allow an issuer-position certificate with basicConstraints cA:false and no keyUsage extension to bypass CA and keyCertSign enforcement. public_key:pkix_path_validation/3 may therefore accept forged chains. Affected OTP ssl clients and mTLS servers using the default verifier can accept attacker-signed leaf certificates.

Likely exposure

Exposure exists where OTP 17.0 or later runs an affected public_key release and performs TLS server verification or mTLS client verification through the default OTP verifier. Custom verification paths may differ and require review. Internet-facing services, internal service authentication, and trusted-CA configurations should all be inventoried.

Exploitation context

The CVSS score is 8.0 with high complexity and user interaction required. Exploitation requires control of a suitable CA-issued end-entity certificate and its private key, then an opportunity to present a forged chain. The supplied record is not in CISA KEV, and the sources provide no evidence of active exploitation.

Researcher notes

The vulnerable combination is cA:false with no keyUsage extension: validation recurses after cA:false, while keyCertSign enforcement occurs only when keyUsage exists. The supplied affected-version metadata is inconsistent in places; use the Erlang advisory and branch-specific fixed releases as authoritative upgrade references. No exploit status beyond the supplied non-KEV indication is established.

Mitigation direction

  • Upgrade to OTP 29.0.1 or the fixed release for the deployed supported branch.
  • Fixed branch releases include 28.5.0.1, 27.3.4.12, and 26.2.5.21.
  • Confirm the resulting public_key version matches the vendor advisory's fixed releases.
  • Prioritize TLS clients and mTLS servers that rely on OTP's default certificate verifier.
  • Review Erlang and downstream vendor guidance before applying compensating controls.

Validation and detection

  • Inventory deployed OTP and public_key versions, including bundled runtimes and containers.
  • Identify applications calling public_key:pkix_path_validation/3 directly or through OTP ssl.
  • Determine whether TLS or mTLS uses the default verifier or custom certificate validation.
  • Verify patched staging systems reject non-CA certificates when used as intermediate issuers.
  • Retest server identity and mTLS client authentication after upgrading.
Prepared
Confidence
high
Sources
8

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cwe · low confidence lookup

CWE-295: Exact CWE lookup

Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.

Open ATT&CK lookup
cwe · low confidence lookup

CWE-296: Exact CWE lookup

Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.

Open ATT&CK lookup
cve · low confidence lookup

CVE-2026-42789 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
High
CVSS
8 (3.1)
Known Exploited
No
Published

Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:N

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

2CVSS vectors
5Timeline events
2ADP providers
11Source links

SSVC decision data

CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: noneAutomatable: noTechnical Impact: partial

CVSS vector scores

2 official scores

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
8CVSS 3.1HighCVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:N1.65.8redhat-SADP
7CVSS 4.0HighCVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:H/SI:H/SA:NEEF

Vulnerability scoring details

Base CVSS 4.0 score

7High
CVSS 4.0 vector shape for CVE-2026-42789Attack VectorAttack ComplexityAttack RequirementsPrivileges RequiredUser InteractionVS ConfidentialityVS IntegrityVS AvailabilitySS ConfidentialitySS IntegritySS Availability

Vector: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:H/SI:H/SA:N

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Attack Requirements
NonePresent
Privileges Required
NoneLowHigh
User Interaction
NonePassiveActive
VS Confidentiality
HighLowNone
VS Integrity
HighLowNone
VS Availability
HighLowNone
SS Confidentiality
HighLowNone
SS Integrity
HighLowNone
SS Availability
HighLowNone

Vulnerability timeline

Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.

  1. CVE reservedCVE Program

    The CVE ID was reserved by the assigning CNA.

  2. ADP timelineredhat-SADP

    Made public.

  3. CVE publishedCVE Program

    The CVE record was published.

  4. ADP timelineredhat-SADP

    Reported to Red Hat.

  5. CVE updatedCVE Program

    The CVE record metadata indicates this as the latest update time.

ADP provider summaries

CISA-ADPCISA ADP Vulnrichment
other:ssvc
redhat-SADPerlang: Erlang OTP public_key: Certificate chain forgery via improper trust chain validation
other:Red Hat severity ratingcvssV3_1
  • 2026-05-27T15:10:36.175Z: Reported to Red Hat.
  • 2026-05-27T12:23:06.355Z: Made public.

Source materials

Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
ErlangOTPpublic_key, 0.22unknown
ErlangOTPerlang/otp, 17.0, 84adefa331c4159d432d22840663c38f155cd4c1unknown
Weakness

CWE details

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.

CWE-295 · source CWE mapping

Improper Certificate Validation

Improper Certificate Validation represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.

CWE-296 · source CWE mapping

Improper Following of a Certificate's Chain of Trust

Improper Following of a Certificate's Chain of Trust represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.