Vulnerabilidad en kernel de Linux (CVE-2026-22995)
Gravedad CVSS v3.1:
ALTA
Tipo:
CWE-416
Utilización después de liberación
Fecha de publicación:
23/01/2026
Última modificación:
26/02/2026
Descripción
Se ha resuelto la siguiente vulnerabilidad en el kernel de Linux:<br />
<br />
ublk: corrige uso después de liberación en ublk_partition_scan_work<br />
<br />
Existe una condición de carrera entre el trabajo de escaneo de particiones asíncrono y el desmontaje del dispositivo que puede llevar a un uso después de liberación de ub-&gt;ub_disk:<br />
<br />
1. ublk_ctrl_start_dev() programa partition_scan_work después de add_disk()<br />
2. ublk_stop_dev() llama a ublk_stop_dev_unlocked() que hace:<br />
- del_gendisk(ub-&gt;ub_disk)<br />
- ublk_detach_disk() establece ub-&gt;ub_disk = NULL<br />
- put_disk() que puede liberar el disco<br />
3. El worker ublk_partition_scan_work() entonces desreferencia ub-&gt;ub_disk llevando a UAF<br />
<br />
Corrige esto usando ublk_get_disk()/ublk_put_disk() en el worker para mantener una referencia al disco durante el escaneo de particiones. El spinlock en ublk_get_disk() se sincroniza con ublk_detach_disk() asegurando que el worker o bien obtiene una referencia válida o ve NULL y sale temprano.<br />
<br />
También cambia flush_work() a cancel_work_sync() para evitar ejecutar innecesariamente el trabajo de escaneo de particiones cuando el disco ya está desmontado.
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:*:*:*:*:*:*:*:* | 6.18.4 (incluyendo) | 6.18.6 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:6.19:rc4:*:*:*:*:*:* |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página



