TLS 1.3 server denial of service via malformed ClientHello pre-shared key extension (Erlang OTP)
At a glance
- Source
- NVD
- EPSS
- EPSS 0.48 % · percentile 41 ()
- State
- PUBLISHED
- Published
- Updated
- Assigner
- EEF
- NVD status
- Modified
Description
The Erlang/OTP ssl application does not validate that the PSK identity list and binder list carried in a TLS 1.3 ClientHello pre-shared key extension have equal length before passing them to the session ticket handler. In tls_handshake_1_3:handle_pre_shared_key/3, an OfferedPreSharedKeys record with a mismatched number of identities and binders is forwarded directly to tls_server_session_ticket:use/4, which crashes the session ticket handler process. An unauthenticated remote attacker can send a single crafted ClientHello to a TLS 1.3 server with session tickets enabled (stateful or stateless mode) and permanently disrupt session ticket handling on that listener. New TLS 1.3 handshakes complete but subsequently crash when the server attempts to issue a session ticket, effectively making TLS 1.3 unusable on the affected listener until the ssl application is restarted. TLS 1.2 connections are not affected. This issue affects OTP from OTP 22.2 before OTP 29.0.3, OTP 28.5.0.3 and OTP 27.3.4.14, corresponding to ssl from 9.5 before 11.7.3, 11.6.0.3 and 11.2.12.10.
Weaknesses (CWE)
- CWE-1284 — Improper Validation of Specified Quantity in Input
References
- https://github.com/erlang/otp/security/advisories/GHSA-8c57-44c9-pc59
- https://cna.erlef.org/cves/CVE-2026-55952.html
- https://osv.dev/vulnerability/EEF-CVE-2026-55952
- https://www.erlang.org/doc/system/versions.html#order-of-versions
- https://github.com/erlang/otp/commit/e77823e6d980b2ec0b4fe4ea3f2d098ca239e3ce
- https://github.com/erlang/otp/commit/2c3e599797644310e5d4aa39c7193420e59dadff
- https://github.com/erlang/otp/commit/9b5437c72fa3403a75c1aba28e5c532bc191c662
Scores
| Version | Score | Vector | Scored by |
|---|---|---|---|
| CVSS 4.0 | HIGH 8.2 | CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N | EEF |
| CVSS 4.0 | HIGH 8.2 | CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X | NVD · 6b3ad84c-e1a6-4bf7-a703-f496b71e49db (Secondary) |
| CVSS 3.1 | HIGH 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | NVD · nvd@nist.gov (Primary) |
European references
- ENISA EUVD · EUVD-2026-41412
- GCVE · GCVE-0-2026-55952
Affected configurations (NVD CPE)
cpe:2.3:a:erlang:erlang\/otp:*:*:*:*:*:*:*:*≥ 22.2 < 27.3.4.14cpe:2.3:a:erlang:erlang\/otp:*:*:*:*:*:*:*:*≥ 28.0 < 28.5.0.3cpe:2.3:a:erlang:erlang\/otp:*:*:*:*:*:*:*:*≥ 29.0 < 29.0.3cpe:2.3:a:erlang:erlang\/ssl:*:*:*:*:*:*:*:*≥ 9.5 < 11.2.12.10cpe:2.3:a:erlang:erlang\/ssl:*:*:*:*:*:*:*:*≥ 11.3 < 11.6.0.3cpe:2.3:a:erlang:erlang\/ssl:*:*:*:*:*:*:*:*≥ 11.7 < 11.7.3
Affected products
| Product | Versions |
|---|---|
| Erlang · OTP | affected 9.5 < * |
| Erlang · OTP | affected 22.2 < * ; affected 339a279f02ce38a7b23010e56000613e19abb21f < * |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |