Database/Kernel, userspace & hypervisor
Linux kernel (drivers/iommu/iommufd): A tenant supplies an IOVA and user pointer whose alignment math overflows, so
Impact
A tenant supplies an IOVA and user pointer whose alignment math overflows, so iommufd allocates the mapping area over a different IOVA range than the one it validated. A DMA window ends up somewhere the kernel did not intend it - the precondition for a passthrough device reaching memory outside its tenant's assignment.
Who can reach it
Any holder of /dev/iommu - a VMM for a passthrough VM, or a container handed the iommufd node - issuing IOMMU_IOAS_MAP with a crafted iova/user-pointer pair. Found by syzkaller, but the overflow is in the production area-allocation path (iopt_alloc_area_pages), not in test-only code; CONFIG_IOMMUFD_TEST only makes it visible as a WARN. No host root required.
What to do
The record lists no fixed release; boot a kernel carrying the stable fix commits below. Interim control: do not expose /dev/iommu to tenants; mediate DMA mapping through the host VMM rather than handing the fd into the guest's container.
References
Related entries
- Linux kernel (drivers/iommu/iommufd): Iommufd accepts a user address plus length that wraps past zero, then asks the mmCVE-2023-54239 · Linux kernel (drivers/iommu/iommufd)Medium
- Linux kernel (drivers/iommu/iommufd): The cache-invalidation ioctl calls a driver operation that may not exist, jumpingCVE-2024-46824 · Linux kernel (drivers/iommu/iommufd)Medium
- Linux kernel (drivers/iommu/iommufd): A tenant using nested translation can ask iommufd to process a cache-invalidationCVE-2026-64289 · Linux kernel (drivers/iommu/iommufd)Medium
- Linux kernel (drivers/iommu/iommufd): Iommufd accepted any non-zero virtual event queue depth up to U32_MAX, so aCVE-2026-64291 · Linux kernel (drivers/iommu/iommufd)Medium
- Linux kernel (drivers/iommu/iommufd): A failed copy_to_user while draining the iommufd fault queue restarts the sameCVE-2026-64290 · Linux kernel (drivers/iommu/iommufd)Medium
- Linux kernel (drivers/iommu/iommufd): A user-supplied page shift of 63 overflows the divisor in the iommufdCVE-2025-40293 · Linux kernel (drivers/iommu/iommufd)Medium
This entry is curated: imported from vendor advisories with machine assistance, not yet individually verified. Confirm against your vendor's advisory before acting, and report anything wrong.