Description
In the Linux kernel, the following vulnerability has been resolved: wifi: mac80211: fix mesh fast xmit path deletion UAF mesh_fast_tx_cache() stores raw mesh_path pointers. Path deletion flushes the cache and then frees the path with kfree_rcu(), but a lookup that already holds the path can insert a new cache entry after the flush. The cache then points at freed memory. Set MESH_PATH_DELETED before flushing, and skip inserting a cache entry if the path or MPP path is already deleted. Check this under the cache walk lock so it is ordered with the flush. Use WRITE_ONCE() for the deletion flag updates because the cache check reads flags without taking state_lock.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
d5edb9ae8d568745f893c5c5fa3837d85311b131 to < ebb7cba623d38733d33d79a8c7442f5ea04c0fb0affectedd5edb9ae8d568745f893c5c5fa3837d85311b131 to < 0117f1aa189495e6f1ff608681678817995aee39affectedd5edb9ae8d568745f893c5c5fa3837d85311b131 to < 128e800a41270ab197b1cc8043637a2924865608affectedd5edb9ae8d568745f893c5c5fa3837d85311b131 to < 93da3ec938bfdcfb3899428f04c6d0c56fe32952affectedd5edb9ae8d568745f893c5c5fa3837d85311b131 to < ee3aadc43ea69d98f666431e787137ac0badbb85affected
Linux Linux
Default version status: affected
6.4affected0 to < 6.4unaffected6.6.160 to ≤ 6.6.*unaffected6.12.113 to ≤ 6.12.*unaffected6.18.56 to ≤ 6.18.*unaffected7.2.10 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/ebb7cba623d38733d33d79a8c7442f5ea04c0fb0 ↗
- https://git.kernel.org/stable/c/0117f1aa189495e6f1ff608681678817995aee39 ↗
- https://git.kernel.org/stable/c/128e800a41270ab197b1cc8043637a2924865608 ↗
- https://git.kernel.org/stable/c/93da3ec938bfdcfb3899428f04c6d0c56fe32952 ↗
- https://git.kernel.org/stable/c/ee3aadc43ea69d98f666431e787137ac0badbb85 ↗