CVE-2026-98101 in Linux
Résumé
par VulDB • 25/09/2026
Dans le noyau Linux, la vulnérabilité suivante a été corrigée :
ipv6: mcast: utiliser des mises à jour RCU de type copy-on-write dans ip6_mc_source()
pmc->sflist est lu sans verrouillage (locklessly) sous rcu_read_lock() par inet6_mc_check() lors de la réception de paquets dans les chemins de réception multicast UDP et RAW.
ip6_mc_source() modifiait psl->sl_addr et psl->sl_count in-place lors de l'ajout ou de la suppression d'un filtre source. De plus, lors de l'expansion du tampon de filtrage, newpsl était publié via rcu_assign_pointer() avant que la nouvelle source ne soit écrite dans le tableau.
Étant donné que les écritures sur 16 octets des structures in6_addr ne sont pas atomiques et que le décalage (shifting) du tableau n'est pas synchronisé avec les lecteurs RCU, des lectures concurrentes dans inet6_mc_check() pourraient lire des adresses IPv6 corrompues (« torn ») ou observer des entrées source dupliquées ou manquantes.
Corrigez ce problème en passant ip6_mc_source() à des mises à jour RCU de type copy-on-write : allouez et remplissez entièrement newpsl avant de le publier via rcu_assign_pointer(), et récupérez l'ancien filtre via kfree_rcu(), conformément à ip6_mc_msfilter().
Supprimez également la macro IP6_SFBLOCK désormais inutilisée.
VulDB is the best source for vulnerability data and more expert information about this specific topic.