Vulnerabilidad en Fast DDS (CVE-2025-62603)
Gravedad CVSS v4.0:
BAJA
Tipo:
CWE-125
Lectura fuera de límites
Fecha de publicación:
03/02/2026
Última modificación:
18/02/2026
Descripción
Fast DDS es una implementación en C++ del estándar DDS (Data Distribution Service) de la OMG (Object Management Group). ParticipantGenericMessage es el contenedor de mensajes de control de DDS Security que transporta no solo el handshake sino también el tráfico de control de seguridad continuo después del handshake, como el intercambio de cripto-tokens, el rekeying, la re-autenticación y la entrega de tokens para los endpoints que aparecen recientemente. Al recibir, el analizador CDR se invoca primero y deserializa el 'message_data' (es decir, el 'DataHolderSeq') a través de la ruta 'readParticipantGenericMessage ? readDataHolderSeq'. El 'DataHolderSeq' se analiza secuencialmente: un recuento de secuencia ('uint32'), y para cada DataHolder la cadena 'class_id' (por ejemplo, 'DDS:Auth:PKI-DH:1.0+Req'), propiedades de cadena (una secuencia de pares clave/valor), y propiedades binarias (un nombre más un vector de octetos). El analizador opera a un nivel sin estado y no conoce el estado de capas superiores (por ejemplo, si el handshake ya se ha completado), por lo que despliega completamente la estructura antes de distinguir el tráfico legítimo del malformado. Debido a que RTPS permite duplicados, retrasos y retransmisiones, un receptor debe realizar al menos un análisis estructural mínimo para verificar la identidad y los números de secuencia antes de descartar o procesar un mensaje; la implementación actual, sin embargo, no 'echa un vistazo' solo a una cabecera mínima y en su lugar analiza todo el 'DataHolderSeq'. Como resultado, antes de las versiones 3.4.1, 3.3.1 y 2.6.11, este comportamiento de análisis puede desencadenar una condición de falta de memoria y terminar el proceso de forma remota. Las versiones 3.4.1, 3.3.1 y 2.6.11 parchean el problema.
Impacto
Puntuación base 4.0
1.70
Gravedad 4.0
BAJA
Puntuación base 3.x
7.50
Gravedad 3.x
ALTA
Productos y versiones vulnerables
| CPE | Desde | Hasta |
|---|---|---|
| cpe:2.3:a:eprosima:fast_dds:*:*:*:*:*:*:*:* | 2.6.11 (excluyendo) | |
| cpe:2.3:a:eprosima:fast_dds:*:*:*:*:*:*:*:* | 3.0.0 (incluyendo) | 3.3.1 (excluyendo) |
| cpe:2.3:a:eprosima:fast_dds:3.4.0:*:*:*:*:*:*:* | ||
| cpe:2.3:o:debian:debian_linux:11.0:*:*:*:*:*:*:* | ||
| cpe:2.3:o:debian:debian_linux:12.0:*:*:*:*:*:*:* | ||
| cpe:2.3:o:debian:debian_linux:13.0:*:*:*:*:*:*:* |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página
Referencias a soluciones, herramientas e información
- https://github.com/eProsima/Fast-DDS/commit/354218514d32beac963ff5c306f1cf159ee37c5f
- https://github.com/eProsima/Fast-DDS/commit/a726e6a5daba660418d1f7c05b6f203c17747d2b
- https://github.com/eProsima/Fast-DDS/commit/ced3b6f92d928af1eae77d5fe889878128ad421a
- https://security-tracker.debian.org/tracker/CVE-2025-62603



