Stack buffer overflow in FreeSWITCH SDP crypto parsing
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Denial of service
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-121 and the CVSS impact.
Summary
FreeSWITCH from SignalWire before 1.11.2 has a stack-based buffer overflow (CWE-121) in parsing SDP a=crypto attributes. A zero-length key and salt make a length value underflow, so sender-chosen bytes overflow a fixed stack buffer before a call is answered. An unauthenticated remote caller can reach this parser on the shipped external profile, and the memory corruption can crash the process and drop every active call, although remote code execution has not been demonstrated.
Written with Claude Haiku 5.5 from the sources below · 2026-11-06
Description from the CNA
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_core_media_add_crypto() passed the encoded key and salt length from an inbound SDP a=crypto attribute to switch_b64_decode() as the destination capacity. A zero-length key and salt made that capacity underflow, allowing the decoded attribute to overflow a fixed stack buffer with sender-chosen bytes before the call was answered. On the shipped external profile, an unauthenticated caller can reach the SDES-SRTP parser, while profiles that challenge inbound calls remain affected for senders who can authenticate; setting rtp_secure_media_inbound to false removes the path, and WebRTC DTLS-SRTP legs are unaffected. The overflow corrupts memory and can crash the FreeSWITCH process, dropping every active call, although remote code execution has not been demonstrated. This issue is fixed in version 1.11.2.
Why it matters now
SSVC decision points
Not available: CISA has not published SSVC decision points for this record.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| signalwire | freeswitch | before 1.11.2 | 1.11.2 | Patch available | CNA |
- freeswitch Vendorsignalwire Affected before 1.11.2 Fixed in 1.11.2 Patch available CNA
CPE names Threatist (inferred) · 1
Inferred from how NVD named this product before; not given by a source.
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:freeswitch:freeswitch:*:*:*:*:*:*:*:* | — | — | freeswitch |
- cpe:2.3:a:freeswitch:freeswitch:*:*:*:*:*:*:*:* Versions — — ·freeswitch
Remediation
Upgrade FreeSWITCH to version 1.11.2, which fixes this issue. Until then, set rtp_secure_media_inbound to false to remove the affected path.
Written with Claude Haiku 5.5 from the sources below · 2026-11-06
- Fix · CNA freeswitch (signalwire) Fixed in 1.11.2
Vendor assessments
Timeline
- 2026-11-05 Threatist record created from CVE-2026-115928
- 2026-11-06 Affected versions changed · Red Hat
- 2026-11-06 CVSS score added · Red Hat
- 2026-11-07 Priority changed: MEDIUM → LOW
References
More signalwire vulnerabilities
- TI-2023-08915 heap-over-flow in stun_parse_attribute in sofia-sip CVSS 3.1CRITICAL 9.8
- TI-2022-13049 Heap-based Buffer Overflow and Out-of-bounds Write in Sofia-SIP CVSS 3.1CRITICAL 9.8
- TI-2023-28097 FreeSWITCH susceptible to Denial of Service via DTLS Hello packets during call initiation CVSS 3.1HIGH 7.5
- TI-2023-20909 Resource allocation without limits in signalwire freeswitch CVSS 3.1HIGH 7.5
- TI-2023-20908 FreeSWITCH allows remote users to trigger out of bounds write by offering an ICE candidate with unknown component ID CVSS 3.1HIGH 7.5
- TI-2023-15601 heap-over-flow and integer-overflow in sofia-sip CVSS 3.1HIGH 7.5
Sources
- CVE-2026-115928 · CVE Program
- CVE-2026-115928 · NVD
- FIRST EPSS
- CVE-2026-115928 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences