# CVE-2026-49840: SignalWire FreeSWITCH heap buffer overflow in libesl Content-Length parsing

Source: https://junglewise.ai/threats/cve-2026-49840-signalwire-freeswitch-heap-buffer-overflow-in-libesl-content  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-06-09. Updated: 2026-06-09  
License: CC BY 4.0 with a link back

CVE-2026-49840 · Severity: critical · CVSS 9.1 · Published 2026-06-09

FreeSWITCH is an open-source telephony platform used for building communication systems like VoIP and PBX. A vulnerability in its Event Socket Library (libesl) allows a malicious server or a man-in-the-middle attacker to crash or corrupt the memory of applications that connect to it. This can lead to service outages or unauthorized system manipulation before any authentication takes place.

Technologies: [SignalWire FreeSWITCH](https://junglewise.ai/threats/technologies/freeswitch). Vendors: [SignalWire](https://junglewise.ai/threats/vendors/signalwire).

## Quick answers

**Is CVE-2026-49840 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-49840 being exploited in the wild.

**How severe is CVE-2026-49840?** Critical severity, with a CVSS score of 9.1, published 9 June 2026.

**Which products and versions are affected?** SignalWire FreeSWITCH <= 1.11.0.

**Is there a fix for CVE-2026-49840?** A patch was published on 2026-05-26: Version 1.11.1 released Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-49840 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2026-49840?** Check whether you run SignalWire FreeSWITCH at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## Technical details

A heap-based buffer overflow and signed-to-unsigned conversion error exist in the esl_recv_event() function of libesl. The function parses the 'Content-Length' header using atol() and passes the result to malloc() without validating the sign or magnitude. An attacker acting as an ESL peer can provide a negative value (e.g., -1), leading to a small allocation followed by an out-of-bounds write, or a larger negative value leading to a NULL pointer dereference and process crash. This occurs pre-authentication, affecting any tool linked against libesl such as fs_cli, mod_esl, and mod_hash. The issue is fixed in version 1.11.1 by implementing a 16 MiB cap and proper runtime checks.

## Affected products

- SignalWire FreeSWITCH <= 1.11.0

## Timeline

- 2026-05-26: patched: Version 1.11.1 released
- 2026-06-03: advisory: GitHub Security Advisory published
- 2026-06-09: disclosed: CVE published to NVD

## References

- [https://github.com/signalwire/freeswitch/releases/tag/v1.11.1](https://github.com/signalwire/freeswitch/releases/tag/v1.11.1)
- [https://github.com/signalwire/freeswitch/security/advisories/GHSA-g597-9fgg-ghg9](https://github.com/signalwire/freeswitch/security/advisories/GHSA-g597-9fgg-ghg9)

## Related threats

- [FreeSWITCH ICE integrity validation bypass](https://junglewise.ai/threats/cve-2026-116790-freeswitch-is-a-software-defined-telecom-stack-enabling-the)
- [FreeSWITCH DTLS fingerprint validation bypass in server role](https://junglewise.ai/threats/cve-2026-116789-freeswitch-is-a-software-defined-telecom-stack-enabling-the)
- [FreeSWITCH integer underflow in XML decode](https://junglewise.ai/threats/cve-2026-116788-freeswitch-is-an-open-source-software-telecommunications)
- [FreeSWITCH mod_event_socket denial of service via Content-Length](https://junglewise.ai/threats/cve-2026-116787-freeswitch-is-a-software-defined-telecom-stack-enabling-the)
- [FreeSWITCH command injection via SIP REFER URI parameters](https://junglewise.ai/threats/cve-2026-116786-freeswitch-is-a-software-defined-telecom-stack-enabling-the)
