Description
Improper Certificate Validation vulnerability in the ssl application in Erlang/OTP allows a client that holds a certificate trusted by one SNI virtual host to authenticate to a second SNI virtual host on the same listener by resuming its TLS 1.2 session there.
A server that serves several SNI names from one listen socket through sni_fun or sni_hosts keeps one pre-TLS 1.3 session cache per listener and does not bind a cached session to the SNI name or client trust policy that established it. When an SNI option set switches to verify_peer without naming reuse_sessions, ssl_config:update_options/3 inherits the base listener's reuse_sessions value of true, so the default that disables reuse for client-authenticating servers does not apply. On an abbreviated handshake ssl_session:is_resumable/4 checks only that the cached session uses one of the current server certificates and carries some peer certificate, and never revalidates that certificate against the CA selected for the requested name. The names must share a server certificate, which is common with wildcard or multi-SAN certificates. TLS 1.3 does not use this cache and is not affected.
This issue affects OTP from OTP 18.0 before OTP 27.3.4.19, OTP 28.5.0.8, and OTP 29.1.2, corresponding to ssl from 7.0 before 11.2.12.14, 11.6.0.7, and 11.7.8.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| Erlang | OTP | 18.0, 7.0 | — |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | erlang | 1:29.1.2+dfsg-1 | — |
| Debian 13 | erlang | No fix yet | — |
| Debian 12 | erlang | No fix yet | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.10 | erlang | No fix yet | — |
| Ubuntu 26.04 LTS | erlang | No fix yet | — |
| Ubuntu 24.04 LTS | erlang | No fix yet | — |
| Ubuntu 22.04 LTS | erlang | No fix yet | — |
Show 4 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu Pro 20.04 LTS | erlang | No fix yet | — |
| Ubuntu Pro 18.04 LTS | erlang | No fix yet | — |
| Ubuntu Pro 16.04 LTS | erlang | No fix yet | — |
| Ubuntu Pro 14.04 LTS | erlang | No fix yet | — |
Red Hat
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Red Hat Hardened Images 1 | erlang27 +38 | 27.3.4.19-0.1.hum1 | RHSA-2026:83217 |
Azure Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Azure Linux 3 | erlang | 26.2.5.21-8 | — |
Advisories 2
- WID-SEC-2026-3964 Erlang/OTP: Mehrere Schwachstellen BSI CERT-Bund (WID) · Nov 2, 2026
- RHSA-2026:83217 Red Hat Security Advisory: Red Hat Hardened Images RPMs bug fix and enhancement update Red Hat Security Advisories (RHSA) · Oct 20, 2026
References
- GitHub Advisory related vendor-advisory
- EEF CNA record for CVE-2026-105236 related
- OSV record EEF-CVE-2026-105236 related
- Erlang/OTP version ordering
- Introducing commit 4fe38c4 in erlang/otp related
- Fix commit 0c20f36 in erlang/otp patch
- Fix commit 4d76adb in erlang/otp patch
- Fix commit 10ee925 in erlang/otp patch