CVE-2025-69217
Coturn has unsafe nonce and relay port randomization due to weak random number generation.
Description
coturn is a free open source implementation of TURN and STUN Server. Versions 4.6.2r5 through 4.7.0-r4 have a bad random number generator for nonces and port randomization after refactoring. Additionally, random numbers aren't generated with openssl's RAND_bytes but libc's random() (if it's not running on Windows). When fetching about 50 sequential nonces (i.e., through sending 50 unauthenticated allocations requests) it is possible to completely reconstruct the current state of the random number generator, thereby predicting the next nonce. This allows authentication while spoofing IPs. An attacker can send authenticated messages without ever receiving the responses, including the nonce (requires knowledge of the credentials, which is e.g., often the case in IoT settings). Since the port randomization is deterministic given the pseudorandom seed, an attacker can exactly reconstruct the ports and, hence predict the randomization of the ports. If an attacker allocates a relay port, they know the current port, and they are able to predict the next relay port (at least if it is not used before). Commit 11fc465f4bba70bb0ad8aae17d6c4a63a29917d9 contains a fix.
INFO
Published Date :
Dec. 30, 2025, 1:15 a.m.
Last Modified :
Oct. 13, 2026, 8:10 a.m.
Remotely Exploit :
Yes !
Source :
[email protected]
CVSS Scores
| Score | Version | Severity | Vector | Exploitability Score | Impact Score | Source |
|---|---|---|---|---|---|---|
| CVSS | 134c704f-9b21-4f2e-91b3-4a467353bcc0 | |||||
| CVSS 3.1 | HIGH | [email protected] |
Solution
- Update coturn to the latest version.
- Apply the fix from commit 11fc465f4bba70bb0ad8aae17d6c4a63a29917d9.
- Ensure random number generation uses openssl's RAND_bytes.
References to Advisories, Solutions, and Tools
Here, you will find a curated list of external links that provide in-depth
information, practical solutions, and valuable tools related to
CVE-2025-69217.
CWE - Common Weakness Enumeration
While CVE identifies
specific instances of vulnerabilities, CWE categorizes the common flaws or
weaknesses that can lead to vulnerabilities. CVE-2025-69217 is
associated with the following CWEs:
Common Attack Pattern Enumeration and Classification (CAPEC)
Common Attack Pattern Enumeration and Classification
(CAPEC)
stores attack patterns, which are descriptions of the common attributes and
approaches employed by adversaries to exploit the CVE-2025-69217
weaknesses.
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2025-69217 vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2025-69217 vulnerability over time.
Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.
-
CVE Translated by [email protected]
Oct. 13, 2026
Action Type Old Value New Value Added Translation Title: coturn, Description: coturn es una implementación de código abierto gratuita de servidor TURN y STUN. Las versiones 4.6.2r5 a 4.7.0-r4 tienen un generador de números aleatorios deficiente para nonces y la aleatorización de puertos después de la refactorización. Además, los números aleatorios no se generan con RAND_bytes de OpenSSL sino con random() de libc (si no se ejecuta en Windows). Al obtener aproximadamente 50 nonces secuenciales (es decir, mediante el envío de 50 solicitudes de asignación no autenticadas), es posible reconstruir completamente el estado actual del generador de números aleatorios, prediciendo así el siguiente nonce. Esto permite la autenticación mientras se suplantan IPs. Un atacante puede enviar mensajes autenticados sin recibir nunca las respuestas, incluido el nonce (requiere conocimiento de las credenciales, lo cual es, por ejemplo, a menudo el caso en entornos IoT). Dado que la aleatorización de puertos es determinista dada la semilla pseudoaleatoria, un atacante puede reconstruir exactamente los puertos y, por lo tanto, predecir la aleatorización de los puertos. Si un atacante asigna un puerto de retransmisión, conoce el puerto actual y puede predecir el siguiente puerto de retransmisión (al menos si no se ha utilizado antes). El commit 11fc465f4bba70bb0ad8aae17d6c4a63a29917d9 contiene una solución. -
CVE Modified by [email protected]
Jun. 17, 2026
Action Type Old Value New Value Added Affected [{'vendor': 'coturn', 'product': 'coturn', 'versions': [{'status': 'affected', 'version': '>= 4.6.2r5, <= 4.7.0-r4'}]}] -
CVE Modified by 134c704f-9b21-4f2e-91b3-4a467353bcc0
Jun. 17, 2026
Action Type Old Value New Value Added SSVC {'id': 'CVE-2025-69217', 'role': 'CISA Coordinator', 'options': [{'exploitation': 'none'}, {'automatable': 'no'}, {'technicalImpact': 'partial'}], 'version': '2.0.3', 'timestamp': '2025-12-30T13:57:12.783500Z'} -
New CVE Received by [email protected]
Dec. 30, 2025
Action Type Old Value New Value Added Description coturn is a free open source implementation of TURN and STUN Server. Versions 4.6.2r5 through 4.7.0-r4 have a bad random number generator for nonces and port randomization after refactoring. Additionally, random numbers aren't generated with openssl's RAND_bytes but libc's random() (if it's not running on Windows). When fetching about 50 sequential nonces (i.e., through sending 50 unauthenticated allocations requests) it is possible to completely reconstruct the current state of the random number generator, thereby predicting the next nonce. This allows authentication while spoofing IPs. An attacker can send authenticated messages without ever receiving the responses, including the nonce (requires knowledge of the credentials, which is e.g., often the case in IoT settings). Since the port randomization is deterministic given the pseudorandom seed, an attacker can exactly reconstruct the ports and, hence predict the randomization of the ports. If an attacker allocates a relay port, they know the current port, and they are able to predict the next relay port (at least if it is not used before). Commit 11fc465f4bba70bb0ad8aae17d6c4a63a29917d9 contains a fix. Added CVSS V3.1 AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:N/A:H Added CWE CWE-338 Added Reference https://github.com/coturn/coturn/commit/11fc465f4bba70bb0ad8aae17d6c4a63a29917d9 Added Reference https://github.com/coturn/coturn/commit/88ced471385869d7e7fbbc4766e78ef521b36af6 Added Reference https://github.com/coturn/coturn/security/advisories/GHSA-fvj6-9jhg-9j84