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

vsock/virtio: fix zerocopy completion for multi-skb sends

When a large message is fragmented into multiple skbs, the zerocopy
uarg is only allocated and attached to the last skb in the loop.
Non-final skbs carry pinned user pages with no completion tracking,
so the kernel has no way to notify userspace when those pages are safe
to reuse. If the loop breaks early the uarg is never allocated at all,
leaking pinned pages with no completion notification.

Fix this by following the approach used by TCP: allocate the zerocopy
uarg (if not provided by the caller) before the send loop and attach
it to every skb via skb_zcopy_set(), which takes a reference per skb.
Each skb's completion properly decrements the refcount, and the
notification only fires after the last skb is freed.
On failure, if no data was sent, the uarg is cleanly aborted via
net_zcopy_put_abort().

This issue was initially discovered by sashiko while reviewing commit
1cb36e252211 ("vsock/virtio: fix MSG_ZEROCOPY pinned-pages accounting")
but was pre-existing.
Published: 2026-07-13
Score: 7.8 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Linux kernel’s virtio versus socket zero-copy implementation incorrectly handles pinned user pages when a large message is divided across multiple network buffer fragments. Only the final fragment is linked to the zerocopy state object, which tracks when the kernel can safely release the pages back to the user space. Intermediate fragments receive no completion notification, and if the send loop aborts early the zerocopy state object is never created, leading to a silent leak of pinned pages. The leaked pages consume kernel memory and can grow unchecked, potentially exhausting memory resources and degrading system performance. The vulnerability does not allow code execution or direct privilege escalation; its primary impact is a denial of service through memory exhaustion.

Affected Systems

All Linux kernel systems that include the virtio “vsock” driver prior to the application of the patch are affected. The flaw resides in core kernel code, so the impact spans all distributions and kernel versions that lack the commit series referenced in the advisory. Kernel releases before the inclusion of the commit timestamped 2026-07-12 (76b995bc57bd) are vulnerable.

Risk and Exploitability

The CVSS score of 7.8 indicates high severity, but the EPSS score of less than 1% suggests a low probability of exploitation in the current threat landscape. The vulnerability is not listed in the CISA KEV catalog. Attackers would need to force the kernel to process large messages fragmented across multiple fragments repeatedly to deplete kernel memory. Without such conditions, the risk remains low. No publicly available exploits have been reported, but the threat of a memory exhaustion denial of service exists for systems that handle large versusocket traffic.

Generated by OpenCVE AI on August 22, 2026 at 11:23 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the latest Linux kernel patch that includes the virtio vsock zero-copy fix referenced in the provided commit list. If an immediate kernel upgrade is not possible, refrain from using the MSG_ZEROCOPY flag on versusocket sockets until the patch is applied.
  • Monitor system memory for signs of pinned page leakage—observe /proc/meminfo, vmstat, or other memory metrics to detect abnormal memory growth.
  • Check your distribution’s security advisories regularly for pending kernel updates and apply them promptly to ensure the fix is in place.

Generated by OpenCVE AI on August 22, 2026 at 11:23 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DLA Debian DLA DLA-4724-1 linux-6.12 new package
Debian DSA Debian DSA DSA-6405-1 linux security update
Ubuntu USN Ubuntu USN USN-8566-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8568-1 Linux kernel (OEM) vulnerabilities
Ubuntu USN Ubuntu USN USN-8569-1 Linux kernel (HWE) vulnerabilities
Ubuntu USN Ubuntu USN USN-8593-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8603-1 Linux kernel (Azure) vulnerabilities
Ubuntu USN Ubuntu USN USN-8618-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8663-1 Linux kernel (NVIDIA) vulnerabilities
Ubuntu USN Ubuntu USN USN-8664-1 Linux kernel (NVIDIA BaseOS) vulnerabilities
History

Tue, 18 Aug 2026 14:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-404
References
Metrics cvssV3_1

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

ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}

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'}


Fri, 24 Jul 2026 18:30:00 +0000


Fri, 17 Jul 2026 07:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-401

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

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

None

cvssV3_1

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

threat_severity

Moderate


Tue, 14 Jul 2026 13:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-401

Mon, 13 Jul 2026 18:00:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: vsock/virtio: fix zerocopy completion for multi-skb sends When a large message is fragmented into multiple skbs, the zerocopy uarg is only allocated and attached to the last skb in the loop. Non-final skbs carry pinned user pages with no completion tracking, so the kernel has no way to notify userspace when those pages are safe to reuse. If the loop breaks early the uarg is never allocated at all, leaking pinned pages with no completion notification. Fix this by following the approach used by TCP: allocate the zerocopy uarg (if not provided by the caller) before the send loop and attach it to every skb via skb_zcopy_set(), which takes a reference per skb. Each skb's completion properly decrements the refcount, and the notification only fires after the last skb is freed. On failure, if no data was sent, the uarg is cleanly aborted via net_zcopy_put_abort(). This issue was initially discovered by sashiko while reviewing commit 1cb36e252211 ("vsock/virtio: fix MSG_ZEROCOPY pinned-pages accounting") but was pre-existing.
Title vsock/virtio: fix zerocopy completion for multi-skb sends
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-18T13:29:37.454Z

Reserved: 2026-06-09T07:44:35.400Z

Link: CVE-2026-53365

cve-icon Vulnrichment

Updated: 2026-08-17T13:41:30.337Z

cve-icon NVD

Status : Modified

Published: 2026-07-13T18:16:28.433

Modified: 2026-08-18T14:17:10.330

Link: CVE-2026-53365

cve-icon Redhat

Severity : Moderate

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

Links: CVE-2026-53365 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-22T11:30:17Z

Weaknesses
  • CWE-401

    Missing Release of Memory after Effective Lifetime

  • CWE-404

    Improper Resource Shutdown or Release

  • CWE-911

    Improper Update of Reference Count