CVE-2026-72249 PUBLISHED

netfilter: flowtable: use dst in this direction when pushing IPIP header

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: use dst in this direction when pushing IPIP header

When pushing the IPIP header, the route of the other direction is used to calculate the headroom, use the route in this direction. Accessing the other tuple to set the IP source and destination is fine because this tuple does not provide such information to avoid storing redundant information. However, this tuple already provides the dst for this direction, this went unnoticed because this bug affects headroom and iph->frag_off only at this stage.

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 - The bug is hit in the netfilter flowtable ingress fast path when offloaded TCP/UDP packets are received on bound netdevs and tunnel encapsulation runs; a remote peer can trigger it by sending traffic through an IPIP flow-offload gateway without local access. AC:L - After a flow is offloaded (easily created by the attacker's own connections), asymmetric IPIP gateway routing predictably makes the reverse-direction dst underestimate headroom, so skb_cow_head undersizes and skb_push corrupts memory on each matching packet. PR:N - The attacker only needs to send network packets that match an established offloaded flow; nftables flowtable/IPIP setup is an administrator deployment precondition, not a privilege the attacker must hold on the target system. UI:N - No victim user action is required beyond normal network traffic once flow offload is enabled; exploitation is driven entirely by packets the attacker sends to the gateway. S:U - Impact is confined to kernel heap memory corruption and potential local privilege escalation within the same host; it does not cross VM, container, or IOMMU security boundaries. C:H - Undersized headroom lets skb_push write before skb->head, causing out-of-bounds heap corruption that can expose adjacent kernel objects and be leveraged into arbitrary memory disclosure primitives. I:H - The same skb head underflow is a writable heap corruption primitive that can overwrite adjacent allocator metadata or object contents and be developed into arbitrary kernel code execution. A:H - Heap corruption from skb_push underflow can immediately kernel oops/panic the system or be triggered repeatedly to deny service on an internet-facing VPN/edge gateway.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from d30301ba4b07ac92eb38353a111833b009003170 to ecb78fbb03d3f86e2e93767875e273308086a424 (excl.)
  • affected from d30301ba4b07ac92eb38353a111833b009003170 to c328b90c17fc5fa7786503695152880b2afb9326 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 6.19 is affected
  • unaffected from 0 to 6.19 (excl.)
  • unaffected from 7.1.5 to 7.1.* (incl.)
  • unaffected from 7.2 to * (incl.)

References