xfrm: input: hold netns during deferred transport reinjection
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 5.10.259, 5.15.210, 6.1.176, 6.6.143, 6.12.93, and 2 more
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: no
- Technical impact: total
Summary
In the Linux kernel, the following vulnerability has been resolved: xfrm: input: hold netns during deferred transport reinjection Transport-mode reinjection stores a struct net pointer in skb->cb and uses it later from xfrm_trans_reinject(). That pointer must stay valid until the deferred callback runs. Take a netns reference when queueing deferred reinjection work and drop it after the callback completes. Use maybe_get_net() so the queueing path does not revive a namespace that is already being torn down. This keeps the existing workqueue design and fixes the netns lifetime handling in one place for all users of xfrm_trans_queue_net().
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: no · Technical impact: total
- Record last updated
Affected versions
- Linux Linux
From 7b3801927e52f8621de311277f7fc727635019e7 · fixed in 7ee59eda8820b758ed29e1cd3222359c7b97302c; From 7b3801927e52f8621de311277f7fc727635019e7 · fixed in 2df7059a18afb7d3aee6c36cad5d371c198111d4; From 7b3801927e52f8621de311277f7fc727635019e7 · fixed in 8dfabcba6a943a7a02ebe1e1637c361ba96acbaa; From 7b3801927e52f8621de311277f7fc727635019e7 · fixed in 48ce101cd630d6745b6923b5bad8358bc4c119da; From 7b3801927e52f8621de311277f7fc727635019e7 · fixed in 55ddfc41451f01c588089cd74957a05311b6f202; From 7b3801927e52f8621de311277f7fc727635019e7 · fixed in 9f7ebb45a83afc3216e855e57d51bb4bc9b5232e; From 7b3801927e52f8621de311277f7fc727635019e7 · fixed in 9f67a36e91bb50d358760f381f233913fe5c09f8; From 7b3801927e52f8621de311277f7fc727635019e7 · fixed in c16f74dc1d75d0e2e7670076d5375deda110ebeb
- Linux Linux
5.6
- KernelLinux
From 5.6.0 · fixed in 5.10.259; From 5.11.0 · fixed in 5.15.210; From 5.16.0 · fixed in 6.1.176; From 6.2.0 · fixed in 6.6.143; From 6.7.0 · fixed in 6.12.93; From 6.13.0 · fixed in 6.18.35; From 6.19.0 · fixed in 7.0.12
References 8
git.kernel.org
- stable/c/7ee59eda8820b758ed29e1cd3222359c7b97302c
- stable/c/2df7059a18afb7d3aee6c36cad5d371c198111d4
- stable/c/8dfabcba6a943a7a02ebe1e1637c361ba96acbaa
- stable/c/48ce101cd630d6745b6923b5bad8358bc4c119da
- stable/c/55ddfc41451f01c588089cd74957a05311b6f202
- stable/c/9f7ebb45a83afc3216e855e57d51bb4bc9b5232e
- stable/c/9f67a36e91bb50d358760f381f233913fe5c09f8
- stable/c/c16f74dc1d75d0e2e7670076d5375deda110ebeb