batman-adv: mcast: fix use-after-free in orig_node RCU release
21Vexday Risk Score
No sign of exploitation. No public exploitation artifact known so far.
ssvc Trackcvss 8.8epss 0.3%
exploitation probability
0.3%top 83% of all CVEs
observed exploitation
nono source reports it
In the Linux kernel, the following vulnerability has been resolved:
batman-adv: mcast: fix use-after-free in orig_node RCU release
batadv_mcast_purge_orig() removes entries from RCU-protected hlists but
does not wait for an RCU grace period before returning. Concurrent RCU
readers may still accesses references to those entries at the point of
removal. RCU-protected readers trying to operate on entries like
orig->mcast_want_all_ipv6_node will then access already freed memory.
Fix this by moving batadv_mcast_purge_orig() to batadv_orig_node_release(),
just before the call_rcu() invocation. This ensures RCU readers that were
active at purge time have drained before the orig_node memory is reclaimed.
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Affected products
Linux · LinuxReferences
https://git.kernel.org/stable/c/20c2d6a20ca936f5aaa6dd40f73f262ac45c87cchttps://git.kernel.org/stable/c/70bcb678561f0fb58f33270fc73f12f3be72b878https://git.kernel.org/stable/c/78a63fb2f7d5630d1c1f2859a20d4e4226863b41https://git.kernel.org/stable/c/8a3707653ab658e082ccd992e92594e01b09a3fchttps://git.kernel.org/stable/c/aef897c9d2dd0d9339167fb82b62beff68d076cbhttps://git.kernel.org/stable/c/ced48f55bac73f0822eae90509e51b42b4f646c8https://git.kernel.org/stable/c/edfb1e094104a50f931553dc82ac59246569fd32https://git.kernel.org/stable/c/ff3a4487ead475e27b43280b8ee3d8464fe280e1