CVE-2026-64289
iommufd: Set upper bounds on cache invalidation entry_num and entry_len
Description
In the Linux kernel, the following vulnerability has been resolved: iommufd: Set upper bounds on cache invalidation entry_num and entry_len iommufd_hwpt_invalidate() takes a user-controlled entry_num and entry_len, each bounded only by U32_MAX. An entry_len beyond the kernel's struct size makes the copy helper verify the extra bytes are zero, scanning that excess in one uninterruptible pass; a multi-gigabyte value over zeroed user memory trips the soft-lockup watchdog. A large entry_num is the other half, driving the backend invalidation loop with no reschedule. The VT-d nested handler, for one, copies each entry and flushes caches per iteration, pinning the CPU on a non-preemptible kernel. Cap both in the ioctl. entry_len is held under PAGE_SIZE, above any request struct, and entry_num under 1 << 19, the order of a hardware invalidation queue and well beyond any real batch, bounding the per-call loop length.
INFO
Published Date :
July 25, 2026, 10:17 a.m.
Last Modified :
Aug. 17, 2026, 5:17 a.m.
Remotely Exploit :
No
Source :
416baaa9-dc9f-4396-8d5f-8c081fb06d67
CVSS Scores
| Score | Version | Severity | Vector | Exploitability Score | Impact Score | Source |
|---|---|---|---|---|---|---|
| CVSS 3.1 | MEDIUM | [email protected] |
Solution
- Apply the provided Linux kernel patches.
- Update the Linux kernel to a fixed version.
- Limit entry_len and entry_num via ioctl.
References to Advisories, Solutions, and Tools
Here, you will find a curated list of external links that provide in-depth
information, practical solutions, and valuable tools related to
CVE-2026-64289.
CWE - Common Weakness Enumeration
While CVE identifies
specific instances of vulnerabilities, CWE categorizes the common flaws or
weaknesses that can lead to vulnerabilities. CVE-2026-64289 is
associated with the following CWEs:
Common Attack Pattern Enumeration and Classification (CAPEC)
Common Attack Pattern Enumeration and Classification
(CAPEC)
stores attack patterns, which are descriptions of the common attributes and
approaches employed by adversaries to exploit the CVE-2026-64289
weaknesses.
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2026-64289 vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2026-64289 vulnerability over time.
Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.
-
CVE Modified by 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Aug. 17, 2026
Action Type Old Value New Value Changed Affected [{'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '8c6eabae3807e048b9f17733af5e20500fbf858c', 'lessThan': 'd2bd041e0efaf7d81789779b135279d18b33d6d5', 'versionType': 'git'}, {'status': 'affected', 'version': '8c6eabae3807e048b9f17733af5e20500fbf858c', 'lessThan': '32ca4aed2a66205b072fcfecabe220289a8149ff', 'versionType': 'git'}, {'status': 'affected', 'version': '8c6eabae3807e048b9f17733af5e20500fbf858c', 'lessThan': '2c6381d90898089287e0a358f06f89f6b4b389f2', 'versionType': 'git'}, {'status': 'affected', 'version': '8c6eabae3807e048b9f17733af5e20500fbf858c', 'lessThan': '4d70986002f2f3eaaed89124fb2522bded38b016', 'versionType': 'git'}], 'programFiles': ['drivers/iommu/iommufd/hw_pagetable.c'], 'defaultStatus': 'unaffected'}, {'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '6.8'}, {'status': 'unaffected', 'version': '0', 'lessThan': '6.8', 'versionType': 'semver'}, {'status': 'unaffected', 'version': '6.12.96', 'versionType': 'semver', 'lessThanOrEqual': '6.12.*'}, {'status': 'unaffected', 'version': '6.18.39', 'versionType': 'semver', 'lessThanOrEqual': '6.18.*'}, {'status': 'unaffected', 'version': '7.1.4', 'versionType': 'semver', 'lessThanOrEqual': '7.1.*'}, {'status': 'unaffected', 'version': '7.2-rc1', 'versionType': 'original_commit_for_fix', 'lessThanOrEqual': '*'}], 'programFiles': ['drivers/iommu/iommufd/hw_pagetable.c'], 'defaultStatus': 'affected'}] [{'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '8c6eabae3807e048b9f17733af5e20500fbf858c', 'lessThan': 'd2bd041e0efaf7d81789779b135279d18b33d6d5', 'versionType': 'git'}, {'status': 'affected', 'version': '8c6eabae3807e048b9f17733af5e20500fbf858c', 'lessThan': '32ca4aed2a66205b072fcfecabe220289a8149ff', 'versionType': 'git'}, {'status': 'affected', 'version': '8c6eabae3807e048b9f17733af5e20500fbf858c', 'lessThan': '2c6381d90898089287e0a358f06f89f6b4b389f2', 'versionType': 'git'}, {'status': 'affected', 'version': '8c6eabae3807e048b9f17733af5e20500fbf858c', 'lessThan': '4d70986002f2f3eaaed89124fb2522bded38b016', 'versionType': 'git'}], 'programFiles': ['drivers/iommu/iommufd/hw_pagetable.c'], 'defaultStatus': 'unaffected'}, {'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '6.8'}, {'status': 'unaffected', 'version': '0', 'lessThan': '6.8', 'versionType': 'semver'}, {'status': 'unaffected', 'version': '6.12.96', 'versionType': 'semver', 'lessThanOrEqual': '6.12.*'}, {'status': 'unaffected', 'version': '6.18.39', 'versionType': 'semver', 'lessThanOrEqual': '6.18.*'}, {'status': 'unaffected', 'version': '7.1.4', 'versionType': 'semver', 'lessThanOrEqual': '7.1.*'}, {'status': 'unaffected', 'version': '7.2', 'versionType': 'original_commit_for_fix', 'lessThanOrEqual': '*'}], 'programFiles': ['drivers/iommu/iommufd/hw_pagetable.c'], 'defaultStatus': 'affected'}] -
Initial Analysis by [email protected]
Aug. 13, 2026
Action Type Old Value New Value Added CVSS V3.1 AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H Added CWE NVD-CWE-noinfo Added CPE Configuration OR *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 6.13 up to (excluding) 6.18.39 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 6.19 up to (excluding) 7.1.4 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 6.8 up to (excluding) 6.12.96 Added Reference Type kernel.org: https://git.kernel.org/stable/c/2c6381d90898089287e0a358f06f89f6b4b389f2 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/32ca4aed2a66205b072fcfecabe220289a8149ff Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/4d70986002f2f3eaaed89124fb2522bded38b016 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/d2bd041e0efaf7d81789779b135279d18b33d6d5 Types: Patch -
New CVE Received by 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Jul. 25, 2026
Action Type Old Value New Value Added Affected [{'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '8c6eabae3807e048b9f17733af5e20500fbf858c', 'lessThan': 'd2bd041e0efaf7d81789779b135279d18b33d6d5', 'versionType': 'git'}, {'status': 'affected', 'version': '8c6eabae3807e048b9f17733af5e20500fbf858c', 'lessThan': '32ca4aed2a66205b072fcfecabe220289a8149ff', 'versionType': 'git'}, {'status': 'affected', 'version': '8c6eabae3807e048b9f17733af5e20500fbf858c', 'lessThan': '2c6381d90898089287e0a358f06f89f6b4b389f2', 'versionType': 'git'}, {'status': 'affected', 'version': '8c6eabae3807e048b9f17733af5e20500fbf858c', 'lessThan': '4d70986002f2f3eaaed89124fb2522bded38b016', 'versionType': 'git'}], 'programFiles': ['drivers/iommu/iommufd/hw_pagetable.c'], 'defaultStatus': 'unaffected'}, {'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '6.8'}, {'status': 'unaffected', 'version': '0', 'lessThan': '6.8', 'versionType': 'semver'}, {'status': 'unaffected', 'version': '6.12.96', 'versionType': 'semver', 'lessThanOrEqual': '6.12.*'}, {'status': 'unaffected', 'version': '6.18.39', 'versionType': 'semver', 'lessThanOrEqual': '6.18.*'}, {'status': 'unaffected', 'version': '7.1.4', 'versionType': 'semver', 'lessThanOrEqual': '7.1.*'}, {'status': 'unaffected', 'version': '7.2-rc1', 'versionType': 'original_commit_for_fix', 'lessThanOrEqual': '*'}], 'programFiles': ['drivers/iommu/iommufd/hw_pagetable.c'], 'defaultStatus': 'affected'}] Added Description In the Linux kernel, the following vulnerability has been resolved: iommufd: Set upper bounds on cache invalidation entry_num and entry_len iommufd_hwpt_invalidate() takes a user-controlled entry_num and entry_len, each bounded only by U32_MAX. An entry_len beyond the kernel's struct size makes the copy helper verify the extra bytes are zero, scanning that excess in one uninterruptible pass; a multi-gigabyte value over zeroed user memory trips the soft-lockup watchdog. A large entry_num is the other half, driving the backend invalidation loop with no reschedule. The VT-d nested handler, for one, copies each entry and flushes caches per iteration, pinning the CPU on a non-preemptible kernel. Cap both in the ioctl. entry_len is held under PAGE_SIZE, above any request struct, and entry_num under 1 << 19, the order of a hardware invalidation queue and well beyond any real batch, bounding the per-call loop length. Added Reference https://git.kernel.org/stable/c/2c6381d90898089287e0a358f06f89f6b4b389f2 Added Reference https://git.kernel.org/stable/c/32ca4aed2a66205b072fcfecabe220289a8149ff Added Reference https://git.kernel.org/stable/c/4d70986002f2f3eaaed89124fb2522bded38b016 Added Reference https://git.kernel.org/stable/c/d2bd041e0efaf7d81789779b135279d18b33d6d5