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

virtio-net: fix len check in receive_big()

receive_big() bounds the device-announced length by
(big_packets_num_skbfrags + 1) * PAGE_SIZE. That is still too loose:
add_recvbuf_big() sets sg[1] to start at offset
sizeof(struct padded_vnet_hdr) into the first page, so the chain
actually carries hdr_len + (PAGE_SIZE - sizeof(padded_vnet_hdr)) +
big_packets_num_skbfrags * PAGE_SIZE bytes -- 20 bytes less than the
check allows for the common hdr_len == 12 case.

A malicious virtio backend can announce a len in that gap. page_to_skb()
then walks one frag past the page chain, storing a NULL page->private
into skb_shinfo()->frags[MAX_SKB_FRAGS], which is both an out-of-bounds
write past the static frag array and a NULL frag handed up the rx path.

Bound len by the size add_recvbuf_big() actually advertised.
Published: 2026-07-27
Score: 8.4 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The bug in virtio‑net’s receive_big function causes the driver to allow a device‑announced length that exceeds the actually advertised size. When a malicious virtio backend supplies a length in the unused gap, the kernel’s page_to_skb routine walks past the allowed page chain, writing to skb_shinfo()->frags[MAX_SKB_FRAGS]. This out‑of‑bounds write stores a NULL page->private pointer and propagates a NULL fragment up the receive path, potentially corrupting kernel data structures or enabling arbitrary write capabilities. As the problem resides in the kernel, any successful exploitation could lead to kernel panic, privilege escalation, or denial of service.

Affected Systems

All Linux kernel releases that contain the original virtio‑net implementation but lack the commit that bounds the length to the value advertised by add_recvbuf_big are affected. The vulnerability applies to systems running virtio back‑end drivers that can supply arbitrary length values to the host, typically virtualization environments exposing virtio devices.

Risk and Exploitability

The CVSS score is 8.4, indicating a high severity vulnerability. The EPSS score is < 1%, suggesting a low but non‑zero probability of exploitation in the wild. The vulnerability is not listed in the CISA KEV catalog. Exploitation requires a malicious virtio backend or a compromised virtual environment, so the attack vector is likely limited to controlled or malicious virtual guests. No public exploit has been reported; however, the kernel‑level nature of the flaw allows for privilege escalation, making it a significant risk for affected systems.

Generated by OpenCVE AI on August 3, 2026 at 16:41 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the kernel patch that bounds the receive_big length to the advertised value, as introduced in commit 38e94d63 and subsequent commits.
  • If the vendor releases a kernel update containing the fix, upgrade the host kernel to the patched version immediately.
  • If an immediate kernel upgrade is not possible, manually apply the patch to the current kernel source and rebuild the kernel modules for virtio-net.
  • Verify that the virtio backend is trusted and restrict access to virtual devices from untrusted guests, using isolation mechanisms such as namespaces or role‑based access control.
  • Monitor system logs for any kernel panics or abnormal network traffic that may indicate exploitation attempts, and apply additional hardening such as disabling unused virtio features or employing network segmentation.

Generated by OpenCVE AI on August 3, 2026 at 16:41 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DLA Debian DLA DLA-4720-1 linux security update
Debian DLA Debian DLA DLA-4723-1 linux-6.1 security update
Debian DLA Debian DLA DLA-4724-1 linux-6.12 new package
Debian DSA Debian DSA DSA-6405-1 linux security update
History

Thu, 30 Jul 2026 06:15:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

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

cvssV3_1

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


Wed, 29 Jul 2026 12:15:00 +0000

Type Values Removed Values Added
References
Metrics threat_severity

None

cvssV3_1

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

threat_severity

Important


Tue, 28 Jul 2026 16:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-122
CWE-787

Mon, 27 Jul 2026 20:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: virtio-net: fix len check in receive_big() receive_big() bounds the device-announced length by (big_packets_num_skbfrags + 1) * PAGE_SIZE. That is still too loose: add_recvbuf_big() sets sg[1] to start at offset sizeof(struct padded_vnet_hdr) into the first page, so the chain actually carries hdr_len + (PAGE_SIZE - sizeof(padded_vnet_hdr)) + big_packets_num_skbfrags * PAGE_SIZE bytes -- 20 bytes less than the check allows for the common hdr_len == 12 case. A malicious virtio backend can announce a len in that gap. page_to_skb() then walks one frag past the page chain, storing a NULL page->private into skb_shinfo()->frags[MAX_SKB_FRAGS], which is both an out-of-bounds write past the static frag array and a NULL frag handed up the rx path. Bound len by the size add_recvbuf_big() actually advertised.
Title virtio-net: fix len check in receive_big()
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-05T12:42:58.536Z

Reserved: 2026-07-19T15:36:31.796Z

Link: CVE-2026-64552

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-07-27T21:17:08.173

Modified: 2026-07-30T06:25:58.987

Link: CVE-2026-64552

cve-icon Redhat

Severity : Important

Publid Date: 2026-07-27T00:00:00Z

Links: CVE-2026-64552 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-03T16:45:03Z

Weaknesses