Severity by source
AV:A/AC:L/PR:N/UI:N/S:C/C:N/I:N/A:H
Mergeable buffer feature must be negotiated and guest must be stalling concurrently, warranting AC:H; S:C retained as host thread is impacted by guest-side ring state.
Primary rating from Vendor (Linux).
CVSS VectorVendor: Linux
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:C/C:N/I:N/A:H
Lifecycle Timeline
5DescriptionCVE.org
In the Linux kernel, the following vulnerability has been resolved:
vhost: fix vhost_get_avail_idx for a non empty ring
vhost_get_avail_idx is supposed to report whether it has updated vq->avail_idx. Instead, it returns whether all entries have been consumed, which is usually the same. But not always - in drivers/vhost/net.c and when mergeable buffers have been enabled, the driver checks whether the combined entries are big enough to store an incoming packet. If not, the driver re-enables notifications with available entries still in the ring. The incorrect return value from vhost_get_avail_idx propagates through vhost_enable_notify and causes the host to livelock if the guest is not making progress, as vhost will immediately disable notifications and retry using the available entries.
This goes back to commit d3bb267bbdcb ("vhost: cache avail index in vhost_enable_notify()") which changed vhost_enable_notify() to compare the freshly read avail index against vq->last_avail_idx instead of the previously cached vq->avail_idx. Commit 7ad472397667 ("vhost: move smp_rmb() into vhost_get_avail_idx()") then carried over the same comparison when refactoring vhost_enable_notify() to call the unified vhost_get_avail_idx().
The obvious fix is to make vhost_get_avail_idx do what the comment says it does and report whether new entries have been added.
AnalysisAI
Livelock in the Linux kernel's vhost-net subsystem can cause a host denial-of-service against KVM virtualization environments when mergeable receive buffers (VIRTIO_NET_F_MRG_RXBUF) are negotiated between host and guest. The defect in vhost_get_avail_idx propagates an incorrect return value through vhost_enable_notify, causing the host vhost kernel thread to spin in an immediate disable-then-retry notification loop when the guest is not consuming virtio ring entries fast enough. …
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
Vulnerability AssessmentAI
| Exploitation | Exploitation requires the Linux kernel vhost-net subsystem to be actively in use - specifically KVM or QEMU-KVM virtualization with a virtio-net device using the in-kernel vhost backend. … Additional conditions and limiting factors are described in the full assessment. |
| Risk Assessment | The official CVSS 7.4 vector (AV:A/AC:L/PR:N/UI:N/S:C/C:N/I:N/A:H) accurately conveys the cross-boundary availability impact but the AC:L rating may overstate exploitability: triggering the livelock requires mergeable receive buffers to be negotiated and the guest to be in a stalled state, conditions that together argue for AC:H rather than AC:L. … Full risk analysis with EPSS, KEV, and SSVC signal comparison available after sign-in. |
| Exploit Scenario | An attacker operating a guest VM - or influencing one via adjacent network access - sends a stream of packets whose combined size exceeds available virtio ring buffer entries while the guest process is slow or stalled in consuming those entries. With mergeable buffers negotiated, vhost-net attempts to re-enable guest notifications, but `vhost_get_avail_idx` returns the wrong value, causing `vhost_enable_notify` to immediately disable notifications and retry in a tight loop, livelocking the host CPU thread servicing that guest's network I/O. … |
| Remediation | Upgrade to a patched stable kernel version: 6.12.97, 6.18.40, or 7.1.5 for production stable series, or 7.2-rc1 for mainline tracking; apply the appropriate patch from the kernel.org stable commits listed in the affected products section. … Detailed patch versions, workarounds, and compensating controls in full report. |
Recommended ActionAI
Within 24 hours, identify all Linux hypervisor hosts in your environment running KVM with vhost-net enabled and cross-reference against vendor security bulletins to determine affected kernel versions. …
Sign in for detailed remediation steps and compensating controls.
Threat intelligence, references, and detailed analysis are available after sign-in.
Same technique Information Disclosure
View allVendor StatusVendor
Share
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-59503
GHSA-pp6m-qvmq-968c