CVE-2026-105236
TLS 1.2 session resumption in ssl crosses SNI virtual-host client-certificate trust boundaries
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.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- Low
- Integrity
- Low
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
6.3
TLS 1.2 session resumption in ssl crosses SNI virtual-host client-certificate trust boundaries
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.
- Record
CVE-2026-105236- CVSS 4.0
- 6.3 Medium
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-295
- Updated
- 2026-11-02
EUVDEUVD-2026-101387
6.3
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.
- Record
EUVD-2026-101387- CVSS 4.0
- 6.3 Medium
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N - Updated
- 2026-11-02
NVD
6.3
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.
- Record
CVE-2026-105236- CVSS 4.0
- 6.3 Medium
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/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 - Weakness
- CWE-295
- Updated
- 2026-11-02
OSV
6.3
TLS 1.2 session resumption in ssl crosses SNI virtual-host client-certificate trust boundaries
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.
- Record
CVE-2026-105236- CVSS 4.0
- 6.3 Medium
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-295
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2026-105236
6.3
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.
- Record
DEBIAN-CVE-2026-105236- CVSS 4.0
- 6.3 Medium
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/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 - Updated
- 2026-11-03
OSVEEF-CVE-2026-105236
6.3
TLS 1.2 session resumption in ssl crosses SNI virtual-host client-certificate trust boundaries
Summary
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.
Details
1. One session cache per listener. tls_socket:listen/3 starts one pre-TLS 1.3 session-ID tracker per listen socket via session_id_tracker/2. Every SNI virtual host served from that socket shares it, and the cached #session{} record stores the peer and server certificates but no SNI name and no client trust policy.
2. The SNI option set inherits session reuse. When the ClientHello carries a server name, ssl_gen_statem:handle_sni_extension/2 and handle_sni_hostname/2 call update_ssl_options_from_sni/2, which passes the base listener options as fallback into ssl_config:update_options/3. The base listener's verify_none has already produced reuse_sessions = true. ssl_config:opt_reuse_sessions/3 computes a false default for verify_peer, but get_opt_bool/4 finds the inherited value and keeps it when the SNI option list does not mention reuse_sessions.
3. Resumption does not revalidate the peer certificate. On an abbreviated handshake ssl_handshake:select_session/8 calls ssl_session:server_select_session/5, which accepts the cached session when ssl_session:is_resumable/4 finds that it is marked resumable, that is_owncert/2 matches one of the current server certificates, that reusable_options/2 sees any cached peer certificate when fail_if_no_peer_cert is set, and that the reuse_session fun agrees. Nothing compares the ClientHello server name with the name that created the session, and the cached peer certificate is not validated against the CA selected for the new name.
4. Result. A client whose certificate chains to the lower-trust name's CA completes a full handshake there, then presents the same session ID with the higher-trust server name. The server resumes the session, reports session_resumption as true and the low-trust peer certificate through ssl:peercert/1, and the application behind the protected name sees an authenticated mTLS peer. is_owncert/2 is why both names must share a server certificate.
Proof of concept
- Create one server certificate with subject alternative names
low.testandhigh.test, two self-signed client CAs (low-ca,high-ca), and one client certificate signed bylow-ca. - Start an
ssl:listen/2server on TLS 1.2 with{verify, verify_none}and ansni_funthat returns{verify, verify_peer},{fail_if_no_peer_cert, true}and thelow-caorhigh-cacacertfilefor the respective name. Do not setreuse_sessionsanywhere. - Connect with
openssl s_client -servername high.test -tls1_2 -no_ticketusing the low client certificate. The server rejects the handshake withunknown_ca.…
- Record
EEF-CVE-2026-105236- CVSS 4.0
- 6.3 Medium
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-295
- Updated
- 2026-11-02
OSVRHSA-2026:83217
5.9
Red Hat Security Advisory: Red Hat Hardened Images RPMs bug fix and enhancement update
- Record
RHSA-2026:83217- CVSS 3.1
- 5.9 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-105236
6.3
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.
- Record
UBUNTU-CVE-2026-105236- CVSS 4.0
- 6.3 Medium
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N - Updated
- 2026-11-02
OSVAZL-108201 No score
CVE-2026-105236 affecting package erlang for versions less than 26.2.5.21-8
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.
- Record
AZL-108201- Updated
- 2026-11-05
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
erlangAzure Linux:3 |
before 26.2.5.21-8 | 26.2.5.21-8 |
erlangDebian:12 |
All versions, plus listed versions 1:25.2.3+dfsg-11:25.2.3+dfsg-1+deb12u11:25.2.3+dfsg-1+deb12u21:25.2.3+dfsg-1+deb12u31:25.2.3+dfsg-1+deb12u4 Show 45 moreShow less1:25.3.2.10+dfsg-11:25.3.2.10+dfsg-21:25.3.2.11+dfsg-11:25.3.2.12+dfsg-11:25.3.2.12+dfsg-21:25.3.2.12+dfsg-31:25.3.2.8+dfsg-11:26.0+dfsg-11:26.0.1+dfsg-11:26.0.2+dfsg-11:26.0~rc2+dfsg-11:26.0~rc3+dfsg-11:26.1.2+dfsg-11:26.2.1+dfsg-11:26.2.4+dfsg-11:27.0+dfsg-11:27.0.1+dfsg-11:27.0.1+dfsg-21:27.0.1+dfsg-31:27.0~rc3+dfsg-11:27.0~rc3+dfsg-21:27.0~rc3+dfsg-31:27.0~rc3+dfsg-41:27.1.2+dfsg-11:27.2+dfsg-11:27.2+dfsg-21:27.2+dfsg-3~exp11:27.2.1+dfsg-11:27.2.1+dfsg-21:27.2.2+dfsg-11:27.2.3+dfsg-11:27.2.4+dfsg-11:27.3+dfsg-11:27.3.1+dfsg-11:27.3.2+dfsg-11:27.3.3+dfsg-11:27.3.4+dfsg-11:27.3.4.1+dfsg-11:27.3.4.10+dfsg-11:27.3.4.11+dfsg-11:27.3.4.11+dfsg-21:27.3.4.11+dfsg-31:27.3.4.11+dfsg-41:27.3.4.11+dfsg-51:27.3.4.11+dfsg-6 |
None known |
erlangDebian:13 |
All versions, plus listed versions 1:27.3.4.1+dfsg-11:27.3.4.1+dfsg-1+deb13u11:27.3.4.1+dfsg-1+deb13u21:27.3.4.1+dfsg-1+deb13u31:27.3.4.1+dfsg-1+deb13u4 Show 38 moreShow less1:27.3.4.10+dfsg-11:27.3.4.11+dfsg-11:27.3.4.11+dfsg-21:27.3.4.11+dfsg-31:27.3.4.11+dfsg-41:27.3.4.11+dfsg-51:27.3.4.11+dfsg-61:27.3.4.11+dfsg-71:27.3.4.12+dfsg-11:27.3.4.3+dfsg-11:27.3.4.4+dfsg-11:27.3.4.6+dfsg-11:27.3.4.8+dfsg-11:27.3.4.9+dfsg-11:28.0+dfsg-11:28.0.1+dfsg-11:28.0.2+dfsg-11:28.0.4+dfsg-11:28.1.1+dfsg-11:28.2+dfsg-11:28.3+dfsg-11:28.3.1+dfsg-11:29.0+dfsg-11:29.0+dfsg-21:29.0.1+dfsg-11:29.0.2+dfsg-11:29.0.3+dfsg-11:29.0.4+dfsg-11:29.0.6+dfsg-11:29.0~rc1+dfsg-11:29.0~rc1+dfsg-21:29.0~rc2+dfsg-11:29.0~rc3+dfsg-11:29.0~rc3+dfsg-21:29.0~rc3+dfsg-31:29.0~rc3+dfsg-41:29.1.1+dfsg-11:29.1.2+dfsg-1 |
None known |
erlangDebian:14 |
before 1:29.1.2+dfsg-1, plus listed versions 1:27.3.4.1+dfsg-11:27.3.4.10+dfsg-11:27.3.4.11+dfsg-11:27.3.4.11+dfsg-21:27.3.4.11+dfsg-3 Show 33 moreShow less1:27.3.4.11+dfsg-41:27.3.4.11+dfsg-51:27.3.4.11+dfsg-61:27.3.4.11+dfsg-71:27.3.4.12+dfsg-11:27.3.4.3+dfsg-11:27.3.4.4+dfsg-11:27.3.4.6+dfsg-11:27.3.4.8+dfsg-11:27.3.4.9+dfsg-11:28.0+dfsg-11:28.0.1+dfsg-11:28.0.2+dfsg-11:28.0.4+dfsg-11:28.1.1+dfsg-11:28.2+dfsg-11:28.3+dfsg-11:28.3.1+dfsg-11:29.0+dfsg-11:29.0+dfsg-21:29.0.1+dfsg-11:29.0.2+dfsg-11:29.0.3+dfsg-11:29.0.4+dfsg-11:29.0.6+dfsg-11:29.0~rc1+dfsg-11:29.0~rc1+dfsg-21:29.0~rc2+dfsg-11:29.0~rc3+dfsg-11:29.0~rc3+dfsg-21:29.0~rc3+dfsg-31:29.0~rc3+dfsg-41:29.1.1+dfsg-1 |
1:29.1.2+dfsg-1 |
erlang27Red Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-asn1Red Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-common_testRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-compilerRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-cryptoRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-debuggerRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
Show 41 moreShow less
| Package | Affected | Fixed |
|---|---|---|
erlang27-dialyzerRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-diameterRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-edocRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-eldapRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-erl_interfaceRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-ertsRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-etRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-eunitRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-examplesRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-ftpRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-gdb-toolsRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-inetsRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-jinterfaceRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-kernelRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-megacoRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-mnesiaRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-observerRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-odbcRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-os_monRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-parsetoolsRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-public_keyRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-reltoolRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-runtime_toolsRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-saslRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-snmpRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-sshRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-sslRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-stdlibRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-syntax_toolsRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-tftpRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-toolsRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-wxRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlang27-xmerlRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:27.3.4.19-0.1.hum1 | 0:27.3.4.19-0.1.hum1 |
erlangUbuntu:Pro:14.04:LTS |
All versions, plus listed versions 1:16.b.1-dfsg-4ubuntu11:16.b.2-dfsg-1ubuntu11:16.b.2-dfsg-2ubuntu11:16.b.3-dfsg-1ubuntu11:16.b.3-dfsg-1ubuntu2 Show 5 moreShow less1:16.b.3-dfsg-1ubuntu2.11:16.b.3-dfsg-1ubuntu2.21:16.b.3-dfsg-1ubuntu2.2+esm11:16.b.3-dfsg-1ubuntu2.2+esm21:16.b.3-dfsg-1ubuntu2.2+esm3 |
None known |
erlangUbuntu:Pro:16.04:LTS |
All versions, plus listed versions 1:18.0-dfsg-1ubuntu11:18.0-dfsg-1ubuntu21:18.2-dfsg-2ubuntu11:18.3-dfsg-1ubuntu11:18.3-dfsg-1ubuntu2 Show 6 moreShow less1:18.3-dfsg-1ubuntu31:18.3-dfsg-1ubuntu3.11:18.3-dfsg-1ubuntu3.1+esm11:18.3-dfsg-1ubuntu3.1+esm21:18.3-dfsg-1ubuntu3.1+esm31:18.3-dfsg-1ubuntu3.1+esm4 |
None known |
erlangUbuntu:Pro:18.04:LTS |
All versions, plus listed versions 1:20.0.4+dfsg-1ubuntu11:20.1.2+dfsg-1ubuntu11:20.1.3+dfsg-1ubuntu11:20.1.4+dfsg-1ubuntu11:20.1.5+dfsg-1ubuntu1 Show 9 moreShow less1:20.1.6+dfsg-1ubuntu11:20.1.7+dfsg-1ubuntu11:20.2.1+dfsg-1ubuntu11:20.2.2+dfsg-1ubuntu11:20.2.2+dfsg-1ubuntu21:20.2.2+dfsg-1ubuntu2+esm11:20.2.2+dfsg-1ubuntu2+esm21:20.2.2+dfsg-1ubuntu2+esm31:20.2.2+dfsg-1ubuntu2+esm4 |
None known |
erlangUbuntu:Pro:20.04:LTS |
All versions, plus listed versions 1:22.0.7+dfsg-1build11:22.2+dfsg-11:22.2.1+dfsg-11:22.2.2+dfsg-11:22.2.3+dfsg-1 Show 10 moreShow less1:22.2.3+dfsg-21:22.2.4+dfsg-11:22.2.7+dfsg-11:22.2.7+dfsg-1ubuntu0.21:22.2.7+dfsg-1ubuntu0.31:22.2.7+dfsg-1ubuntu0.41:22.2.7+dfsg-1ubuntu0.51:22.2.7+dfsg-1ubuntu0.5+esm11:22.2.7+dfsg-1ubuntu0.5+esm21:22.2.7+dfsg-1ubuntu0.5+esm3 |
None known |
erlangUbuntu:22.04:LTS |
All versions, plus listed versions 1:23.2.6+dfsg-1build11:24.1.1+dfsg-11:24.1.4+dfsg-11:24.1.5+dfsg-11:24.1.5+dfsg-1ubuntu1 Show 10 moreShow less1:24.2+dfsg-11:24.2.1+dfsg-11:24.2.1+dfsg-1ubuntu0.11:24.2.1+dfsg-1ubuntu0.21:24.2.1+dfsg-1ubuntu0.31:24.2.1+dfsg-1ubuntu0.41:24.2.1+dfsg-1ubuntu0.51:24.2.1+dfsg-1ubuntu0.61:24.2.1+dfsg-1ubuntu0.71:24.2.1+dfsg-1ubuntu0.8 |
None known |
erlangUbuntu:24.04:LTS |
All versions, plus listed versions 1:25.2.3+dfsg-11:25.3.2.8+dfsg-11:25.3.2.8+dfsg-1ubuntu11:25.3.2.8+dfsg-1ubuntu31:25.3.2.8+dfsg-1ubuntu4 Show 8 moreShow less1:25.3.2.8+dfsg-1ubuntu4.11:25.3.2.8+dfsg-1ubuntu4.21:25.3.2.8+dfsg-1ubuntu4.31:25.3.2.8+dfsg-1ubuntu4.41:25.3.2.8+dfsg-1ubuntu4.51:25.3.2.8+dfsg-1ubuntu4.61:25.3.2.8+dfsg-1ubuntu4.71:25.3.2.8+dfsg-1ubuntu4.8 |
None known |
erlangUbuntu:26.10 |
All versions, plus listed versions 1:27.3.4.6+dfsg-11:27.3.4.12+dfsg-11:29.0.6+dfsg-1 |
None known |
erlangUbuntu:26.04:LTS |
All versions, plus listed versions 1:27.3.4.1+dfsg-1build11:27.3.4.3+dfsg-11:27.3.4.4+dfsg-11:27.3.4.6+dfsg-11:27.3.4.6+dfsg-1ubuntu0.11:27.3.4.6+dfsg-1ubuntu0.2 |
None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected | ||
| facts | OSV | |
| affected | OSV | |
| first indexed | CVE List, EUVD, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-105236 is a medium vulnerability (CVSS 6.3) in Erlang Otp, published October 14, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.36%, the 29th percentile. Fixed in erlang 26.2.5.21-8.
References
github.com/erlang/otp/security/advisories/GHSA-2g23-cgjh-34gq
cna.erlef.org/cves/CVE-2026-105236.html
osv.dev/vulnerability/EEF-CVE-2026-105236
erlang.org/doc/system/versions.html
github.com/erlang/otp/commit/4fe38c4b8b2c8024afb60990e598ff823743fd54
github.com/erlang/otp/commit/0c20f3683b3c81fd30b46047195be9b3d2c69d76
Show 26 moreShow less
github.com/erlang/otp/commit/4d76adbf39d547a931048544df09c3c087e56618
github.com/erlang/otp/commit/10ee925d0fee8413f1170cc21bfcf123c8d22454
nvd.nist.gov/vuln/detail/CVE-2026-105236
github.com
github.com/CVEProject/cvelistV5/tree/main/cves/2026/105xxx/CVE-2026-105236.json
github.com/erlang/otp
security-tracker.debian.org/tracker/CVE-2026-105236
access.redhat.com/errata/RHSA-2026:83217
images.redhat.com
access.redhat.com/security/cve/CVE-2026-94200
access.redhat.com/security/updates/classification
access.redhat.com/security/cve/CVE-2026-105236
security.access.redhat.com/data/csaf/v2/advisories/2026/rhsa-2026_83217.json
bugzilla.redhat.com/show_bug.cgi?id=2552615
cve.org/CVERecord?id=CVE-2026-94200
nvd.nist.gov/vuln/detail/CVE-2026-94200
cna.erlef.org/cves/CVE-2026-94200.html
github.com/erlang/otp/commit/00a333bcf2800b69f540369b54167e897dae7219
github.com/erlang/otp/commit/0abe6f66db0d295cd06b0efab3bdb3caa2803930
github.com/erlang/otp/commit/66febc190e6dc42a5c4aedbfe250bf9a2edc2d5e
github.com/erlang/otp/commit/cd0334854bf3ef56dc16f9fb728efe88fb05c4ac
github.com/erlang/otp/security/advisories/GHSA-m5mh-q53w-67jq
osv.dev/vulnerability/EEF-CVE-2026-94200
bugzilla.redhat.com/show_bug.cgi?id=2552595
cve.org/CVERecord?id=CVE-2026-105236
ubuntu.com/security/CVE-2026-105236
Left out here: 31 versions and the rest of 1 source description. The JSON record has them.