CVE-2026-63970

High

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.

SeverityHigh
CVSS7.8
Exploit probability—
ProductLinux Kernel
PublishedJul 19, 2026
First seenJul 19, 2026
Weakness typeCWE-401CWE-401

How to fix

Update
  • linux linux_kernel6.12.97, 6.18.35, 7.0.12 or later

Affected products

ProductAffected versionsFixed in
linux linux_kernel6.7 ≤ v < 6.12.97, 6.13 ≤ v < 6.18.35, 6.19 ≤ v < 7.0.12, 7.16.12.97, 6.18.35, 7.0.12

Check your version

Choose the product and enter the version you run to see whether it falls in the affected range.

In the Intelligence 360 plan

Attack Surface Management

See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.

CVE-2026-63970 · Linux Kernel · Dark Radar