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

Vulnerabilidad en kernel de Linux (CVE-2023-52935)

Gravedad CVSS v3.1:
ALTA
Tipo:
CWE-416 Utilización después de liberación
Fecha de publicación:
27/03/2025
Última modificación:
01/04/2025

Descripción

En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: mm/khugepaged: corrección de la ejecución->anon_vma. Si se adjunta un ->anon_vma al VMA, la función collapse_and_free_pmd() requiere que esté bloqueada. Se permite el recorrido de la tabla de páginas bajo cualquiera de los bloqueos mmap, anon_vma (si el VMA está asociado a un anon_vma) y mapeo (si el VMA está asociado a un mapeo). Por lo tanto, para poder eliminar tablas de páginas, debemos mantener las tres. La función retract_page_tables() se activa si se adjunta un ->anon_vma, pero realiza esta comprobación antes de mantener el bloqueo mmap (como explica el comentario sobre la comprobación). Si fusionamos rápidamente un ->anon_vma existente (compartido con un proceso hijo) de un VMA vecino, los recorridos posteriores de rmap en páginas pertenecientes al hijo podrán ver las tablas de páginas que estamos eliminando simultáneamente, asumiendo que nadie más puede acceder a ellas. Repetir la comprobación de ->anon_vma una vez que mantengamos el bloqueo mmap para garantizar que no haya accesos simultáneos a la tabla de páginas. Este error genera una advertencia de lockdep en el comando breakdown_and_free_pmd(), en la línea "lockdep_assert_held_write(&vma->anon_vma->root->rwsem)". También puede provocar accesos de use-after-free.

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.8 (incluyendo) 6.1.11 (excluyendo)
cpe:2.3:o:linux:linux_kernel:6.2:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.2:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.2:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.2:rc4:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.2:rc5:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.2:rc6:*:*:*:*:*:*