Description
In the Linux kernel, the following vulnerability has been resolved:

vhost/vdpa: validate virtqueue index in mmap and fault paths

vhost_vdpa_mmap() and vhost_vdpa_fault() use vma->vm_pgoff as a
virtqueue index for get_vq_notification(), but they do not validate
that the index is smaller than v->nvqs.

The ioctl path already performs both a bounds check and
array_index_nospec(), but the mmap/fault path only checks that the
index fits in u16. This allows an out-of-range queue index to reach
driver-specific get_vq_notification() callbacks.

Fix this by extracting a unified vhost_vdpa_get_vq_notification()
helper that validates the queue index against v->nvqs and applies
array_index_nospec() before calling the driver callback. Both the
mmap and fault paths use this helper, and the bounds checking is
consolidated into a single location.

From source inspection, the most defensible impact is out-of-bounds
access in the callback path, potentially leading to invalid PFN
remaps and crash/DoS.
Published: 2026-08-15
Score: 7.8 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Linux kernel’s vhost/vdpa driver uses the offset supplied in an mmap or fault operation as an index into its virtqueue array without fully validating that the index lies within the supported range. The code performs only a 16‑bit check, allowing a crafted offset that corresponds to an out‑of‑range index to pass into the driver’s get_vq_notification callback. As a result, the callback may read or write beyond the bounds of its data structures, leading to an invalid page frame number remap and a kernel crash or denial‑of‑service. This is a classic array‑index misuse identified by CWE-787. Based on the description, it is inferred that the vulnerability arises when a process maps or accesses vhost/vdpa device memory with a specifically chosen offset that forces the driver to treat the value as a virtqueue number that does not exist. The insufficient bounds check allows the index to be used in the callback context. The main impact is that a local or remote user that can interact with the vhost/vdpa interface can trigger unstable kernel behavior, potentially compromising system availability without breaching confidentiality or integrity beyond the immediate crash.

Affected Systems

The affected product is the Linux kernel and its vhost/vdpa subsystem. While no specific kernel versions are listed, the flaw exists in any kernel that includes the vhost/vdpa driver before the commit that added the unified bounds check. All distributions shipping such a kernel with the vhost/vdpa module are potentially impacted.

Risk and Exploitability

The CVSS score of 7.8 indicates a high severity vulnerability. The EPSS score of <1% indicates a very low but non‑zero probability of exploitation at the time of analysis. The vulnerability is not listed in the CISA KEV catalog, suggesting no known widespread exploitation. However, based on the description, the likely attack vector is a process with permission to open a vhost/vdpa device and supply a crafted mmap offset or fault trigger. If such a process gains root or sufficient privileges, an attacker could trigger a kernel panic and deny service to the system. The risk remains significant enough to warrant patching.

Generated by OpenCVE AI on August 22, 2026 at 02:42 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the latest Linux kernel release that contains the vhost/vdpa bounds‑check fix, as referenced by the git commits in the advisory.
  • If updating is not immediately possible, restrict access to the /dev/vhost or related vhost/vdpa device nodes to privileged users or enforce SELinux/AppArmor policies that prevent untrusted processes from opening these devices.
  • Consider enabling kernel hardening options such as CONFIG_STRICT_DEVMEM, CONFIG_RANDOMIZE_MEMORY, or enabling full address space layout randomization (KASLR) to reduce the impact of any residual out‑of‑bounds errors.

Generated by OpenCVE AI on August 22, 2026 at 02:42 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 22 Aug 2026 01:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-119

Fri, 21 Aug 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-787
References
Metrics threat_severity

None

threat_severity

Moderate


Mon, 17 Aug 2026 16:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-119

Mon, 17 Aug 2026 14:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-119
CWE-20

Mon, 17 Aug 2026 06:00:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 7.8, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'}


Sat, 15 Aug 2026 12:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-119
CWE-20

Sat, 15 Aug 2026 06:15:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: vhost/vdpa: validate virtqueue index in mmap and fault paths vhost_vdpa_mmap() and vhost_vdpa_fault() use vma->vm_pgoff as a virtqueue index for get_vq_notification(), but they do not validate that the index is smaller than v->nvqs. The ioctl path already performs both a bounds check and array_index_nospec(), but the mmap/fault path only checks that the index fits in u16. This allows an out-of-range queue index to reach driver-specific get_vq_notification() callbacks. Fix this by extracting a unified vhost_vdpa_get_vq_notification() helper that validates the queue index against v->nvqs and applies array_index_nospec() before calling the driver callback. Both the mmap and fault paths use this helper, and the bounds checking is consolidated into a single location. From source inspection, the most defensible impact is out-of-bounds access in the callback path, potentially leading to invalid PFN remaps and crash/DoS.
Title vhost/vdpa: validate virtqueue index in mmap and fault paths
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-08-17T05:45:44.929Z

Reserved: 2026-08-15T05:44:03.883Z

Link: CVE-2026-74312

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-15T06:22:31.310

Modified: 2026-08-17T06:19:25.467

Link: CVE-2026-74312

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-08-15T00:00:00Z

Links: CVE-2026-74312 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-22T02:45:03Z

Weaknesses