Get a Demo

Let's Patch It!

Book a short call with one our specialists, we'll walk you through how Endor Patches work, and ask you a few questions about your environment (like your primary programming languages and repository management). We'll also send you an email right after you fill out the form, feel free to reply with any questions you have in advance!

CVE

CVE-2026-90049

net: skbuff: don't skb_tx_error() the source skb in skb_zerocopy()
Back to all
CVE

CVE-2026-90049

net: skbuff: don't skb_tx_error() the source skb in skb_zerocopy()

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

net: skbuff: don't skbtxerror() the source skb in skb_zerocopy()

skb_zerocopy() copies frags from @from into @to. On an

skborphanfrags() failure it calls skbtxerror(@from), a destructive

operation on the source skb the copy helper does not own. That completes

@from's zerocopy uarg and clears SKBFLALLZEROCOPY, including the

SKBFLSHAREDFRAG page-ownership marker.

Both callers already report the failure on their own drop path.

nfnetlinkqueue does it at nlaput_failure, and Open vSwitch does it in

the flow-miss drop arm of ovsdpprocess_packet(), so nothing is lost by

dropping it here.

On Open vSwitch's OVSACTIONATTR_USERSPACE path the skb is not freed on

this error: doexecuteactions() ignores output_userspace()'s return

value and, unless the upcall was the last action, keeps forwarding the

same skb through the flow's remaining actions. The uarg is completed

while that skb is still in flight, telling the producer its buffers are

free, and SKBFLSHAREDFRAG is cleared on an skb the rest of the stack

still handles. That flag is what makes espinput() call skbcow_data()

instead of decrypting in place, so a later local ESP delivery can

decrypt over frags the skb does not own privately.

Leave error reporting to the callers.

Package Versions Affected

Package Version
patch Availability
No items found.

Automatically patch vulnerabilities without upgrading

Fix Without Upgrading
Detect compatible fix
Apply safe remediation
Fix with a single pull request

CVSS Version

Severity
Base Score
CVSS Version
Score Vector
C
H
U
9.3
-
3.1
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
C
H
U
0
-
3.1
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
C
H
U
-

Related Resources

No items found.

References

https://git.kernel.org/stable/c/04dd250a78e268af3e7124beb1dc10ec1dd88d60, https://git.kernel.org/stable/c/767ec2a65cc022d303b0c9c12811e7db22057341, https://git.kernel.org/stable/c/8069643ae64dfdf634b6c78c7f622e5323031436, https://git.kernel.org/stable/c/849bdb83123760a865bcb2970127f4c0b9423ba3, https://git.kernel.org/stable/c/8ece906150128d5ec2462aabcc978c568433eca4, https://git.kernel.org/stable/c/a13b1e80e5015cd732440b475c0ef443dc4a2157, https://git.kernel.org/stable/c/bab5a851e44a3601d31f2aa8043f385bb50ac5d9, https://git.kernel.org/stable/c/fb10e0e9b220a2eed08931a60dbaad9a2370c908, https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/90xxx/CVE-2026-90049.json, https://nvd.nist.gov/vuln/detail/CVE-2026-90049, https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Severity

9.3

CVSS Score
0
10

Basic Information

Base CVSS
9.3
EPSS Probability
0.00196%
EPSS Percentile
0.08516%
Introduced Version
36d5fe6a000790f56039afe26834265db0a3ad4c,3.10.51,3.12.40,c5f0c0e7525443add533495e93ba8de6feab2396,1674b4bf3eea3cac51b70778e89f8025f7cfe695,3.14.0,5.11.0,5.16.0,6.2.0,6.7.0,6.13.0,6.19.0,0
Fix Available
8ece906150128d5ec2462aabcc978c568433eca4,3.11,3.13,5.10.270,5.15.221,6.1.188,6.6.157,6.12.110,6.18.51,7.2.5,6.12.111-1~deb12u1,6.12.111-1,0:6.12.0-207.111.5.1.el9uek,0:6.12.0-207.111.5.1.el10uek

Fix Critical Vulnerabilities Instantly

Secure your app without upgrading.
Fix Without Upgrading