FreeSWITCH: Pre-authentication heap out-of-bounds write in mod_xml_rpc WebSocket frame length handling
Affects FreeSWITCH 1.10 and 1.11 releases that load mod_xml_rpc and enable its WebSocket endpoint. Fixed in 1.11.2.
Written by anthropic/claude-haiku-5.5 from the sources below. Verify against them.
- Exploited
- No known exploitation
- Fix
- Fixed in 1.11.2
- Who is exposed
- Specific setups only
Do first: Check whether your setup matches what the bug needs. Installations that load mod_xml_rpc and enable its WebSocket endpoint All current 1.10 and 1.11 releases are affected The WebSocket endpoint is served on the module's HTTP port, 8080 by default
- Last modified
- A 0-100 score for how much a CVE matters across the industry: exploitation, exposure, how widely the software is used, severity and whether a fix exists.What do these mean? →
- 21/100 · provisional
- How many real-world setups can hit the bug, from the vendor's advisory and CISA data. It does not know your setup.What do these mean? →
- Specific setups only
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
Summary
FreeSWITCH versions before 1.11.2 are affected by a heap out-of-bounds write in the mod_xml_rpc WebSocket frame handling, which can be reached remotely by a client without logging in, if the mod_xml_rpc module and its WebSocket endpoint have been enabled, which is not the default. An attacker can corrupt memory and crash FreeSWITCH, ending all active sessions, though remote code execution has not been demonstrated.
Read the original description
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 1.11.2, ws_read_frame() decoded a WebSocket frame's 64-bit extended payload length with a 32-bit byte swap and narrowed the result into a signed length. A value whose surviving low word became negative bypassed the signed size check and was reinterpreted as an enormous unsigned count, causing client bytes to overwrite memory beyond the 64 KiB receive buffer. Any client completing a /socket WebSocket upgrade on an enabled mod_xml_rpc endpoint reached the parser before HTTP authentication; both the module and WebSocket endpoint are disabled by default. The heap overwrite can corrupt connection pointers and crash FreeSWITCH, ending every concurrent session, although remote code execution has not been demonstrated. This issue is fixed in version 1.11.2.
cve.now Index
- Exploitation?/40Unknown. No CISA SSVC exploitation rating yet
- Exposure12/25Specific setups only, reachable over the network without a login
- Reach?/20Unknown. No tracked technology or package matched
- Severity9.1/10CVSS 9.1
- No patch0/5No signal
What would change the score
- Would score about 71 if added to CISA KEV
- Would score about 66 if CISA's SSVC rates exploitation active
What to do
Check whether your setup matches what the bug needs.
Installations that load mod_xml_rpc and enable its WebSocket endpoint All current 1.10 and 1.11 releases are affected The WebSocket endpoint is served on the module's HTTP port, 8080 by defaultUpgrade to a fixed version: 1.11.2.
Workaround: Leave enable-websocket unset, which closes /socket while the rest of the XML-RPC service keeps working, or do not load mod_xml_rpc
Timeline
- CVE published
- First seen by cve.now
- Posted on X by cve.now
Affected versions
- signalwire freeswitch
fixed in 1.11.2
Evidence 3
- Advisory
- Repository
- Repository
Corrections
None so far.
Something wrong on this page? Report an error. Every fix is listed here.
Questions about CVE-2026-116785
Is CVE-2026-116785 being exploited?
It is not in CISA's Known Exploited Vulnerabilities catalog, and CISA's SSVC assessment does not mark exploitation as active. That does not mean it has not been attacked: vendors and researchers can report attacks before CISA lists them. No public exploit code is tracked.Source: cve.now feed data
What does this mean?
A WebSocket frame length field in mod_xml_rpc is decoded incorrectly before authentication, so a client can write bytes past the receive buffer on the heap. This can crash FreeSWITCH or corrupt connection pointer state. Remote code execution has not been demonstrated.Source: github.com
Which versions are affected by CVE-2026-116785?
freeswitch: before 1.11.2.Source: cve.now feed data
Am I affected, and how do I check?
All current 1.10 and 1.11 releases are affected, but only when mod_xml_rpc is loaded and its WebSocket endpoint is enabled. The endpoint is served on the module's http-port, 8080 by default. Check the installed FreeSWITCH version, whether mod_xml_rpc is loaded, and whether enable-websocket is set in the XML-RPC configuration.Source: github.com
How do I fix CVE-2026-116785?
Upgrade to FreeSWITCH 1.11.2 or later. Until then, leave enable-websocket unset, which closes the /socket endpoint while the rest of the XML-RPC service keeps working, or do not load mod_xml_rpc.Source: github.com