macvlan: fix possible UAF in macvlan_forward_source()
- 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.249, 5.15.199, 6.1.162, 6.6.122, 6.12.67, and 1 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: macvlan: fix possible UAF in macvlan_forward_source() Add RCU protection on (struct macvlan_source_entry)->vlan. Whenever macvlan_hash_del_source() is called, we must clear entry->vlan pointer before RCU grace period starts. This allows macvlan_forward_source() to skip over entries queued for freeing. Note that macvlan_dev are already RCU protected, as they are embedded in a standard netdev (netdev_priv(ndev)). https: //lore.kernel.org/netdev/695fb1e8.050a0220.1c677c.039f.GAE@google.com/T/#u
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: no · Technical impact: total
- Record last updated
Affected versions
- Linux Linux
From 79cf79abce71eb7dbc40e2f3121048ca5405cb47 · fixed in 8133e85b8a3ec9f10d861e0002ec6037256e987e; From 79cf79abce71eb7dbc40e2f3121048ca5405cb47 · fixed in 484919832e2db6ce1e8add92c469e5d459a516b5; From 79cf79abce71eb7dbc40e2f3121048ca5405cb47 · fixed in 232afc74a6dde0fe1830988e5827921f5ec9bb3f; From 79cf79abce71eb7dbc40e2f3121048ca5405cb47 · fixed in 15f6faf36e162532bec5cc05eb3fc622108bf2ed; From 79cf79abce71eb7dbc40e2f3121048ca5405cb47 · fixed in 8518712a2ca952d6da2238c6f0a16b4ae5ea3f13; From 79cf79abce71eb7dbc40e2f3121048ca5405cb47 · fixed in 6dbead9c7677186f22b7981dd085a0feec1f038e; From 79cf79abce71eb7dbc40e2f3121048ca5405cb47 · fixed in 7470a7a63dc162f07c26dbf960e41ee1e248d80e
- Linux Linux
3.18
- KernelLinux
From 3.18.0 · fixed in 5.10.249; From 5.11.0 · fixed in 5.15.199; From 5.16.0 · fixed in 6.1.162; From 6.2.0 · fixed in 6.6.122; From 6.7.0 · fixed in 6.12.67; From 6.13.0 · fixed in 6.18.7
References 7
git.kernel.org
- stable/c/8133e85b8a3ec9f10d861e0002ec6037256e987e
- stable/c/484919832e2db6ce1e8add92c469e5d459a516b5
- stable/c/232afc74a6dde0fe1830988e5827921f5ec9bb3f
- stable/c/15f6faf36e162532bec5cc05eb3fc622108bf2ed
- stable/c/8518712a2ca952d6da2238c6f0a16b4ae5ea3f13
- stable/c/6dbead9c7677186f22b7981dd085a0feec1f038e
- stable/c/7470a7a63dc162f07c26dbf960e41ee1e248d80e