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

net: skbuff: don't touch shared zerocopy state in skb_tx_error()

skb_tx_error() completes the zerocopy uarg and clears
SKBFL_ALL_ZEROCOPY, and skb_zcopy_downgrade_managed() clears
SKBFL_MANAGED_FRAG_REFS. Both live in skb_shinfo(), which every clone
shares, while the caller only owns the reference it is about to drop.
Through a clone it tells the producer its pages are free and drops
SKBFL_SHARED_FRAG for an skb that is still in flight.

Open vSwitch reaches this with a non-last OVS_ACTION_ATTR_RECIRC:
clone_execute() sends a skb_clone() into ovs_dp_process_packet() while
do_execute_actions() keeps forwarding the original, and skb_clone()
does not privatise the frags here -- skb_orphan_frags() returns early
on SKBFL_DONT_ORPHAN. A flow miss on the clone then strips the marker
from the packet still being forwarded, and a later local ESP delivery
decrypts in place over frags it does not own privately.

Skip it for a cloned skb. Nothing is lost: skb_release_data() clears
the zerocopy state once the last reference to the shared data goes.
Published: 2026-09-11
Score: 7.8 High
EPSS: < 1% Very Low
KEV: No
Impact: Memory corruption leading to possible remote code execution
Action: Patch immediately
AI Analysis

Impact

The vulnerability arises because skb_tx_error() clears shared zerocopy state even when the buffer is still being used by a clone. This incorrect handling of SKBFL_SHARED_FRAG and SKBFL_ALL_ZEROCOPY allows a cloned sk_buff to lose the ownership flag while packets are still in flight. In an Open vSwitch context, a non‑last OVS_ACTION_ATTR_RECIRC can trigger a clone that is forwarded while the original is processed. When the clone later fails and the shared sk_buff is modified in this way, an ESP payload may be decrypted in place over fragments that are no longer private, potentially corrupting kernel memory. An attacker who can influence packet content may exploit the resulting memory corruption to achieve privilege escalation or arbitrary code execution inside the kernel.

Affected Systems

All Linux kernel releases prior to the kernel commit that introduced the fix (0370da114a9bc044e248b85c6809d1b5e0c1f7f9) are affected. The issue is specifically triggered when Open vSwitch() followed by an OVS_ACTION_ATTR_RECIRC non‑last action. Systems running Open vSwitch on affected kernels should upgrade to kernels that include the patch or use a version of Open vSwitch that prevents the clone path. No specific version numbers are listed in the CNA data; users should consult the kernel maintainers for the fixed release.

Risk and Exploitability

The CVSS base score of 7.4 indicates a high so the current exploitation likelihood is unknown; however, the vulnerability can be triggered through crafted network traffic handled by Open vSwitch, which is a common component in virtual networking stacks. The KEV status states it is not listed in the CISA KEV catalog, meaning a weaponized exploit is not publicly confirmed yet. Attackers would need to send malicious packets to the switch; thus the anticipated attack vector is local or remote network traffic. The high severity, coupled with the potential memory corruption path, suggests a need for immediate remediation.

Generated by OpenCVE AI on September 12, 2026 at 02:05 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade to a Linux kernel version that includes the fix (e.g., kernel commit 0370da114a9bc044e248b85c6809d1b5e0c1f7f9 or later stable release).
  • For Open vSwitch environments, upgrade to the latest Open vSwitch release that incorporates the kernel patch or applies the OVS patch that avoids skb_clone() in the recirculation path.
  • If an immediate kernel upgrade is not possible, reconfigure Open vSwitch to avoid using non‑last OVS_ACTION_ATTR_RECIRC actions or disable recirculation while the kernel remains vulnerable.

Generated by OpenCVE AI on September 12, 2026 at 02:05 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sun, 13 Sep 2026 06:45:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

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

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


Sat, 12 Sep 2026 00:15:00 +0000

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

None

cvssV3_1

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

threat_severity

Important


Fri, 11 Sep 2026 23:45:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: net: skbuff: don't touch shared zerocopy state in skb_tx_error() skb_tx_error() completes the zerocopy uarg and clears SKBFL_ALL_ZEROCOPY, and skb_zcopy_downgrade_managed() clears SKBFL_MANAGED_FRAG_REFS. Both live in skb_shinfo(), which every clone shares, while the caller only owns the reference it is about to drop. Through a clone it tells the producer its pages are free and drops SKBFL_SHARED_FRAG for an skb that is still in flight. Open vSwitch reaches this with a non-last OVS_ACTION_ATTR_RECIRC: clone_execute() sends a skb_clone() into ovs_dp_process_packet() while do_execute_actions() keeps forwarding the original, and skb_clone() does not privatise the frags here -- skb_orphan_frags() returns early on SKBFL_DONT_ORPHAN. A flow miss on the clone then strips the marker from the packet still being forwarded, and a later local ESP delivery decrypts in place over frags it does not own privately. Skip it for a cloned skb. Nothing is lost: skb_release_data() clears the zerocopy state once the last reference to the shared data goes.
Title net: skbuff: don't touch shared zerocopy state in skb_tx_error()
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-09-13T06:28:43.038Z

Reserved: 2026-08-26T14:34:25.811Z

Link: CVE-2026-80977

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-11T20:19:04.013

Modified: 2026-09-11T20:19:04.013

Link: CVE-2026-80977

cve-icon Redhat

Severity : Important

Publid Date: 2026-09-11T19:42:38Z

Links: CVE-2026-80977 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-09-12T03:15:06Z

Weaknesses
  • CWE-821

    Incorrect Synchronization