TL;DR
The Erlang/OTP team fixed five security flaws across the runtime and its TLS stack. The most serious lets a network attacker bypass server certificate checks entirely. The rest can crash a BEAM node from the network, some before any login.
- Total: 5 CVEs
- Severity: 1 Critical · 4 High
- Actively exploited: None confirmed
- Highest severity: 9.1 (Critical · CVSSv4) — CVE-2026-55953
- Action: Apply the latest security updates now
Notable CVEs
| CVE | CVSS (CVSSv4) | Type | Fixed in | Status |
|---|---|---|---|---|
| CVE-2026-55953 | 9.1 | TLS 1.2 and DTLS client accepts unoffered anonymous cipher suite, bypassing server authentication | 11.7.4, 11.6.0.4, 11.2.12.11 (+6) | Not exploited |
| CVE-2026-58227 | 8.7 | TLS/DTLS denial of service via unbounded recursion on cross-signed peer certificate chain | 11.7.4, 11.6.0.4, 11.2.12.11 (+6) | Not exploited |
| CVE-2026-59251 | 8.7 | Denial of service via exponential certificate policy tree growth in path validation | 1.21.4, 1.20.3.4, 1.17.1.5 (+5) | Not exploited |
| CVE-2026-59250 | 8.3 | Megaco flex scanner buffer overflow via oversized property parm name | 4.9.1, 4.8.3.1, 4.7.2.2 (+4) | Not exploited |
| CVE-2026-54890 | 8.2 | BEAM VM crash via integer underflow in binary_to_term BIT_BINARY_EXT decoding | 15.2.7.11, 16.4.0.4, 17.0.4 (+4) | Not exploited |
Why it matters
Erlang/OTP powers messaging systems, databases, and telecom gear. RabbitMQ and many backends depend on it. Therefore, these Erlang/OTP vulnerabilities reach a wide base of production services. Four of the five need no authentication. One even undoes TLS trust on the wire.
National agencies have already flagged the wider advisory stream. The Canadian Centre for Cyber Security, among others, urges admins to patch Erlang releases quickly. That pressure reflects how central the runtime is to modern infrastructure.
How the attacks work
Certificate verification bypass (CVE-2026-55953)
This flaw scores 9.1, the highest of the set. A pre-1.3 TLS client fails to confirm that the server picked a cipher suite it actually offered. As a result, a man-in-the-middle can force an anonymous suite that needs no certificate. The attacker then reads and alters all traffic. TLS 1.3 stays safe.
Remote crashes and a code-execution risk
The other four cause denial of service. CVE-2026-54890 crashes the whole virtual machine with a tiny crafted term sent to binary_to_term. Supervision trees cannot catch it, and the [safe] option does not help either. CVE-2026-58227 abuses two cross-signed certificates to force endless recursion during chain building. CVE-2026-59251 blows up the certificate policy tree to drain CPU and memory. It mirrors an earlier OpenSSL bug, CVE-2023-0464. CVE-2026-59250 overflows a Megaco flex-scanner buffer with an oversized field. On older builds without FORTIFY, that overflow may even allow code execution.
Affected versions
The bugs span many release lines. The TLS issues reach back through OTP 17, while the cert-chain recursion bug dates to OTP 23.2. The term-decoding crash affects OTP 27 and later. Check the official Erlang/OTP security advisories for the exact range per application.
Patch and mitigation
Upgrade to a fixed build without delay. The patched trains include 27.3.4.15, 28.5.0.4, and 29.0.4, available on the Erlang/OTP releases page. Older maintained lines, such as 15 and 16, received parallel fixes as well.
Short-term workarounds also help. Prefer TLS 1.3, since it dodges the certificate bypass and the pre-1.3 cipher gap. Avoid binary_to_term on untrusted input, and reach for JSON or Protocol Buffers instead. For Megaco, swap the flex scanner for the Erlang scanner, and firewall the transport port. So far, no public exploit or in-the-wild abuse of these Erlang/OTP vulnerabilities has been confirmed.
Support Our Threat Intelligence
If you find our CVE report and cybersecurity news helpful, consider supporting our work.