CVE-2026-59251: CWE-770 Allocation of Resources Without Limits or Throttling in Erlang OTP
Allocation of resources without limits in Erlang/OTP public_key certificate path validation allows a remote unauthenticated attacker to cause denial of service by sending a crafted X.509 certificate chain during the TLS handshake. During RFC 5280 policy processing in public_key:pkix_path_validation/3, the certificate policy tree maintained by pubkey_policy_tree grows without an upper bound. When a certificate chain contains M policies per certificate and K certificates, the tree grows on the order of M^K nodes because pubkey_policy_tree:add_leaves/2 and pubkey_policy_tree:add_leaf_siblings/2 extend the tree per policy per certificate. A modest chain with many policies per certificate is enough to pin BEAM schedulers and exhaust the node's memory, taking down the entire VM. The attacker only needs to be able to present a certificate chain to the victim, which is the normal precondition for a TLS handshake, so exploitation succeeds against any incoming or outgoing TLS connection that validates the peer's chain (the default for SSL/TLS clients and mutual-TLS servers). This is the same vulnerability class as OpenSSL's X509_verify_cert policy tree DoS. This vulnerability is associated with program files lib/public_key/src/pubkey_policy_tree.erl and program routines pubkey_policy_tree:add_leaves/2 and pubkey_policy_tree:add_leaf_siblings/2. This issue affects OTP from OTP 26.2 before OTP 29.0.4, OTP 28.5.0.4 and OTP 27.3.4.15, corresponding to public_key from 1.15 before 1.21.4, 1.20.3.4 and 1.17.1.5.
AI Analysis
Technical Summary
This vulnerability arises from the allocation of resources without limits or throttling in the Erlang/OTP public_key certificate path validation process. Specifically, during RFC 5280 policy processing in the function public_key:pkix_path_validation/3, the certificate policy tree maintained by pubkey_policy_tree grows exponentially without an upper bound due to the way pubkey_policy_tree:add_leaves/2 and pubkey_policy_tree:add_leaf_siblings/2 extend the tree per policy per certificate. A crafted X.509 certificate chain with multiple policies per certificate can cause the tree to grow on the order of M^K nodes (M = policies per certificate, K = number of certificates), leading to exhaustion of BEAM schedulers and node memory, resulting in denial of service. The vulnerability affects incoming or outgoing TLS connections that validate peer certificate chains, which is the default behavior for SSL/TLS clients and mutual-TLS servers in Erlang/OTP. It is similar in nature to OpenSSL's X509_verify_cert policy tree DoS vulnerability. The affected program files include lib/public_key/src/pubkey_policy_tree.erl and routines pubkey_policy_tree:add_leaves/2 and pubkey_policy_tree:add_leaf_siblings/2.
Potential Impact
A remote unauthenticated attacker can cause a denial of service by sending a specially crafted X.509 certificate chain during the TLS handshake. This leads to unbounded growth of the certificate policy tree, exhausting CPU schedulers and memory on the Erlang node, effectively taking down the entire Erlang VM. This impacts any system using Erlang/OTP versions affected that perform TLS certificate validation, potentially disrupting services relying on TLS connections.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. No official fix or patch is currently documented. Until a patch is available, consider limiting exposure to untrusted TLS connections or implementing external controls to filter or limit certificate chain complexity. Monitor vendor communications for updates and apply official fixes once released.
CVE-2026-59251: CWE-770 Allocation of Resources Without Limits or Throttling in Erlang OTP
Description
Allocation of resources without limits in Erlang/OTP public_key certificate path validation allows a remote unauthenticated attacker to cause denial of service by sending a crafted X.509 certificate chain during the TLS handshake. During RFC 5280 policy processing in public_key:pkix_path_validation/3, the certificate policy tree maintained by pubkey_policy_tree grows without an upper bound. When a certificate chain contains M policies per certificate and K certificates, the tree grows on the order of M^K nodes because pubkey_policy_tree:add_leaves/2 and pubkey_policy_tree:add_leaf_siblings/2 extend the tree per policy per certificate. A modest chain with many policies per certificate is enough to pin BEAM schedulers and exhaust the node's memory, taking down the entire VM. The attacker only needs to be able to present a certificate chain to the victim, which is the normal precondition for a TLS handshake, so exploitation succeeds against any incoming or outgoing TLS connection that validates the peer's chain (the default for SSL/TLS clients and mutual-TLS servers). This is the same vulnerability class as OpenSSL's X509_verify_cert policy tree DoS. This vulnerability is associated with program files lib/public_key/src/pubkey_policy_tree.erl and program routines pubkey_policy_tree:add_leaves/2 and pubkey_policy_tree:add_leaf_siblings/2. This issue affects OTP from OTP 26.2 before OTP 29.0.4, OTP 28.5.0.4 and OTP 27.3.4.15, corresponding to public_key from 1.15 before 1.21.4, 1.20.3.4 and 1.17.1.5.
CVSS v4.0
Score 8.7high
Affected software
Erlang
OTP
Erlang
OTP
cpe:2.3:a:erlang:erlang\/otp:*:*:*:*:*:*:*:*Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
This vulnerability arises from the allocation of resources without limits or throttling in the Erlang/OTP public_key certificate path validation process. Specifically, during RFC 5280 policy processing in the function public_key:pkix_path_validation/3, the certificate policy tree maintained by pubkey_policy_tree grows exponentially without an upper bound due to the way pubkey_policy_tree:add_leaves/2 and pubkey_policy_tree:add_leaf_siblings/2 extend the tree per policy per certificate. A crafted X.509 certificate chain with multiple policies per certificate can cause the tree to grow on the order of M^K nodes (M = policies per certificate, K = number of certificates), leading to exhaustion of BEAM schedulers and node memory, resulting in denial of service. The vulnerability affects incoming or outgoing TLS connections that validate peer certificate chains, which is the default behavior for SSL/TLS clients and mutual-TLS servers in Erlang/OTP. It is similar in nature to OpenSSL's X509_verify_cert policy tree DoS vulnerability. The affected program files include lib/public_key/src/pubkey_policy_tree.erl and routines pubkey_policy_tree:add_leaves/2 and pubkey_policy_tree:add_leaf_siblings/2.
Potential Impact
A remote unauthenticated attacker can cause a denial of service by sending a specially crafted X.509 certificate chain during the TLS handshake. This leads to unbounded growth of the certificate policy tree, exhausting CPU schedulers and memory on the Erlang node, effectively taking down the entire Erlang VM. This impacts any system using Erlang/OTP versions affected that perform TLS certificate validation, potentially disrupting services relying on TLS connections.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. No official fix or patch is currently documented. Until a patch is available, consider limiting exposure to untrusted TLS connections or implementing external controls to filter or limit certificate chain complexity. Monitor vendor communications for updates and apply official fixes once released.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- EEF
- Date Reserved
- 2026-07-04T04:24:03.653Z
- Cvss Version
- 4.0
- State
- PUBLISHED
Threat ID: 6a6786039c2644c7f861a50f
Added to database: 07/27/2026, 16:23:31 UTC
Last enriched: 07/30/2026, 00:11:41 UTC
Last updated: 09/10/2026, 20:02:52 UTC
Views: 62
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.