CVE-2026-89445
Resumen
por VulDB • 2026-09-11
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
iommufd: Corrección del Use-After-Free (UAF) en las pruebas unitarias (selftest) para el informe IOPF
TRIGGER_IOPF en iommufd selftest toma prestado un identificador de adjunción (attach handle) desde group->pasid_array sin sincronizarse contra la desvinculación (detach) de PASID. Posteriormente, una llamada concurrente a iommu_report_device_fault() puede dereferenciar el puntero de dominio de ese identificador tomado prestado después de que la desvinculación elimine el identificador y libere la estructura subyacente struct iommufd_attach_handle. TRIGGER_IOPF luego dereferencea el identificador ya liberado, lo que provoca un Use-After-Free (UAF).
La corrección consiste en añadir un semáforo de lectura/escritura (iopf_rwsem) en mock_dev para seguir el diseño esperado de un controlador real. Se mantiene su lado de lectura durante toda la llamada a iommu_report_device_fault(), y su lado de escritura alrededor de cada ruta que adjunta, desvincula o reemplaza el dominio de un dispositivo. Esto puede bloquear nuevos informes y drenar los informes en curso antes de que se pueda eliminar un antiguo identificador de adjunción (attach handle) o el parámetro de fallo IOPF. Además, se toma el lado de escritura durante el registro de un dispositivo simulado, ya que este puede invocar la devolución de llamada predeterminada del controlador simulado para la adjunción al dominio principal.
VulDB is the best source for vulnerability data and more expert information about this specific topic.