CVEvulnerability
CVE-2026-98099
4.7 MEDIUM
Official page ↗
- Status
- Analyzed
- Published
- 2026-09-25
- Last modified
- 2026-10-28
- Assigner
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
- CVSS 3.1 ([email protected])
- 4.7 MEDIUM — CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H
- Weaknesses
- CWE-362
Description
In the Linux kernel, the following vulnerability has been resolved:
ipv6: mcast: use rcu_assign_pointer() for __rcu list updates
Several places in net/ipv6/mcast.c update RCU-protected lists
(np->ipv6_mc_list, idev->mc_list, idev->mc_tomb) using direct pointer
assignments instead of rcu_assign_pointer():
1. In __ipv6_dev_mc_dec(), unlinking a group from idev->mc_list did:
*map = ma->next;
without rcu_assign_pointer() while concurrent readers traverse
idev->mc_list locklessly under rcu_read_lock().
2. In ipv6_sock_mc_drop() and __ipv6_sock_mc_close(), unlinking a group
from np->ipv6_mc_list directly assigned *lnk = mc_lst->next and
np->ipv6_mc_list = mc_lst->next without rcu_assign_pointer(), racing
with lockless readers in inet6_mc_check().
3. In __ipv6_sock_mc_join(), mc_lst->next was initialized to
np->ipv6_mc_list via raw assignment before publishing mc_lst.
4. In mld_del_delrec() and __ipv6_dev_mc_inc(), __rcu source pointers
passed into rcu_assign_pointer() lacked explicit dereference helpers.
Fix these by consistently using rcu_assign_pointer() along with
mc_dereference() / sock_dereference().
Affected configurations
• linux linux kernel (>= 2.6.38 < 6.6.160)
• linux linux kernel (>= 6.7 < 6.12.114)
• linux linux kernel (>= 6.13 < 6.18.57)
• linux linux kernel (>= 6.19 < 7.2.7)
• linux linux kernel 7.3
Related
Weakness · CWE (1)
- CWE-362 Concurrent Execution using Shared Resource with Improper Synchronization weakness
References
- https://git.kernel.org/stable/c/0c8f56c583c3250408367880c98e4d6fbc929315 Patch
- https://git.kernel.org/stable/c/0e3e3cec28c4d1bf29948da40b4e9e5d44f7852b Patch
- https://git.kernel.org/stable/c/2e46b0c9fcf7e10b64ce1630b925f47918d1f7f6 Patch
- https://git.kernel.org/stable/c/49d7e1b456ba2f3ee08b3e264d999c09992cde8e Patch
- https://git.kernel.org/stable/c/afca229b39acc2590976b3e4f6e0fe76cededc60 Patch