Vulnerabilidad en kernel de Linux (CVE-2024-53213)
Gravedad CVSS v3.1:
ALTA
Tipo:
CWE-415
Doble liberación
Fecha de publicación:
27/12/2024
Última modificación:
10/01/2025
Descripción
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: net: usb: lan78xx: Se soluciona el problema de doble liberación con la asignación de búfer de interrupción En lan78xx_probe(), el búfer `buf` se liberaba dos veces: una vez implícitamente a través de `usb_free_urb(dev->urb_intr)` con el indicador `URB_FREE_BUFFER` y otra vez explícitamente por `kfree(buf)`. Esto causaba un problema de doble liberación. Para resolver esto, reordenamos las llamadas `kmalloc()` y `usb_alloc_urb()` para simplificar la secuencia de inicialización y eliminamos el `kfree(buf)` redundante. Ahora, `buf` se asigna después de `usb_alloc_urb()`, lo que garantiza que `usb_fill_int_urb()` lo administre correctamente y que `usb_free_urb()` lo libere como estaba previsto.
Impacto
Puntuación base 3.x
7.80
Gravedad 3.x
ALTA
Productos y versiones vulnerables
CPE | Desde | Hasta |
---|---|---|
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.17 (incluyendo) | 6.1.120 (excluyendo) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.2 (incluyendo) | 6.6.64 (excluyendo) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.7 (incluyendo) | 6.11.11 (excluyendo) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.12 (incluyendo) | 6.12.2 (excluyendo) |
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://git.kernel.org/stable/c/03819abbeb11117dcbba40bfe322b88c0c88a6b6
- https://git.kernel.org/stable/c/7ac9f3c981eeceee2ec4d30d850f4a6f50a1ec40
- https://git.kernel.org/stable/c/977128343fc2a30737399b58df8ea77e94f164bd
- https://git.kernel.org/stable/c/a422ebec863d99d5607fb41bb7af3347fcb436d3
- https://git.kernel.org/stable/c/b09512aea6223eec756f52aa584fc29eeab57480