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

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

Gravedad CVSS v3.1:
MEDIA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
24/12/2024
Última modificación:
08/10/2025

Descripción

En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: PCI: tegra194: Mover las desinfecciones del controlador a pex_ep_event_pex_rst_deassert(). Actualmente, la función de desinfección de endpoints dw_pcie_ep_cleanup() y la función de notificación deinit de EPF pci_epc_deinit_notify() se llaman durante la ejecución de pex_ep_event_pex_rst_assert(), es decir , cuando el anfitrión tiene afirmó PREST#. Pero poco después de este paso, el host también desactivará refclk. Todos los SoC de endpoint tegra194 admitidos a partir de ahora dependen de la refclk del host para mantener el controlador operativo. Debido a esta limitación, cualquier acceso a los registros de hardware en ausencia de refclk resultará en una falla completa del endpoint. Desafortunadamente, la mayoría de las desinfecciones del controlador requieren acceder a los registros de hardware (como la desinfección eDMA realizada en dw_pcie_ep_cleanup(), etc...). Por lo tanto, estas funciones de desinfección pueden provocar el bloqueo del SoC del endpoint una vez que el host afirma el número PREST. Una forma de abordar este problema es generando el refclk en el propio endpoint y sin depender del host. Pero eso no siempre es posible ya que algunos de los diseños de terminales requieren que el terminal consuma refclk del host. Por lo tanto, solucione este bloqueo moviendo las desinfecciones del controlador al inicio de la función pex_ep_event_pex_rst_deassert(). Esta función se llama siempre que el host ha anulado PERST# y se garantiza que refclk estará activo en este punto. Entonces, al inicio de esta función (después de habilitar los recursos), se puede realizar la desinfección del controlador. Una vez finalizado, el resto de la ejecución del código para la desactivación de PERST# puede continuar como de costumbre.

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.10 (incluyendo) 6.11.11 (excluyendo)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.12 (incluyendo) 6.12.2 (excluyendo)