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

vsock/virtio: bind uarg before filling zerocopy skb

virtio_transport_send_pkt_info() allocates or reuses the zerocopy uarg
before entering the send loop, but virtio_transport_alloc_skb() still
fills the skb before it inherits that uarg. When fixed-buffer vectored
zerocopy hits MAX_SKB_FRAGS, io_sg_from_iter() may partially attach
managed frags and return -EMSGSIZE. The rollback path call kfree_skb()
to free an skb that carries SKBFL_MANAGED_FRAG_REFS but no uarg, so
skb_release_data() falls through to ordinary frag unref.

Pass the uarg into virtio_transport_alloc_skb() and bind it immediately
before virtio_transport_fill_skb(). This keeps control or no-payload skbs
untouched while ensuring success and rollback share one lifetime rule.
Published: 2026-07-19
Score: 7.8 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

A flaw in the Linux kernel’s virtio_vsock implementation causes the send routine to bind a user argument (uarg) to a socket buffer (skb) after the buffer has already been filled for zero‑copy transmission. When the number of fragments reaches a kernel‑defined maximum, a partial attachment of managed fragments can return an error and the rollback path frees an skb that still contains fragment references but lacks its uarg. The subsequent release routine falls through to ordinary fragment cleanup, creating an use‑after‑free situation that may corrupt kernel memory and allow a local attacker to gain privilege escalation.

Affected Systems

The kernel code path is part of the generic Linux kernel; any distribution that has not incorporated the patch commit that binds the uarg before filling the skb is potentially affected. This includes all systems running a kernel version prior to the public merge of the fix referenced in the kernel‑git URLs provided.

Risk and Exploitability

The CVSS score of 7.8 indicates a high severity, while an EPSS below 1 % reflects a low current exploitation probability. The vulnerability is not listed in CISA’s KEV catalog, and the required conditions—local control of virtio packet transmission—suggest that only local or privileged users can trigger it. Consequently, the overall risk is moderate, but the lack of immediate exploit evidence does not diminish the importance of applying the fix promptly.

Generated by OpenCVE AI on August 3, 2026 at 01:52 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply a kernel update that includes the commit which binds the uarg before the skb is filled; this is the official and most complete remediation.
  • If a suitable kernel update is not immediately available, disable the VSOCK or virtio transport interface at the system level to prevent the vulnerable code path from being exercised.
  • Continuously monitor kernel mailing list and vendor security advisories for the release of a backport and test the patch in a staging environment before production deployment.

Generated by OpenCVE AI on August 3, 2026 at 01:52 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-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
History

Sun, 26 Jul 2026 08:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

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


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

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

None

threat_severity

Important


Tue, 21 Jul 2026 23:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Mon, 20 Jul 2026 14:45: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'}


Sun, 19 Jul 2026 15:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: vsock/virtio: bind uarg before filling zerocopy skb virtio_transport_send_pkt_info() allocates or reuses the zerocopy uarg before entering the send loop, but virtio_transport_alloc_skb() still fills the skb before it inherits that uarg. When fixed-buffer vectored zerocopy hits MAX_SKB_FRAGS, io_sg_from_iter() may partially attach managed frags and return -EMSGSIZE. The rollback path call kfree_skb() to free an skb that carries SKBFL_MANAGED_FRAG_REFS but no uarg, so skb_release_data() falls through to ordinary frag unref. Pass the uarg into virtio_transport_alloc_skb() and bind it immediately before virtio_transport_fill_skb(). This keeps control or no-payload skbs untouched while ensuring success and rollback share one lifetime rule.
Title vsock/virtio: bind uarg before filling zerocopy skb
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:37:41.706Z

Reserved: 2026-07-19T07:54:57.024Z

Link: CVE-2026-63970

cve-icon Vulnrichment

No data.

cve-icon NVD

No data.

cve-icon Redhat

Severity : Important

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

Links: CVE-2026-63970 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-03T02:00:15Z

Weaknesses
  • CWE-825

    Expired Pointer Dereference