---
id: CVE-2026-116574
title: >-
  FreeSWITCH: Off-by-one heap write in core XML serialization of four-byte UTF-8
  sequences
summary: >-
  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, switch_xml_ampencode()
  reserved only …
severity: medium
cvss: 5.9
cvssVector: 'CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:H'
cvssSource: cna
cwe:
  - CWE-193
  - CWE-787
vendor: signalwire
product: freeswitch
affected:
  - freeswitch < 1.11.2
published: '2026-11-05'
updated: '2026-11-05'
sourceUpdated: '2026-11-05T19:00:26.440Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-116574'
references:
  - url: >-
      https://github.com/signalwire/freeswitch/security/advisories/GHSA-r6vh-qmwm-h3cc
    label: >-
      https://github.com/signalwire/freeswitch/security/advisories/GHSA-r6vh-qmwm-h3cc
  - url: >-
      https://github.com/signalwire/freeswitch/commit/28fcfd26246c112fa4b9e698433d09e4836ca1b5
    label: >-
      https://github.com/signalwire/freeswitch/commit/28fcfd26246c112fa4b9e698433d09e4836ca1b5
  - url: 'https://github.com/signalwire/freeswitch/releases/tag/v1.11.2'
    label: 'https://github.com/signalwire/freeswitch/releases/tag/v1.11.2'
tags:
  - cve.org
ingestedAt: '2026-11-05T22:38:31.489Z'
---

## Overview

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, switch_xml_ampencode() reserved only ten bytes for the widest numeric character reference produced from a four-byte UTF-8 sequence, omitting space for the terminating NUL. When remote-supplied text was serialized at the exact buffer-growth boundary, the terminator wrote one byte beyond the heap allocation. Reachable surfaces include mod_xml_cdr, conference and formatted CDR XML, XML Event Socket output, and XML API output that serializes caller-controlled values. The fixed zero-byte write can abort the process or truncate an adjacent object, while remote code execution has not been demonstrated. This issue is fixed in version 1.11.2.

## Affected

- `freeswitch < 1.11.2`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
