Skip to main content
← All vulnerabilities
CVE-2026-46300

net: skbuff: preserve shared-frag marker during coalescing

Published
Last modified
Status
published
Known exploitation
Not listed in CISA KEV
Fix
Fixed in 5.10.257, 5.15.208, 6.1.174, 6.6.141, 6.12.91, and 2 more
Public exploit
1 on Exploit-DB
CISA SSVC
  • Exploitation: none
  • Automatable: no
  • Technical impact: total
?

Decision points from CISA's Vulnrichment, assessed (SSVC 2.0.3).

SSVC documentation

Summary

In the Linux kernel, the following vulnerability has been resolved: net: skbuff: preserve shared-frag marker during coalescing skb_try_coalesce() can attach paged frags from @from to @to. If @from has SKBFL_SHARED_FRAG set, the resulting @to skb can contain the same externally-owned or page-cache-backed frags, but the shared-frag marker is currently lost. That breaks the invariant relied on by later in-place writers. In particular, ESP input checks skb_has_shared_frag() before deciding whether an uncloned nonlinear skb can skip skb_cow_data(). If TCP receive coalescing has moved shared frags into an unmarked skb, ESP can see skb_has_shared_frag() as false and decrypt in place over page-cache backed frags. Propagate SKBFL_SHARED_FRAG when skb_try_coalesce() transfers paged frags. The tailroom copy path does not need the marker because it copies bytes into @to's linear data rather than transferring frag descriptors.

Affected versions

  • Linux Linux

    From cef401de7be8c4e155c6746bfccf721a4fa5fab9 · fixed in 3599e6b3cc1ada96883d496a50a210d3afbb6987; From cef401de7be8c4e155c6746bfccf721a4fa5fab9 · fixed in 2f2b16022a2e10ca7bccfb98db5ed2ec0f72641c; From cef401de7be8c4e155c6746bfccf721a4fa5fab9 · fixed in 9d3e5fd19fe1063bf607219e8562fbd567b8e8d5; From cef401de7be8c4e155c6746bfccf721a4fa5fab9 · fixed in 78bf6b6bb19541d19fbda6242e7cfe2c682763c0; From cef401de7be8c4e155c6746bfccf721a4fa5fab9 · fixed in 760e1addc27ba1a7beb4a0a7e8b3e9ec49e7a34e; From cef401de7be8c4e155c6746bfccf721a4fa5fab9 · fixed in 3bd9e113d50034db99d7ef69fd8e5242d15e414a; From cef401de7be8c4e155c6746bfccf721a4fa5fab9 · fixed in 3884358a9286b17f389a72b1426fc4547c23c111; From cef401de7be8c4e155c6746bfccf721a4fa5fab9 · fixed in f84eca5817390257cef78013d0112481c503b4a3

  • Linux Linux

    3.9

  • KernelLinux

    From 3.9.0 · fixed in 5.10.257; From 5.11.0 · fixed in 5.15.208; From 5.16.0 · fixed in 6.1.174; From 6.2.0 · fixed in 6.6.141; From 6.7.0 · fixed in 6.12.91; From 6.13.0 · fixed in 6.18.33; From 6.19.0 · fixed in 7.0.10

References 9

git.kernel.org

Exploit-DB