Upstream information
Description
In the Linux kernel, the following vulnerability has been resolved:net: always dissect GSO packets in __virtio_net_hdr_to_skb()
Commit 9e8db5913264 ("net: avoid false positives in untrusted gso
validation") added a '&& skb->network_header' check before flow-dissecting
GSO packets without VIRTIO_NET_HDR_F_NEEDS_CSUM in
__virtio_net_hdr_to_skb(), because some callers (such as tun_get_user(),
tun_xdp_one(), virtnet_receive_done(), and raw_verify_header()) called
virtio_net_hdr_*_to_skb() before initializing skb->network_header and
skb->dev.
Because __alloc_skb() and __build_skb_around() zero-initialize
skb->network_header to 0 (unlike mac_header and transport_header which
are initialized to ~0U), those four callers always had
skb->network_header == 0 and bypassed flow dissection in
__virtio_net_hdr_to_skb(). More generally, skb->network_header is an
offset from skb->head (where 0 is also a valid offset whenever
skb_headroom(skb) is 0), not a boolean flag.
Whenever the 'if (gso_type && skb->network_header)' branch was skipped,
the fallback 'else if (gso_type)' only pulled nh_min_len + thlen (40 bytes
for TCPv4) without dissecting the packet, without validating ip_proto or
n_proto, and without setting skb->transport_header.
If the packet has a malformed network header, it is not rejected and a
subsequent skb_probe_transport_header() also fails, leaving
skb->transport_header at ~0U (0xffff). Similarly, if an IPv4 packet
carries IP options (ihl > 5) or an IPv6 packet carries extension headers,
pulling only nh_min_len + thlen can leave the TCP header outside
skb->head. In both cases, tcp_hdrlen(skb) in skb_gso_transport_seglen()
reads out-of-bounds:
BUG: KASAN: slab-out-of-bounds in skb_gso_transport_seglen
Read of size 2 by task poc/133
skb_gso_transport_seglen (net/core/gso.c:155)
skb_gso_validate_mac_len (net/core/gso.c:270)
tbf_enqueue (net/sched/sch_tbf.c:260)
dev_qdisc_enqueue (net/core/dev.c:4227)
__dev_queue_xmit (net/core/dev.c:4884)
In addition, checking virtio_net_hdr_match_proto() only inside
'if (!skb->protocol)' before flow dissection both skipped validation when
skb->protocol was pre-set by the caller and rejected VLAN-tagged frames
whose outer L2 protocol is ETH_P_8021Q or ETH_P_8021AD.
Fix this by:
1. Initializing skb->dev and skb->network_header (plus skb->protocol for
IFF_TUN) before virtio_net_hdr_*_to_skb() in tun_get_user(),
tun_xdp_one(), virtnet_receive_done(), and raw_verify_header(). In
tun_get_user(), drop the redundant skb_reset_mac_header(skb) in the
IFF_TUN case since __virtio_net_hdr_to_skb() unconditionally resets
mac_header.
2. Removing '&& skb->network_header' and the unvalidated
'else if (gso_type)' fallback in __virtio_net_hdr_to_skb() so all GSO
packets without VIRTIO_NET_HDR_F_NEEDS_CSUM are flow-dissected, have
their transport header pulled into linear data, and have
skb->transport_header set.
3. Moving the virtio_net_hdr_match_proto() check to after
skb_flow_dissect_flow_keys_basic(), validating keys.basic.n_proto
against hdr_gso_type.
SUSE information
Overall state of this security issue: Pending
This issue is currently rated as having moderate severity.
| CVSS detail | SUSE |
|---|---|
| Base Score | 5.5 |
| Vector | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
| Attack Vector | Local |
| Attack Complexity | Low |
| Privileges Required | Low |
| User Interaction | None |
| Scope | Unchanged |
| Confidentiality Impact | None |
| Integrity Impact | None |
| Availability Impact | High |
| CVSSv3 Version | 3.1 |
Note from the SUSE Security Team on the kernel-default package
SUSE will no longer fix all CVEs in the Linux Kernel anymore, but declare some bug classes as won't fix. Please refer to TID 21496 for more details. SUSE Bugzilla entry: 1287988 [NEW] No SUSE Security Announcements cross referenced.Status of this issue by product and package
Please note that this evaluation state might be work in progress, incomplete or outdated. Also information for service packs in the LTSS phase is only included for issues meeting the LTSS criteria. If in doubt, feel free to contact us for clarification. The updates are grouped by state of their lifecycle. SUSE product lifecycles are documented on the lifecycle page.
| Product(s) | Source package | State |
|---|---|---|
| Products under general support and receiving all security fixes. | ||
| SUSE Linux Enterprise Desktop 15 SP7 | kernel-default | Affected |
| SUSE Linux Enterprise Desktop 15 SP7 | kernel-source | Affected |
| SUSE Linux Enterprise High Availability Extension 15 SP7 | kernel-default | Affected |
| SUSE Linux Enterprise High Availability Extension 15 SP7 | kernel-source | Affected |
| SUSE Linux Enterprise High Availability Extension 16.0 | kernel-default | Affected |
| SUSE Linux Enterprise High Availability Extension 16.0 | kernel-source | Affected |
| SUSE Linux Enterprise Micro 5.3 | kernel-default | Affected |
| SUSE Linux Enterprise Micro 5.3 | kernel-rt | Affected |
| SUSE Linux Enterprise Micro 5.3 | kernel-source | Affected |
| SUSE Linux Enterprise Micro 5.3 | kernel-source-rt | Affected |
| SUSE Linux Enterprise Micro 5.4 | kernel-default | Affected |
| SUSE Linux Enterprise Micro 5.4 | kernel-rt | Affected |
| SUSE Linux Enterprise Micro 5.4 | kernel-source | Affected |
| SUSE Linux Enterprise Micro 5.4 | kernel-source-rt | Affected |
| SUSE Linux Enterprise Micro 5.5 | kernel-default | Affected |
| SUSE Linux Enterprise Micro 5.5 | kernel-source | Affected |
| SUSE Linux Enterprise Micro 5.5 | kernel-source-rt | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP7 | kernel-default | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP7 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP7 | kernel-default | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP7 | kernel-source | Affected |
| SUSE Linux Enterprise Real Time 15 SP7 | kernel-source-rt | Affected |
| SUSE Linux Enterprise Server 15 SP7 | kernel-default | Affected |
| SUSE Linux Enterprise Server 15 SP7 | kernel-source | Affected |
| SUSE Linux Enterprise Server 16.0 | kernel-default | Affected |
| SUSE Linux Enterprise Server 16.0 | kernel-source | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | kernel-default | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | kernel-source | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.0 | kernel-default | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.0 | kernel-source | Affected |
| SUSE Linux Micro 6.0 | kernel-default | Affected |
| SUSE Linux Micro 6.0 | kernel-source | Affected |
| SUSE Linux Micro 6.0 | kernel-source-rt | Affected |
| SUSE Linux Micro 6.1 | kernel-default | Affected |
| SUSE Linux Micro 6.1 | kernel-source | Affected |
| SUSE Linux Micro 6.1 | kernel-source-rt | Affected |
| SUSE Linux Micro 6.2 | kernel-default | Affected |
| SUSE Linux Micro 6.2 | kernel-source | Affected |
| SUSE Linux Micro Extras 6.0 | kernel-default | Affected |
| SUSE Linux Micro Extras 6.0 | kernel-source | Affected |
| SUSE Linux Micro Extras 6.0 | kernel-source-rt | Affected |
| SUSE Linux Micro Extras 6.1 | kernel-default | Affected |
| SUSE Linux Micro Extras 6.1 | kernel-source | Affected |
| SUSE Real Time Module 15 SP7 | kernel-source-rt | Affected |
| openSUSE Leap 16.0 | kernel-source | Affected |
| Products under Long Term Service Pack support and receiving important and critical security fixes. | ||
| SUSE Linux Enterprise High Performance Computing 12 SP5 | kernel-source | Not affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | kernel-default | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5 | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS | kernel-default | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP4 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP5 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP6 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP4 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP5 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP6 | kernel-source | Affected |
| SUSE Linux Enterprise Server 11 SP4 LTSS EXTREME CORE | kernel-default | Not affected |
| SUSE Linux Enterprise Server 11 SP4 LTSS EXTREME CORE | kernel-source | Not affected |
| SUSE Linux Enterprise Server 12 SP5 | kernel-source | Not affected |
| SUSE Linux Enterprise Server 12 SP5-LTSS | kernel-default | Not affected |
| SUSE Linux Enterprise Server 12 SP5-LTSS | kernel-source | Not affected |
| SUSE Linux Enterprise Server 15 SP4 | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP4-LTSS | kernel-default | Affected |
| SUSE Linux Enterprise Server 15 SP4-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP5 | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP5-LTSS | kernel-default | Affected |
| SUSE Linux Enterprise Server 15 SP5-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP6 | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP6-LTSS | kernel-default | Affected |
| SUSE Linux Enterprise Server 15 SP6-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise Server LTSS Extended Security 12 SP5 | kernel-default | Not affected |
| SUSE Linux Enterprise Server LTSS Extended Security 12 SP5 | kernel-source | Not affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | kernel-default | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | kernel-source | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | kernel-default | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | kernel-source | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | kernel-default | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | kernel-source | Affected |
| Products past their end of life and not receiving proactive updates anymore. | ||
| SUSE CaaS Platform 4.0 | kernel-source | Not affected |
| SUSE Enterprise Storage 6 | kernel-source | Not affected |
| SUSE Enterprise Storage 7 | kernel-source | Affected |
| SUSE Enterprise Storage 7.1 | kernel-source | Affected |
| SUSE Linux Enterprise Desktop 11 SP4 | kernel-source | Not affected |
| SUSE Linux Enterprise Desktop 15 SP1 | kernel-source | Not affected |
| SUSE Linux Enterprise Desktop 15 SP2 | kernel-source | Affected |
| SUSE Linux Enterprise Desktop 15 SP3 | kernel-source | Affected |
| SUSE Linux Enterprise Desktop 15 SP4 | kernel-source | Affected |
| SUSE Linux Enterprise Desktop 15 SP5 | kernel-source | Affected |
| SUSE Linux Enterprise Desktop 15 SP6 | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1 | kernel-source | Not affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1-ESPOS | kernel-source | Not affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1-LTSS | kernel-source | Not affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2 | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2-ESPOS | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3 | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3-ESPOS | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4 | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS | kernel-source | Affected |
| SUSE Linux Enterprise Micro 5.0 | kernel-default | Not affected |
| SUSE Linux Enterprise Micro 5.1 | kernel-default | Affected |
| SUSE Linux Enterprise Micro 5.2 | kernel-default | Affected |
| SUSE Linux Enterprise Micro 5.2 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP1 | kernel-source | Not affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP2 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP3 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP1 | kernel-source | Not affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP2 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP3 | kernel-source | Affected |
| SUSE Linux Enterprise Real Time 15 SP2 | kernel-source | Affected |
| SUSE Linux Enterprise Real Time 15 SP3 | kernel-source | Affected |
| SUSE Linux Enterprise Real Time 15 SP4 | kernel-source | Affected |
| SUSE Linux Enterprise Real Time 15 SP4 | kernel-source-rt | Affected |
| SUSE Linux Enterprise Real Time 15 SP5 | kernel-source-rt | Affected |
| SUSE Linux Enterprise Server 11 SP4 | kernel-source | Not affected |
| SUSE Linux Enterprise Server 11 SP4-LTSS | kernel-source | Not affected |
| SUSE Linux Enterprise Server 15 SP1 | kernel-source | Not affected |
| SUSE Linux Enterprise Server 15 SP1-BCL | kernel-source | Not affected |
| SUSE Linux Enterprise Server 15 SP1-LTSS | kernel-default | Not affected |
| SUSE Linux Enterprise Server 15 SP1-LTSS | kernel-source | Not affected |
| SUSE Linux Enterprise Server 15 SP2 | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP2-BCL | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP2-LTSS | kernel-default | Affected |
| SUSE Linux Enterprise Server 15 SP2-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP3 | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP3-BCL | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP3-LTSS | kernel-default | Affected |
| SUSE Linux Enterprise Server 15 SP3-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP1 | kernel-source | Not affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP2 | kernel-source | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP3 | kernel-source | Affected |
| SUSE Manager Proxy 4.0 | kernel-source | Not affected |
| SUSE Manager Proxy 4.1 | kernel-source | Affected |
| SUSE Manager Proxy 4.2 | kernel-source | Affected |
| SUSE Manager Proxy 4.3 | kernel-source | Affected |
| SUSE Manager Proxy LTS 4.3 | kernel-source | Affected |
| SUSE Manager Retail Branch Server 4.0 | kernel-source | Not affected |
| SUSE Manager Retail Branch Server 4.1 | kernel-source | Affected |
| SUSE Manager Retail Branch Server 4.2 | kernel-source | Affected |
| SUSE Manager Retail Branch Server 4.3 | kernel-source | Affected |
| SUSE Manager Retail Branch Server LTS 4.3 | kernel-source | Affected |
| SUSE Manager Server 4.0 | kernel-source | Not affected |
| SUSE Manager Server 4.1 | kernel-source | Affected |
| SUSE Manager Server 4.2 | kernel-source | Affected |
| SUSE Manager Server 4.3 | kernel-source | Affected |
| SUSE Manager Server LTS 4.3 | kernel-source | Affected |
| SUSE Real Time Module 15 SP4 | kernel-source-rt | Affected |
| SUSE Real Time Module 15 SP5 | kernel-source-rt | Affected |
| openSUSE Leap 15.3 | kernel-source | Affected |
| openSUSE Leap 15.4 | kernel-source | Affected |
| openSUSE Leap 15.4 | kernel-source-rt | Affected |
| openSUSE Leap 15.5 | kernel-source | Affected |
| openSUSE Leap 15.5 | kernel-source-rt | Affected |
| openSUSE Leap 15.6 | kernel-source | Affected |
SUSE Timeline for this CVE
CVE page created: Tue Oct 27 17:48:49 2026CVE page last modified: Wed Oct 28 14:18:01 2026