Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en kernel de Linux (CVE-2024-57876)

Gravedad CVSS v3.1:
ALTA
Tipo:
CWE-362 Ejecución concurrente utilizando recursos compartidos con una incorrecta sincronización (Condición de carrera)
Fecha de publicación:
11/01/2025
Última modificación:
03/11/2025

Descripción

En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: drm/dp_mst: Se soluciona el restablecimiento del estado de recepción del mensaje después de la eliminación de la topología Si se elimina la topología MST durante la recepción de un mensaje de banda lateral de respuesta de baja de MST o de solicitud de subida de MST, los estados drm_dp_mst_topology_mgr::up_req_recv/down_rep_recv podrían restablecerse desde un hilo mediante drm_dp_mst_topology_mgr_set_mst(false), compitiendo con la lectura/análisis del mensaje desde otro hilo mediante drm_dp_mst_handle_down_rep() o drm_dp_mst_handle_up_req(). La competencia es posible ya que el lector/analizador no mantiene ningún bloqueo mientras accede al estado de recepción. Esto, a su vez, puede provocar una corrupción de memoria en el lector/analizador, como se describe en el commit bd2fccac61b4 ("drm/dp_mst: Fix MST sideband message body length check"). Corrija lo anterior restableciendo el estado de recepción del mensaje si es necesario antes de leer/analizar un mensaje. Otra solución sería mantener el bloqueo drm_dp_mst_topology_mgr::lock durante toda la duración de la recepción/análisis del mensaje en drm_dp_mst_handle_down_rep() y drm_dp_mst_handle_up_req(), sin embargo, esto requeriría un cambio mayor. Dado que la corrección también es necesaria para la versión estable, se opta por la solución más simple en este parche.

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.10.173 (incluyendo) 5.11 (excluyendo)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.15.100 (incluyendo) 5.16 (excluyendo)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.1.18 (incluyendo) 6.1.120 (excluyendo)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.2.5 (incluyendo) 6.6.66 (excluyendo)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.7 (incluyendo) 6.12.5 (excluyendo)
cpe:2.3:o:linux:linux_kernel:6.13:rc1:*:*:*:*:*:*