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.10, FreeSWITCH allows authorized users to cause a denial of service attack by sending re-INVITE with SDP containing duplicate codec names. When a call in FreeSWITCH completes codec negotiation, the `codec_string` channel variable is set with the result of the negotiation. On a subsequent re-negotiation, if an SDP is offered that contains codecs with the same names but with different formats, there may be too many codec matches detected by FreeSWITCH leading to overflows of its internal arrays. By abusing this vulnerability, an attacker is able to corrupt stack of FreeSWITCH leading to an undefined behavior of the system or simply crash it. Version 1.10.10 contains a patch for this issue.
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.10

Vulnerable and fixed packages

Source package Branch Version Maintainer Status
freeswitch 3.18-main 1.10.9-r2 Natanael Copa <> possibly vulnerable
freeswitch 3.17-main 1.10.8-r0 Natanael Copa <> possibly vulnerable
freeswitch 3.16-main 1.10.7-r2 Natanael Copa <> possibly vulnerable
freeswitch 3.15-main 1.10.7-r0 Natanael Copa <> possibly vulnerable
freeswitch edge-main 1.10.9-r5 Natanael Copa <> possibly vulnerable