Skip to main content

Coturn CVE-2026-62959

| EUVDEUVD-2026-51627 HIGH
Out-of-bounds Read (CWE-125)
2026-07-31 security-advisories@github.com
8.2
CVSS 4.0 · Vendor: github
Share

Severity by source

Vendor (github) PRIMARY
8.2 HIGH
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
vuln.today AI
5.9 MEDIUM

Non-default --acme-redirect operator configuration required maps to AC:H; no integrity or availability impact applies.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
SUSE
MEDIUM
qualitative
Red Hat
7.5 HIGH
qualitative

Primary rating from Vendor (github).

CVSS VectorVendor: github

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
X

Lifecycle Timeline

4
Patch available
Jul 31, 2026 - 21:02 EUVD
Source Code Evidence Fetched
Jul 31, 2026 - 20:34 vuln.today
Analysis Generated
Jul 31, 2026 - 20:34 vuln.today
CVE Published
Jul 31, 2026 - 20:16 cve.org
HIGH 8.2

DescriptionCVE.org

Coturn is a free open source implementation of TURN and STUN Server. From 4.5.2 through 4.14.0, when Coturn is started with --acme-redirect <URL> and exposes a plaintext-TCP listener, an unauthenticated remote client can send a single ordinary HTTP GET request and receive a 301 response whose Location header contains up to ~870 bytes of adjacent process heap memory. The leaked region is a recycled network receive buffer that is reused without being zeroed, so on a busy server it can contain data from other clients' requests (TURN credentials, OAuth tokens, relayed payloads). Root cause is a signed→unsigned conversion. This issue is fixed in version 4.15.0.

AnalysisAI

Heap memory disclosure in Coturn 4.5.2-4.14.0 allows an unauthenticated remote attacker to extract up to ~870 bytes of adjacent process heap per request by sending a single HTTP GET to the ACME redirect plaintext TCP listener. The leaked memory originates from recycled, unzeroed network receive buffers and on busy relay servers can contain TURN credentials, OAuth tokens, or relayed session payloads from concurrent clients. Exploitation is trivially automatable against the affected configuration; no public exploit identified at time of analysis beyond the proof-of-concept test case shipped with the advisory.

Technical ContextAI

Coturn is a widely used open-source C implementation of TURN (RFC 5766) and STUN (RFC 5389), commonly deployed as a WebRTC relay. The vulnerability resides in src/apps/relay/acme.c within try_acme_redirect(), the handler invoked when the --acme-redirect flag is active. CWE-125 (Out-of-bounds Read) applies: the function calls is_acme_req() which returns negative int values (-1, -2, -3) on all rejection paths. Before the fix, this return value was stored directly into a size_t variable (plen). On 64-bit systems, assigning -1 to size_t wraps to 0xFFFFFFFFFFFFFFFF, a value that bypasses the lower-bound length guard. The code then used plen to NUL-terminate req[plen] at an arbitrary heap offset and subsequently passed req + GET_ACME_PREFIX_LEN as a %s argument to snprintf, reading from an un-terminated string through adjacent heap into the 301 Location response header. The leaked region is a recycled network receive buffer that is not zeroed between uses, making its contents attacker-observable. The fix (commit 960835886692fa04cf63ddd970c3f330740c87f4, PR #1965) introduces an intermediate signed int prc, checks for negative values before any unsigned cast, and copies the path to a bounded local stack buffer (path[131+1]) rather than mutating the shared receive buffer.

RemediationAI

Upgrade to Coturn 4.15.0, the vendor-released patched version confirmed at https://github.com/coturn/coturn/releases/tag/4.15.0. The fix is also available as commit 960835886692fa04cf63ddd970c3f330740c87f4 (PR #1965), though the tagged release should be used for production deployments rather than building from a commit directly. If immediate upgrade is not possible, the most effective workaround is removing the --acme-redirect flag from the Coturn startup configuration entirely; this disables the vulnerable code path with no impact on TURN/STUN relay functionality, though automated ACME certificate redirect will be lost and an alternative certificate renewal workflow must be substituted. A secondary compensating control is restricting access to the plaintext TCP listener to trusted networks via firewall rules, reducing attacker reach - but this does not eliminate the vulnerability if trusted-network access is achievable by an adversary. There is no runtime toggle for the ACME redirect feature; a configuration change and service restart are required.

Vendor StatusVendor

SUSE

Severity: Moderate

Share

CVE-2026-62959 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy