CVE-2026-98102
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
ipv6: mcast: fix RCU list diversion in ip6_mc_del1_src()
When removing a source filter whose count reaches zero, ip6_mc_del1_src() unlinks psf from pmc->mca_sources. If the filter was previously active, the code moved psf directly into pmc->mca_tomb by updating psf->sf_next.
Because pmc->mca_sources is traversed locklessly under RCU (e.g. by ipv6_chk_mcast_addr()), mutating psf->sf_next before a grace period elapses diverts concurrent readers to the tombstone list. Consequently, readers miss remaining active sources in pmc->mca_sources and improperly examine deleted tombstone entries.
Fix this by allocating a new tombstone node for pmc->mca_tomb (as done in sf_setstate()) and retiring the original psf via kfree_rcu().
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 4b200e398953c237c86d32bf26d4cb2a96556a6f < 4352737297b262e8367675c19a7dc6a9f53c97af | affected |
| Linux | Linux | 4b200e398953c237c86d32bf26d4cb2a96556a6f < 8d4fe5c13f5056faa6deb09a90e24a89f9ebfad4 | affected |
| Linux | Linux | 4b200e398953c237c86d32bf26d4cb2a96556a6f < 5149c60c406595b56fda0c6e9aae7fd287f636aa | affected |
| Linux | Linux | 4b200e398953c237c86d32bf26d4cb2a96556a6f < 93b49239840b91313adbd77b8b52993eff2d08c1 | affected |
| Linux | Linux | 86c49119f0353f857cc08030ec9e4ebaab3d5a64 | affected |
| Linux | Linux | 5.10.261 < 5.11 | affected |
| Linux | Linux | 5.13 | affected |
| Linux | Linux | 0 < 5.13 | unaffected |
| Linux | Linux | 6.12.111 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.53 <= 6.18.* | unaffected |
| Linux | Linux | 7.2.7 <= 7.2.* | unaffected |
| Linux | Linux | 7.3-rc2 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/4352737297b262e8367675c19a7dc6a9f53c97af
- https://git.kernel.org/stable/c/8d4fe5c13f5056faa6deb09a90e24a89f9ebfad4
- https://git.kernel.org/stable/c/5149c60c406595b56fda0c6e9aae7fd287f636aa
- https://git.kernel.org/stable/c/93b49239840b91313adbd77b8b52993eff2d08c1
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.