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

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

Gravedad:
Pendiente de análisis
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
27/12/2024
Última modificación:
27/12/2024

Descripción

En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: xen: soluciona el problema de que los recursos no se liberan correctamente en xenbus_dev_probe() Este parche soluciona un problema en la función xenbus_dev_probe(). En la función xenbus_dev_probe(), dentro de la rama if (err) en la línea 313, el programa devuelve incorrectamente err directamente sin liberar los recursos asignados por err = drv->probe(dev, id). Como el valor de retorno no es cero, las capas superiores suponen que la lógica de procesamiento ha fallado. Sin embargo, la operación de sondeo se realizó antes sin una operación de eliminación correspondiente. Dado que el sondeo realmente asigna recursos, no realizar la operación de eliminación podría provocar problemas. Para solucionar este problema, seguimos la lógica de liberación de recursos de la función xenbus_dev_remove() agregando un nuevo bloque fail_remove antes del bloque fail_put. Después de ingresar a la rama if (err) en la línea 313, la función usará una declaración goto para saltar al bloque fail_remove, lo que garantiza que los recursos adquiridos previamente se liberen correctamente, evitando así la fuga del recuento de referencias. Este error fue identificado por una herramienta de análisis estático experimental desarrollada por nuestro equipo. La herramienta se especializa en analizar operaciones de recuento de referencias y detectar posibles problemas en los que los recursos no se administran correctamente. En este caso, la herramienta marcó la operación de liberación faltante como un problema potencial, lo que llevó al desarrollo de este parche.

Impacto