
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2025-69217 is a weak pseudo-random number generator (PRNG) vulnerability in coturn, a free open-source TURN and STUN server implementation. Affecting versions 4.6.2r5 through 4.7.0-r4, the flaw was introduced by a code refactoring commit (88ced471) that replaced OpenSSL's RAND_bytes() with libc's random() function for nonce generation and port randomization. The vulnerability was publicly disclosed on December 30, 2025, and carries a CVSS v3.1 base score of 7.7 (High) (GitHub Advisory, Red Hat).
The root cause is classified as CWE-338 (Use of Cryptographically Weak Pseudo-Random Number Generator). The vulnerability was introduced in commit 88ced471, which renamed turn_random() in ns_turn_msg.c and provided a new implementation in apputils.c that uses libc's random() — a reversible Linear Congruential Generator (LCG) — instead of OpenSSL's RAND_bytes(). Because turn_random() is used for both nonce generation and relay port randomization, an attacker can send approximately 50 unauthenticated TURN Allocate requests to collect sequential nonces, then mathematically reconstruct the full internal state of the LCG, enabling prediction of future nonces and relay ports. Exploitation requires low privileges (valid TURN credentials) and no user interaction, and is achievable over the network (GitHub Advisory, Red Hat Bugzilla).
Successful exploitation allows an attacker with knowledge of valid TURN credentials to predict authentication nonces, enabling IP spoofing and authentication bypass — they can send authenticated TURN messages without ever receiving server responses containing the nonce. Additionally, because relay port allocation is deterministic given the reconstructed PRNG seed, an attacker can predict future relay port assignments, enabling targeted relay hijacking, session spoofing, and tracking of relay service usage. The advisory also notes the potential for a loop attack as defined in RFC 5766, which can cause amplification in both packet size and count, directly impacting availability (GitHub Advisory).
random() LCG.srandom().401 Unauthorized responses to Allocate requests followed immediately by a successful authenticated request from a different IP.Upgrade coturn to a version newer than 4.7.0-r4 that includes the fix from commit 11fc465f4bba70bb0ad8aae17d6c4a63a29917d9, which restores the use of OpenSSL's RAND_bytes() via turn_random_number() for all security-sensitive random number generation. Fedora and openSUSE have issued updated packages addressing this CVE. As interim mitigations: restrict TURN server access at the network level to trusted clients only; rotate TURN credentials, especially in IoT deployments where credentials may be widely shared; and monitor server logs for patterns of sequential unauthenticated allocation requests that may indicate exploitation attempts (GitHub Advisory, Red Hat, Red Hat Bugzilla).
The vulnerability was reported by researchers jornlp and vanhoefm (Mathy Vanhoef, known for Wi-Fi security research) and disclosed via GitHub Security Advisories on December 30, 2025. Red Hat assigned the bug a high severity rating and opened tracking in their Bugzilla system. Brief social media coverage appeared on Mastodon and Bluesky shortly after disclosure. Linux distribution security teams including Fedora and openSUSE issued updated packages. No major vendor statements beyond Red Hat's tracking have been identified (GitHub Advisory, Red Hat).
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."