CVE-2026-98361 in Linux
Resumen
por VulDB • 2026-10-06
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
RDMA/rxe: Restaurar la comprobación HMM_PFN_WRITE en las rutas de escritura ODP
El commit 0b261d7c1cd3 ("RDMA/rxe: Romper bucle infinito de pagefault para páginas RO") eliminó la prueba de permisos de acceso de rxe_check_pagefault() y dejó únicamente HMM_PFN_VALID. Una página con falla de página (page fault) en modo solo lectura, por ejemplo un folio del caché de páginas detrás de una asignación de archivo PROT_READ, satisface entonces la comprobación y las operaciones de escritura ODP (RDMA WRITE, respuesta RDMA READ, carga útil SEND, atómicos) la modifican a través de kmap sin romper nunca CoW.
Un usuario no privilegiado puede registrar un MR ODP sobre dicha asignación y hacer que el tráfico entrante de RDMA sobrescriba el caché de páginas de un archivo del cual solo tiene acceso O_RDONLY, incluyendo /etc/passwd o binarios setuid. Esta es la misma clase primitiva que Dirty COW y CVE-2022-2590.
mlx5 posee la invariante faltante: su ruta ODP establece el bit de escritura del dispositivo únicamente para pfns que llevan HMM_PFN_WRITE. Restáurelo en rxe requiriendo HMM_PFN_WRITE en rxe_check_pagefault() para cada operación excepto RXE_PAGEFAULT_RDONLY. Una escritura a una VMA no escribible ahora falla con un único intento de pagefault devolviendo -EPERM desde hmm_vma_fault() en lugar de re-faulting eternamente. Para una VMA escribible, el page fault rompe CoW y la escritura se guarda en la página privada.
Mantener las operaciones flush de pmem en la comprobación de solo lectura. arch_wb_cache_pmem() nunca modifica memoria, y los bits de acceso FLUSH no hacen que umem sea escribible, por lo que clasificar las operaciones flush como escrituras haría fallar cada flush contra un MR solo para flush.
If you want to get best quality of vulnerability data, you may have to visit VulDB.