Vulnerabilidad en Linux (CVE-2026-46289)
Gravedad CVSS v3.1:
CRÍTICA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
08/06/2026
Última modificación:
23/07/2026
Descripción
En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta:<br />
<br />
lib/scatterlist: corrige los cálculos de longitud en extract_kvec_to_sg<br />
<br />
Serie de parches &#39;Corrige errores en extract_iter_to_sg()&#39;, v3.<br />
<br />
Corrige errores en las variantes kvec y de usuario de extract_iter_to_sg. Esta serie está creciendo debido a comentarios útiles hechos por sashiko.dev.<br />
<br />
Los principales errores son:<br />
- La longitud para una entrada de sglist al extraer de un kvec puede exceder el número de bytes en la página. Esto obviamente no está previsto.<br />
- Al extraer un búfer de usuario, el sglist se utiliza temporalmente como un búfer temporal para punteros de página extraídos. Si el sglist ya contiene algunos elementos, este búfer temporal podría superponerse con entradas existentes en el sglist.<br />
<br />
La serie añade casos de prueba a la prueba kunit_iov_iter que demuestran todos estos errores. Además, hay una corrección de fuga de memoria para la propia prueba.<br />
<br />
Los errores fueron introducidos originalmente en el kernel v6.3 donde la función residía en fs/netfs/iterator.c. Posteriormente fue movida a lib/scatterlist.c en v6.5. Por lo tanto, la corrección real solo está marcada para backports a v6.5+.<br />
<br />
Este parche (de 5):<br />
<br />
Al extraer de un kvec a un scatterlist, no cruzar los límites de página. La longitud requerida ya estaba calculada pero no se usó como se pretendía.<br />
<br />
Ajustar la longitud copiada si el bucle se queda sin entradas de sglist sin extraer todo.<br />
<br />
Mientras tanto, regresar inmediatamente de extract_iter_to_sg si no hay ninguna entrada de sglist en absoluto.<br />
<br />
Un commit posterior añadirá casos de prueba kunit que demuestran que el parche es necesario.
Impacto
Puntuación base 3.x
9.80
Gravedad 3.x
CRÍTICA
Productos y versiones vulnerables
| CPE | Desde | Hasta |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.3 (incluyendo) | 6.6.140 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.7 (incluyendo) | 6.12.88 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.13 (incluyendo) | 6.18.30 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.19 (incluyendo) | 7.0.7 (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/07b7d66e65d9cfe6b9c2c34aa22cfcaac37a5c45
- https://git.kernel.org/stable/c/3f17500e86d730c76db638bb3ae52f9b5e496c76
- https://git.kernel.org/stable/c/8fbba6829057979149d1b37d65690c037f3ddf4d
- https://git.kernel.org/stable/c/9d38756d0a93b66163554219fa9c3365f40c4035
- https://git.kernel.org/stable/c/e5e22fc9963469e678c4f4bb38d26adcec107f1e



