FreeSWITCH is a Software Defined Telecom Stack enabling the digital transformation from proprietary telecom switches to a software implementation that runs on any commodity hardware. Prior to version 1.10.11, when handling DTLS-SRTP for media setup, FreeSWITCH is susceptible to Denial of Service due to a race condition in the hello handshake phase of the DTLS protocol. This attack can be done continuously, thus denying new DTLS-SRTP encrypted calls during the attack. If an attacker manages to send a ClientHello DTLS message with an invalid CipherSuite (such as `TLS_NULL_WITH_NULL_NULL`) to the port on the FreeSWITCH server that is expecting packets from the caller, a DTLS error is generated. This results in the media session being torn down, which is followed by teardown at signaling (SIP) level too. Abuse of this vulnerability may lead to a massive Denial of Service on vulnerable FreeSWITCH servers for calls that rely on DTLS-SRTP. To address this vulnerability, upgrade FreeSWITCH to 1.10.11 which includes the security fix. The solution implemented is to drop all packets from addresses that have not been validated by an ICE check.
NVD Severity
Other trackers
Mailing lists
GitHub (code, issues), Aports (code, issues)


Type URI

Match rules

CPE URI Source package Min version Max version
cpe:2.3:a:freeswitch:freeswitch:*:*:*:*:*:*:*:* freeswitch >= None < 1.10.11

Vulnerable and fixed packages

Source package Branch Version Maintainer Status
freeswitch 3.16-main 1.10.10-r0 Natanael Copa <> possibly vulnerable
freeswitch 3.19-main 1.10.11-r0 Natanael Copa <> fixed
freeswitch 3.20-main 1.10.11-r0 Natanael Copa <> fixed
freeswitch 3.18-main 1.10.11-r0 Natanael Copa <> fixed
freeswitch 3.17-main 1.10.11-r0 Natanael Copa <> fixed