CVE-2026-31663

HIGH

xfrm: hold dev ref until after transport_finish NF_HOOK

Title source: cna
STIX 2.1

Description

In the Linux kernel, the following vulnerability has been resolved: xfrm: hold dev ref until after transport_finish NF_HOOK After async crypto completes, xfrm_input_resume() calls dev_put() immediately on re-entry before the skb reaches transport_finish. The skb->dev pointer is then used inside NF_HOOK and its okfn, which can race with device teardown. Remove the dev_put from the async resumption entry and instead drop the reference after the NF_HOOK call in transport_finish, using a saved device pointer since NF_HOOK may consume the skb. This covers NF_DROP, NF_QUEUE and NF_STOLEN paths that skip the okfn. For non-transport exits (decaps, gro, drop) and secondary async return points, release the reference inline when async is set.

Scores

CVSS v3 7.8
EPSS 0.0021
EPSS Percentile 10.9%
Attack Vector LOCAL
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Details

CWE
CWE-826
Status published
Products (22)
linux/Kernel 4.15.0 - 6.12.94linux
linux/Kernel 6.13.0 - 6.18.23linux
linux/Kernel 6.19.0 - 6.19.13linux
Linux/Linux < 4.15
Linux/Linux 3.16.55 - 3.17
Linux/Linux 3.2.100 - 3.3
Linux/Linux 4.14.24 - 4.15
Linux/Linux 4.15
Linux/Linux 6.12.94 - 6.12.*
Linux/Linux 6.18.23 - 6.18.*
... and 12 more
Published Apr 24, 2026
Tracked Since Apr 24, 2026