Description
In the Linux kernel, the following vulnerability has been resolved: batman-adv: bla: only purge non-released claims When batadv_bla_purge_claims() goes through the list of claims, it is only traversing the hash list with an rcu_read_lock(). Due to a potential parallel batadv_claim_put(), it can happen that it encounters a claim which was actually in the process of being released+freed by batadv_claim_release(). In this case, backbone_gw is set to NULL before the delayed RCU kfree is started. Calling batadv_bla_claim_get_backbone_gw() is then no longer allowed because it would cause a NULL-ptr derefence. To avoid this, only claims with a valid reference counter must be purged. All others are already taken care of.
Product status
23721387c409087fd3b97e274f34d3ddc0970b74 (git) before a9f58d5e3261f3deeae69ec1e237f38ef3ff5cbe
23721387c409087fd3b97e274f34d3ddc0970b74 (git) before 6725c523a35eeca611ff37e7d4a8712fae92aefd
23721387c409087fd3b97e274f34d3ddc0970b74 (git) before afb5436f6028fd68f408f189230fbaa19c910d72
23721387c409087fd3b97e274f34d3ddc0970b74 (git) before 7b8fbcee3184d848b5aee085ca16d0cf05c9b641
23721387c409087fd3b97e274f34d3ddc0970b74 (git) before 7b7ebb7222a5524ce58e48cc9c6d688320ea6cfe
23721387c409087fd3b97e274f34d3ddc0970b74 (git) before b65365d2b1e6095c538d49baeb140dd1c166c1b3
23721387c409087fd3b97e274f34d3ddc0970b74 (git) before ab3dbd07a809a8eb30c7ddfab9ac886ed30dce8d
23721387c409087fd3b97e274f34d3ddc0970b74 (git) before cf6b604011591865ae39ac82de8978c1120d17af
3.5
Any version before 3.5
5.10.258 (semver)
5.15.209 (semver)
6.1.175 (semver)
6.6.140 (semver)
6.12.90 (semver)
6.18.32 (semver)
7.0.9 (semver)
7.1-rc4 (original_commit_for_fix)
References
git.kernel.org/...c/a9f58d5e3261f3deeae69ec1e237f38ef3ff5cbe
git.kernel.org/...c/6725c523a35eeca611ff37e7d4a8712fae92aefd
git.kernel.org/...c/afb5436f6028fd68f408f189230fbaa19c910d72
git.kernel.org/...c/7b8fbcee3184d848b5aee085ca16d0cf05c9b641
git.kernel.org/...c/7b7ebb7222a5524ce58e48cc9c6d688320ea6cfe
git.kernel.org/...c/b65365d2b1e6095c538d49baeb140dd1c166c1b3
git.kernel.org/...c/ab3dbd07a809a8eb30c7ddfab9ac886ed30dce8d
git.kernel.org/...c/cf6b604011591865ae39ac82de8978c1120d17af