batman-adv: hold claim backbone gateways by reference
- 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.258, 5.15.209, 6.1.169, 6.6.135, 6.12.82, 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: yes
- Technical impact: total
Summary
In the Linux kernel, the following vulnerability has been resolved: batman-adv: hold claim backbone gateways by reference batadv_bla_add_claim() can replace claim->backbone_gw and drop the old gateway's last reference while readers still follow the pointer. The netlink claim dump path dereferences claim->backbone_gw->orig and takes claim->backbone_gw->crc_lock without pinning the underlying backbone gateway. batadv_bla_check_claim() still has the same naked pointer access pattern. Reuse batadv_bla_claim_get_backbone_gw() in both readers so they operate on a stable gateway reference until the read-side work is complete. This keeps the dump and claim-check paths aligned with the lifetime rules introduced for the other BLA claim readers.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: yes · Technical impact: total
- Record last updated
Affected versions
- Linux Linux
From 23721387c409087fd3b97e274f34d3ddc0970b74 · fixed in 5202f071b367ffbc8e279fc7a00db14f5e587f52; From 23721387c409087fd3b97e274f34d3ddc0970b74 · fixed in 69d1ce9c72eca91203ffdb8d08bacd511100aec6; From 23721387c409087fd3b97e274f34d3ddc0970b74 · fixed in f4858832ddef2f39f21e30b7226bbcd3c4b2bc96; From 23721387c409087fd3b97e274f34d3ddc0970b74 · fixed in 2f55b58b5a0bbed192d60c444a45a49cdf1b545f; From 23721387c409087fd3b97e274f34d3ddc0970b74 · fixed in 7962b522222628596ca9ecc8722efc95367aadbd; From 23721387c409087fd3b97e274f34d3ddc0970b74 · fixed in 4dee4c0688443aaf5bbec74aa203c851d1d53c35; From 23721387c409087fd3b97e274f34d3ddc0970b74 · fixed in 1f2dc36c297d27733f1b380ea644cf15a361bd7b; From 23721387c409087fd3b97e274f34d3ddc0970b74 · fixed in 82d8701b2c930d0e96b0dbc9115a218d791cb0d2
- Linux Linux
3.5
- KernelLinux
From 3.5.0 · fixed in 5.10.258; From 5.11.0 · fixed in 5.15.209; From 5.16.0 · fixed in 6.1.169; From 6.2.0 · fixed in 6.6.135; From 6.7.0 · fixed in 6.12.82; From 6.13.0 · fixed in 6.18.23; From 6.19.0 · fixed in 6.19.13
References 8
git.kernel.org
- stable/c/5202f071b367ffbc8e279fc7a00db14f5e587f52
- stable/c/69d1ce9c72eca91203ffdb8d08bacd511100aec6
- stable/c/f4858832ddef2f39f21e30b7226bbcd3c4b2bc96
- stable/c/2f55b58b5a0bbed192d60c444a45a49cdf1b545f
- stable/c/7962b522222628596ca9ecc8722efc95367aadbd
- stable/c/4dee4c0688443aaf5bbec74aa203c851d1d53c35
- stable/c/1f2dc36c297d27733f1b380ea644cf15a361bd7b
- stable/c/82d8701b2c930d0e96b0dbc9115a218d791cb0d2