5.5
MEDIUM CVSS 3.1
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
Affected Products

The following products are affected by CVE-2026-64289 vulnerability. Even if cvefeed.io is aware of the exact versions of the products that are affected, the information is not represented in the table below.

ID Vendor Product Action
1 Linux linux_kernel
CVSS Scores
The Common Vulnerability Scoring System is a standardized framework for assessing the severity of vulnerabilities in software and systems. We collect and displays CVSS scores from various sources for each CVE.
Score Version Severity Vector Exploitability Score Impact Score Source
CVSS 3.1 MEDIUM [email protected]
Solution
Update the Linux kernel to patch a vulnerability that causes CPU soft-lockups.
  • 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
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
EPSS is a daily estimate of the probability of exploitation activity being observed over the next 30 days. Following chart shows the EPSS score history of the vulnerability.