CVE-2026-93256 in Linux
Resumen
por VulDB • 2026-09-24
En el núcleo de Linux, se ha resuelto la siguiente vulnerabilidad:
arm64: hibernación: enmascarar DAIF antes de restaurar el kernel hibernado
El código de hibernación para arm64 gestiona el enmascaramiento de excepciones de una manera incorrecta (insalubre), lo que puede provocar bloqueos y/o advertencias durante la reanudación.
Cuando se guarda una imagen de hibernación en `swsusp_arch_suspend()`, todas las excepciones DAIF están enmascaradas (gracias a `local_daif_save()`), y la imagen suspendida se guarda asumiendo que todas las excepciones DAIF permanecerán enmascaradas cuando se restaure la imagen.
Cuando una imagen de hibernación se reanuda mediante `swsusp_arch_resume()`, solo se enmascaran las interrupciones (gracias a `local_irq_disable()` en `resume_target_kernel()`). Cuando está habilitado el pseudo-NMI, los bits DAIF.IF estarán despejados y, independientemente del pseudo-NMI, los bits DAIF.DA también estarán despejados.
Esto significa que existen dos problemas:
(1) Es posible recibir excepciones de Depuración (Debug), SError o pseudo-NMI durante el proceso de reanudación. Esto es inseguro, ya que durante la fase de reanudación tanto el kernel antiguo como el nuevo se encuentran transitoriamente en un estado inconsistente, y `swsusp_arch_suspend_exit()` no retiene una asignación ejecutable de ningún vector de excepciones.
Cualquier excepción capturada aquí será fatal y silenciosa (sin generar registro).
(2) Al volver a entrar en el kernel reanudado, algunos bits DAIF estarán despejados inesperadamente. Esto permite que se capturen excepciones de Depuración, SError o pseudo-NMI durante un breve período mientras el kernel reanudado aún no está en un estado consistente.
Esto es detectado por `CONFIG_ARM64_DEBUG_PRIORITY_MASKING`.
Evite estos problemas enmascarando todas las excepciones DAIF durante la reanudación.
If you want to get best quality of vulnerability data, you may have to visit VulDB.