CVE-2026-55950
Awaiting Analysis Awaiting Analysis - Queue

DTLS Listener Crash via TOCTOU Race Condition in Erlang/OTP ssl

Vulnerability report for CVE-2026-55950, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-07-02

Last updated on: 2026-07-02

Assigner: EEF

Description

Time-of-check Time-of-use (TOCTOU) race condition vulnerability in Erlang/OTP ssl (dtls_packet_demux module) allows an unauthenticated remote attacker to crash all active DTLS sessions on a listener. A DTLS server listener uses a single shared dtls_packet_demux gen_server process to route incoming UDP datagrams to the correct connection handler. When a DTLS client reconnects rapidly from the same source address and port (sending multiple ClientHello messages in quick succession), a race condition in the demux's internal gb_trees key-value store causes a {key_exists, {old, Client}} crash, terminating the demux process. Because the demux is shared across all DTLS associations on that listener, its crash immediately kills every active DTLS session, not just the attacker's. The attack is pre-authentication: the attacker only needs to send UDP datagrams containing valid ClientHello messages from the same source IP and port before the intermediate DOWN monitor message is processed by the gen_server. No credentials, no completed handshake, and no special configuration are required, and the crash can be repeated indefinitely to create a persistent denial of service for all clients of that listener. This vulnerability is associated with program file lib/ssl/src/dtls_packet_demux.erl. This issue affects OTP from OTP 25.3 before 29.0.3, 28.5.0.3, and 27.3.4.14 corresponding to ssl from 10.9 before 11.7.3, 11.6.0.3, and 11.2.12.10.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-07-02
Last Modified
2026-07-02
Generated
2026-07-03
AI Q&A
2026-07-02
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 12 associated CPEs
Vendor Product Version / Range
erlang otp From 25.3 (inc) to 29.0.3 (exc)
erlang ssl From 10.9 (inc) to 11.7.3 (exc)
erlang otp to 28.5.0.3 (inc)
erlang otp to 27.3.4.14 (inc)
erlang ssl to 11.6.0.3 (inc)
erlang ssl to 11.2.12.10 (inc)
erlang otp to 29.0.3 (exc)
erlang otp 28.5.0.3
erlang otp 27.3.4.14
erlang ssl to 11.7.3 (exc)
erlang ssl 11.6.0.3
erlang ssl 11.2.12.10

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-367 The product checks the state of a resource before using that resource, but the resource's state can change between the check and the use in a way that invalidates the results of the check.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

CVE-2026-55950 is a time-of-check time-of-use (TOCTOU) race condition vulnerability in the Erlang/OTP ssl library's dtls_packet_demux module. This module handles routing of incoming UDP datagrams to the correct DTLS connection handler on a server listener.

The vulnerability occurs when a DTLS client rapidly reconnects from the same source IP address and port, sending multiple ClientHello messages in quick succession. This triggers a race condition in the internal key-value store of the demux process, causing it to crash with a {key_exists, {old, Client}} error.

Because the dtls_packet_demux gen_server process is shared among all DTLS sessions on that listener, its crash terminates all active DTLS sessions, not just the attacker's. The attack requires no authentication or completed handshake and can be repeated indefinitely to cause persistent denial of service.

Impact Analysis

This vulnerability can cause a denial of service (DoS) condition on DTLS servers using Erlang/OTP. An unauthenticated remote attacker can crash the shared dtls_packet_demux process by sending multiple rapid ClientHello messages from the same source IP and port.

The crash of this shared process immediately terminates all active DTLS sessions on the listener, disrupting service for all connected clients, not just the attacker.

Because the attack requires no credentials or completed handshake, it can be executed from untrusted networks and repeated indefinitely, resulting in persistent denial of service and loss of availability.

Detection Guidance

This vulnerability involves a race condition in the Erlang/OTP DTLS server's dtls_packet_demux gen_server process that crashes when multiple ClientHello messages are sent rapidly from the same source IP and port. Detection would involve monitoring for repeated crashes or restarts of the dtls_packet_demux process or observing denial of service symptoms affecting all active DTLS sessions on a listener.

Since the vulnerability is triggered by rapid reconnections sending multiple ClientHello messages from the same source address and port, network monitoring tools could be used to detect unusual bursts of UDP datagrams containing ClientHello messages to the DTLS server.

However, the provided resources do not include specific detection commands or scripts.

Mitigation Strategies

The primary mitigation is to upgrade Erlang/OTP and the ssl library to the patched versions that fix this vulnerability. The issue is resolved in OTP versions 29.0.3, 28.5.0.3, and 27.3.4.14, and corresponding ssl versions 11.7.3, 11.6.0.3, and 11.2.12.10.

Applying the security fix involves updating the dtls_packet_demux.erl file where the function call was changed from kv_insert to kv_enter to properly handle the race condition.

Until the upgrade can be applied, consider monitoring and limiting rapid repeated DTLS ClientHello messages from the same source IP and port to reduce the risk of triggering the denial of service.

Compliance Impact

The vulnerability causes a denial of service (DoS) by crashing all active DTLS sessions on a listener, which leads to loss of availability of the affected service.

Loss of availability can impact compliance with standards and regulations such as GDPR and HIPAA, which require maintaining availability and integrity of systems that process sensitive or personal data.

However, the provided information does not explicitly describe direct effects on data confidentiality or integrity, nor does it specify compliance impacts with these regulations.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-55950. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart