Skip to main content

Linux Kernel CVE-2026-74702

| EUVDEUVD-2026-64389 HIGH
2026-08-22 Linux GHSA-r9hq-6x72-7q3j
8.8
CVSS 3.1 · Vendor: Linux
Share

Severity by source

Vendor (Linux) PRIMARY
8.8 HIGH
AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
vuln.today AI
8.8 HIGH

Local vhost-scsi ioctl access requires low-privileged host access; scope change reflects host kernel panic triggered via guest I/O path; C:H/I:H retained as theoretical upper bound for kernel compromise beyond DoS.

3.1 AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
4.0 AV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H

Primary rating from Vendor (Linux).

CVSS VectorVendor: Linux

CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

5
Analysis Generated
Aug 25, 2026 - 07:22 vuln.today
CVSS changed
Aug 25, 2026 - 06:22 NVD
8.8 (HIGH)
Patch available
Aug 22, 2026 - 16:01 EUVD
CVE Published
Aug 22, 2026 - 15:33 cve.org
UNKNOWN (no severity yet)
CVE Published
Aug 22, 2026 - 15:33 cve.org
HIGH 8.8

DescriptionCVE.org

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

vhost-scsi: reject feature changes after endpoint

vhost_scsi_setup_vq_cmds() runs from VHOST_SCSI_SET_ENDPOINT and allocates each command's protection scatterlist array (prot_sgl) according to the acknowledged VIRTIO_SCSI_F_T10_PI bit. The command pools are not rebuilt when VHOST_SET_FEATURES changes that bit later.

Although virtio feature bits must not change after feature negotiation, vhost_scsi_set_features() currently accepts such a request after the endpoint is active and updates acked_features. Enabling T10-PI after endpoint setup therefore leaves prot_sgl NULL while the I/O path follows the new feature bit.

For a 129-page protection payload, vhost_scsi_mapal() passes the missing first chunk to sg_alloc_table_chained():

sg_alloc_table_chained(table, 129, first_chunk=NULL, nents_first_chunk=inline_sg_cnt)

sg_pool_index() then hits:

BUG_ON(nents > SG_CHUNK_SIZE); /* 129 > 128 */

The kernel reported the following call trace and register state:

Call Trace: <TASK> ? __sg_alloc_table+0x1d8/0x250 ? __pfx_vhost_run_work_list+0x10/0x10 [vhost] sg_alloc_table_chained+0x59/0xf0 ? __pfx_sg_pool_alloc+0x10/0x10 ? vhost_scsi_calc_sgls.constprop.0+0x43/0x60 [vhost_scsi] vhost_scsi_handle_vq+0xf02/0x1700 [vhost_scsi] ? __pfx_vhost_scsi_handle_vq+0x10/0x10 [vhost_scsi] vhost_scsi_handle_kick+0x37/0x50 [vhost_scsi] vhost_run_work_list+0x8e/0xd0 [vhost] vhost_task_fn+0xe1/0x210 ret_from_fork+0x348/0x540 </TASK>

RIP: 0010:0x4 CR2 = 0x4 RSP: 0018:ffffc90000dbf940 EFLAGS: 00010202 RAX: ffffffff82396810 RBX: ffff88811dc28b80 RCX: 0000000000000000 RDX: 0000000000000000 RSI: 0000000000000820 RDI: 0000000000000081

VHOST_F_LOG_ALL is a vhost-specific runtime feature and remains the only exception.

Reject changes to any feature other than VHOST_F_LOG_ALL while the endpoint is active. This preserves the existing runtime log toggle while preventing feature-dependent command resources and data-path state from becoming inconsistent. Userspace must clear the endpoint before changing any other negotiated feature and set the endpoint up again afterward.

AnalysisAI

The vhost-scsi subsystem in the Linux kernel allows a local attacker with low privileges on a KVM virtualization host to trigger a kernel BUG_ON assertion and crash the host by manipulating VIRTIO feature bits after SCSI endpoint setup. The flaw is that vhost_scsi_set_features() incorrectly accepted changes to VIRTIO_SCSI_F_T10_PI after an active endpoint was established, leaving per-command protection scatterlist arrays (prot_sgl) unallocated while the I/O path proceeded under the updated feature state; when a 129-page protection payload arrives, a BUG_ON(nents > SG_CHUNK_SIZE) fires in sg_pool_index(), panicking the host kernel. …

Unlock full vulnerability intelligence

  • Risk assessment & exploitation conditions
  • Attack chain visualization
  • Remediation with exact patch versions
  • Threat intelligence from 22 sources
  • Personal watchlist & email alerts

Free forever · No credit card required

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata

Access
Access vhost-scsi device node on KVM host (PR:L)
Delivery
Establish SCSI endpoint via VHOST_SCSI_SET_ENDPOINT
Exploit
Issue VHOST_SET_FEATURES enabling VIRTIO_SCSI_F_T10_PI on live endpoint
Execution
Submit SCSI I/O with 129-page T10 protection payload
Persist
NULL prot_sgl passed as first_chunk to sg_alloc_table_chained
Impact
BUG_ON(129 > 128) triggers host kernel panic

Vulnerability AssessmentAI

Exploitation Exploitation requires local access to a Linux KVM hypervisor host with the vhost-scsi module loaded and an active SCSI endpoint established via VHOST_SCSI_SET_ENDPOINT. … Additional conditions and limiting factors are described in the full assessment.
Risk Assessment Despite the CVSS 8.8 score with a Scope Changed vector, real-world exploitation risk is considerably lower than the raw number implies. … Full risk analysis with EPSS, KEV, and SSVC signal comparison available after sign-in.
Exploit Scenario A local attacker with low-privileged host access to a KVM system running QEMU with a vhost-scsi backend first calls VHOST_SCSI_SET_ENDPOINT to activate the endpoint - causing prot_sgl to be allocated based on the current (T10-PI off) feature state - then issues VHOST_SET_FEATURES to enable VIRTIO_SCSI_F_T10_PI on the live endpoint without triggering command pool reallocation. The attacker, or a guest VM under their control, then submits a SCSI write command carrying 129 pages of T10 protection information, causing vhost_scsi_mapal() to pass NULL as first_chunk to sg_alloc_table_chained(), triggering BUG_ON in sg_pool_index() and crashing the host kernel. …
Remediation Upgrade to a patched Linux kernel: version 6.18.45, 7.1.9, or 7.2 (mainline), per the three confirmed stable backport commits at https://git.kernel.org/stable/c/a06e4611d45518896fbff4f45d9581578b107e91, https://git.kernel.org/stable/c/9a3eb77a612f9d158e4d27df43677a014e9cfa55, and https://git.kernel.org/stable/c/42bc45df5905e2b7dccb72adaf7730f66cfbe03f. … Detailed patch versions, workarounds, and compensating controls in full report.

Recommended ActionAI

Within 24 hours, identify all KVM host systems running Linux kernel versions prior to 6.18.45, 7.1.9, or 7.2 mainline. …

Sign in for detailed remediation steps and compensating controls.

Threat intelligence, references, and detailed analysis are available after sign-in.

Share

CVE-2026-74702 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy