Vulnerabilidad en kernel de Linux (CVE-2024-26775)
Gravedad CVSS v3.1:
MEDIA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
03/04/2024
Última modificación:
07/01/2025
Descripción
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: aoe: evita un posible punto muerto en set_capacity Mueve set_capacity() fuera de la sección procesada por (&d->lock). Para evitar una posible interrupción en un escenario de bloqueo inseguro: CPU0 CPU1 ---- ---- [1] lock(&bdev->bd_size_lock); local_irq_disable(); [2] bloquear(&d->bloquear); [3] bloquear(&bdev->bd_size_lock); [4] bloqueo(&d->bloqueo); *** DEADLOCK *** Donde [1](&bdev->bd_size_lock) mantenido por zram_add()->set_capacity(). [2]bloqueo(&d->bloqueo) retenido por aoeblk_gdalloc(). Y aoeblk_gdalloc() está intentando adquirir [3](&bdev->bd_size_lock) en la llamada set_capacity(). En esta situación, un intento de adquirir [4]lock(&d->lock) de aoecmd_cfg_rsp() provocará un punto muerto. Entonces, la solución más simple es romper la dependencia del bloqueo [2](&d->lock) -> [3](&bdev->bd_size_lock) moviendo set_capacity() afuera.
Impacto
Puntuación base 3.x
5.50
Gravedad 3.x
MEDIA
Productos y versiones vulnerables
CPE | Desde | Hasta |
---|---|---|
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.1.80 (excluyendo) | |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.2 (incluyendo) | 6.6.19 (excluyendo) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.7 (incluyendo) | 6.7.7 (excluyendo) |
cpe:2.3:o:linux:linux_kernel:6.8:rc1:*:*:*:*:*:* |
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/19a77b27163820f793b4d022979ffdca8f659b77
- https://git.kernel.org/stable/c/2d623c94fbba3554f4446ba6f3c764994e8b0d26
- https://git.kernel.org/stable/c/673629018ba04906899dcb631beec34d871f709c
- https://git.kernel.org/stable/c/e169bd4fb2b36c4b2bee63c35c740c85daeb2e86
- https://git.kernel.org/stable/c/19a77b27163820f793b4d022979ffdca8f659b77
- https://git.kernel.org/stable/c/2d623c94fbba3554f4446ba6f3c764994e8b0d26
- https://git.kernel.org/stable/c/673629018ba04906899dcb631beec34d871f709c
- https://git.kernel.org/stable/c/e169bd4fb2b36c4b2bee63c35c740c85daeb2e86