CVE-2026-72442 PUBLISHED

netfilter: flowtable: fix and simplify IP6IP6 tunnel handling

Assigner: Linux
Reserved: 09.08.2026 Published: 15.08.2026 Updated: 17.08.2026

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

netfilter: flowtable: fix and simplify IP6IP6 tunnel handling

Fix nf_flow_ip6_tunnel_proto() to use pskb_may_pull() instead of skb_header_pointer() to ensure the outer IPv6 header is in the skb headroom, which is required for subsequent packet processing. Move ctx->offset update inside the IPPROTO_IPV6 conditional block since it should only be adjusted when an IP6IP6 tunnel is actually detected. Simplify the rx path by removing ipv6_skip_exthdr() and checking ip6h->nexthdr directly, as the flowtable fast path only handles simple IP6IP6 encapsulation without extension headers. Drop the tunnel encapsulation limit destination option support from the tx path to match, since the rx path no longer handles extension headers. Remove the encap_limit parameter from nf_flow_offload_ipv6_forward(), nf_flow_tunnel_ip6ip6_push() and nf_flow_tunnel_v6_push(), along with the ipv6_tel_txoption struct and related headroom/MTU adjustments.

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS Score: 9.8

AV:N - Crafted IPv6/IP6IP6 packets reach nf_flow_offload_ipv6_hook through netfilter ingress/forward on interfaces bound to an nftables flowtable (the intended edge-router use case); remote senders trigger the path without local access. AC:L - The attacker controls packet layout (non-linear skbs, tunnel/extension-header shapes) and can establish offloaded TCP/UDP flows through the router; no race or other condition outside attacker control is needed once flowtable and IP6IP6 are deployed. PR:N - Flowtable and IP6IP6 tunnel setup are administrator deployment prerequisites; a remote attacker sending traffic through an already configured gateway needs no credentials or capabilities on the victim host. UI:N - Exploitation is driven entirely by network packets processed automatically in softirq on the forwarding path; no victim user action is required beyond normal routing through the affected system. S:U - Out-of-bounds skb parsing and resulting kernel memory corruption remain within the host kernel security authority; this is standard kernel compromise, not a VM escape, IOMMU bypass, or sandbox boundary crossing. C:H - Using skb_header_pointer without pskb_may_pull lets later skb_network_header()+offset reads access non-linear or out-of-bounds data; per CNA guidance, exploitable out-of-bounds kernel reads and memory-unsafe parsing warrant High confidentiality impact. I:H - Incorrect ctx->offset and tun.hdr_size drive skb_ensure_writable, skb_pull, and nf_flow_nat_ipv6 on misaligned headers, corrupting kernel packet metadata with attacker-influenced writes that can be leveraged for arbitrary modification or code execution. A:H - Mis-parsed tunnel headers and out-of-bounds accesses in the flowtable IPv6 fast path can trigger kernel oops or panic while forwarding, enabling remote denial of service against routers and gateways running this configuration.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from d98103575dcdd3a730e0901ab457791a9ac6930c to 7f8d816a9aa2729d270418f00c9ef5e85bfc1b31 (excl.)
  • affected from d98103575dcdd3a730e0901ab457791a9ac6930c to f4c2d8668d85ed125985da663c824a9c25498257 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 7.0 is affected
  • unaffected from 0 to 7.0 (excl.)
  • unaffected from 7.1.5 to 7.1.* (incl.)
  • unaffected from 7.2 to * (incl.)

References