CVE-2026-55953: CWE-757 Selection of Less-Secure Algorithm During Negotiation ('Algorithm Downgrade') in Erlang OTP
The Erlang/OTP ssl TLS 1.2 (and earlier) and DTLS client does not verify that the cipher suite selected by the server in ServerHello was among the suites offered by the client in ClientHello. The client-side tls_handshake:hello/5 handler validates the negotiated protocol version and the downgrade sentinel but hands the server-chosen suite directly to ssl_handshake:handle_server_hello_extensions/9, which installs it without a membership check. The TLS 1.3 client path performs this check (per RFC 8446), so it is not affected. An on-path attacker between the client and the intended server can respond with a ServerHello selecting an anonymous key exchange suite such as TLS_DH_anon_* or TLS_ECDH_anon_* that the client never offered. Anonymous suites do not require the server to present a certificate, so the entire verify_peer and cacerts configuration is bypassed: the attacker completes the handshake with its own ephemeral parameters, no certificate is validated, no hostname is checked, and ssl:connect returns {ok, Socket}. All subsequent application traffic is readable and modifiable by the attacker. This issue affects OTP from OTP 17.0 before OTP 27.3.4.15, from OTP 28.0 before OTP 28.5.0.4, and from OTP 29.0 before OTP 29.0.4, corresponding to ssl from 5.3.4 before 11.2.12.11, from 11.3 before 11.6.0.4, and from 11.7 before 11.7.4. Whether OTP before OTP 17.0, corresponding to ssl before 5.3.4, is affected is unknown.
AI Analysis
Technical Summary
The Erlang/OTP SSL TLS 1.2 and earlier DTLS client fails to verify that the server-selected cipher suite in ServerHello was among those offered by the client in ClientHello. The client-side tls_handshake:hello/5 handler validates protocol version and downgrade sentinel but does not check cipher suite membership before passing it to ssl_handshake:handle_server_hello_extensions/9. This allows an on-path attacker to select anonymous key exchange suites (e.g., TLS_DH_anon_*, TLS_ECDH_anon_*) not offered by the client. Anonymous suites do not require server certificates, bypassing peer verification and certificate checks. Consequently, the attacker can complete the handshake with ephemeral parameters, intercept and modify all subsequent traffic. The TLS 1.3 client path is not affected as it performs this check per RFC 8446. Affected OTP versions include R13B03 before 27.3.4.15, 28.0 before 28.5.0.4, and 29.0 before 29.0.4, corresponding to ssl versions 3.10.7 before 11.2.12.11, 11.3 before 11.6.0.4, and 11.7 before 11.7.4. It is unknown if versions before R13B03 are affected.
Potential Impact
An on-path attacker can exploit this vulnerability to force the client to use an anonymous cipher suite that bypasses certificate validation, allowing the attacker to intercept, read, and modify all encrypted traffic between the client and server. This compromises confidentiality and integrity of communications without triggering certificate verification errors. The vulnerability affects TLS 1.2 and earlier DTLS clients in Erlang/OTP and does not impact TLS 1.3 clients.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. The vulnerability affects specific Erlang/OTP versions prior to OTP 27.3.4.15, 28.5.0.4, and 29.0.4. Users should monitor Erlang's official advisories for patches or updates addressing this issue. Until a patch is applied, avoid using vulnerable OTP versions in environments where on-path attackers are a concern.
CVE-2026-55953: CWE-757 Selection of Less-Secure Algorithm During Negotiation ('Algorithm Downgrade') in Erlang OTP
Description
The Erlang/OTP ssl TLS 1.2 (and earlier) and DTLS client does not verify that the cipher suite selected by the server in ServerHello was among the suites offered by the client in ClientHello. The client-side tls_handshake:hello/5 handler validates the negotiated protocol version and the downgrade sentinel but hands the server-chosen suite directly to ssl_handshake:handle_server_hello_extensions/9, which installs it without a membership check. The TLS 1.3 client path performs this check (per RFC 8446), so it is not affected. An on-path attacker between the client and the intended server can respond with a ServerHello selecting an anonymous key exchange suite such as TLS_DH_anon_* or TLS_ECDH_anon_* that the client never offered. Anonymous suites do not require the server to present a certificate, so the entire verify_peer and cacerts configuration is bypassed: the attacker completes the handshake with its own ephemeral parameters, no certificate is validated, no hostname is checked, and ssl:connect returns {ok, Socket}. All subsequent application traffic is readable and modifiable by the attacker. This issue affects OTP from OTP 17.0 before OTP 27.3.4.15, from OTP 28.0 before OTP 28.5.0.4, and from OTP 29.0 before OTP 29.0.4, corresponding to ssl from 5.3.4 before 11.2.12.11, from 11.3 before 11.6.0.4, and from 11.7 before 11.7.4. Whether OTP before OTP 17.0, corresponding to ssl before 5.3.4, is affected is unknown.
CVSS v4.0
Score 9.1critical
Affected software
Erlang
OTP
pkg:github/sslcpe: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
The Erlang/OTP SSL TLS 1.2 and earlier DTLS client fails to verify that the server-selected cipher suite in ServerHello was among those offered by the client in ClientHello. The client-side tls_handshake:hello/5 handler validates protocol version and downgrade sentinel but does not check cipher suite membership before passing it to ssl_handshake:handle_server_hello_extensions/9. This allows an on-path attacker to select anonymous key exchange suites (e.g., TLS_DH_anon_*, TLS_ECDH_anon_*) not offered by the client. Anonymous suites do not require server certificates, bypassing peer verification and certificate checks. Consequently, the attacker can complete the handshake with ephemeral parameters, intercept and modify all subsequent traffic. The TLS 1.3 client path is not affected as it performs this check per RFC 8446. Affected OTP versions include R13B03 before 27.3.4.15, 28.0 before 28.5.0.4, and 29.0 before 29.0.4, corresponding to ssl versions 3.10.7 before 11.2.12.11, 11.3 before 11.6.0.4, and 11.7 before 11.7.4. It is unknown if versions before R13B03 are affected.
Potential Impact
An on-path attacker can exploit this vulnerability to force the client to use an anonymous cipher suite that bypasses certificate validation, allowing the attacker to intercept, read, and modify all encrypted traffic between the client and server. This compromises confidentiality and integrity of communications without triggering certificate verification errors. The vulnerability affects TLS 1.2 and earlier DTLS clients in Erlang/OTP and does not impact TLS 1.3 clients.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. The vulnerability affects specific Erlang/OTP versions prior to OTP 27.3.4.15, 28.5.0.4, and 29.0.4. Users should monitor Erlang's official advisories for patches or updates addressing this issue. Until a patch is applied, avoid using vulnerable OTP versions in environments where on-path attackers are a concern.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- EEF
- Date Reserved
- 2026-06-17T17:55:15.686Z
- Cvss Version
- 4.0
- State
- PUBLISHED
Threat ID: 6a677b469c2644c7f8512882
Added to database: 07/27/2026, 15:37:42 UTC
Last enriched: 08/06/2026, 15:56:17 UTC
Last updated: 09/10/2026, 18:10:37 UTC
Views: 116
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.