CVE-2026-58227
Received
Received - Intake
Infinite Recursion in Erlang/OTP SSL Certificate Chain Handling
Vulnerability report for CVE-2026-58227, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.
Publication date: 2026-07-27
Last updated on: 2026-07-27
Assigner: EEF
Description
Description
The Erlang/OTP ssl application does not detect cycles when reconstructing an incomplete peer certificate chain during a TLS or DTLS handshake. In ssl_certificate:handle_incomplete_chain/5, the received chain is passed to ssl_certificate:build_certificate_chain/5, which walks issuer relationships via ssl_certificate:do_certificate_chain/7 with no cycle detection and no depth limit. When the peer supplies two mutually cross-signed certificates in unordered form (A issues B, B issues A), the issuer lookup alternates between the two certificates and the pair of functions recurses indefinitely, growing the call stack and chain accumulator without bound.
An unauthenticated remote attacker can send a crafted certificate chain in a TLS or DTLS Certificate handshake message to exhaust available memory and crash the BEAM node. Only a TCP connection and a partial handshake are required; no authentication or completed handshake is needed, and both TLS/DTLS servers and clients are affected when processing peer certificate messages.
This issue affects OTP from OTP 23.2 before OTPΒ 29.0.4, OTPΒ 28.5.0.4 and OTPΒ 27.3.4.15, corresponding to ssl from 10.2 before 11.7.4, 11.6.0.4 and 11.2.12.11.
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| erlang | otp | From 23.2 (exc) to 29.0.4 (inc) |
| erlang | otp | From 28.5.0.4 (exc) |
| erlang | otp | From 27.3.4.15 (exc) |
| erlang | ssl | From 10.2 (exc) to 11.7.4 (inc) |
| erlang | ssl | From 11.6.0.4 (exc) |
| erlang | ssl | From 11.2.12.11 (exc) |
| erlang | otp | From 23.2 (inc) to 29.0.4 (exc) |
| erlang | otp | 28.5.0.4 |
| erlang | otp | 27.3.4.15 |
| erlang | ssl | From 10.2 (inc) to 11.7.4 (exc) |
| erlang | ssl | 11.6.0.4 |
| erlang | ssl | 11.2.12.11 |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-674 | The product does not properly control the amount of recursion that takes place, consuming excessive resources, such as allocated memory or the program stack. |