CVE-2026-72463 PUBLISHED

xfrm: Fix dev use-after-free in xfrm async resumption

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

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

xfrm: Fix dev use-after-free in xfrm async resumption

xfrm async resumption hold skb->dev refcnt until after transport_finish. However, xfrm_rcv_cb may modify skb->dev to tunnel dev without taking device reference, such as vti_rcv_cb. The subsequent async resumption will decrement the tunnel device's reference count, which lead to uaf of tunnel dev and refcnt leak of orig dev as below:

unregister_netdevice: waiting for vti1 to become free. Usage count = -2

Stash the original skb->dev to fix refcnt imbalance. The new skb->dev set by xfrm_rcv_cb can race with device teardown. Extend rcu protection over xfrm_rcv_cb and transport_finish to prevent races.

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 - Reachable from the network receive path: remote ESP/AH (or UDP-encapsulated IPsec) packets hit ip_rcv → xfrm4/xfrm6 protocol handlers → vti/xfrmi input → xfrm_input() → async crypto resume, on Internet-facing IPsec/VTI/xfrmi VPN gateways and cloud endpoints. AC:L - Once async decryption resumes (encap_type=-1), vti_rcv_cb/xfrmi_rcv_cb retarget skb->dev and the stale dev_put is deterministic; the attacker controls packet rate/volume to drive -EINPROGRESS and can race netdev teardown, so no uncontrollable victim-only conditions apply. PR:N - No local account, shell, or capability on the victim is required—only network-delivered IPsec traffic accepted by a pre-configured VTI/xfrmi gateway (e.g., VPN peer, site-to-site endpoint); administrative IPsec setup is deployment state, not attacker privilege on the host. UI:N - Exploitation is fully automated by sending IPsec packets; no victim interaction such as mounting filesystems, opening files, or clicking links is needed. S:U - Impact is kernel net_device refcount corruption/UAF within the host kernel security authority; it does not cross VM, IOMMU, or sandbox boundaries (standard kernel privilege escalation, not escape). C:H - Use-after-free of a net_device after refcount underflow (e.g., usage count=-2) exposes freed netdev/slab memory; per kernel UAF guidance this provides a high-impact arbitrary-read primitive via heap grooming. I:H - Corrupting freed net_device structures and reference counts is classic heap UAF that can be shaped into arbitrary kernel writes and control-flow hijack for code execution, per kernel memory-corruption guidance. A:H - Refcount imbalance causes unregister_netdevice to hang (usage count=-2), kernel oops/panic during tunnel teardown, and reliable denial of service on IPsec gateways even before full exploitation.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from 1c428b03840094410c5fb6a5db30640486bbbfcb to 63a30015199912bd5055bead8001b1ae68a67cdb (excl.)
  • affected from 1c428b03840094410c5fb6a5db30640486bbbfcb to 8045c0df98d4f14c54e5cb875f1c9c0ce89fe4ff (excl.)
  • Version 4236c30b437b80f673b9e08c8fae38b8d471ac9e is affected
  • Version 0f451b43c88bf2b9c038b414be580efee42e031b is affected
  • Version 5002beda5cac69d522dc54da0d5d463ed9c963d2 is affected
  • affected from 6.12.94 to 6.13 (excl.)
  • affected from 6.18.23 to 6.19 (excl.)
  • affected from 6.19.13 to 6.20 (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