ipv6: mcast: Fix potential UAF in MLD delayed work (Linux Linux)
En bref
- Source
- NVD
- EPSS
- EPSS 0.72 % · centile 54 ()
- État
- PUBLISHED
- Publiée
- Mise à jour
- Attribuée par
- Linux
- Statut NVD
- Received
Description
In the Linux kernel, the following vulnerability has been resolved: ipv6: mcast: Fix potential UAF in MLD delayed work A race condition exists between device teardown and incoming MLD query processing, leading to a Use-After-Free in the MLD delayed work. During device destruction, the primary reference to inet6_dev is dropped, which can drop its refcount to 0. The actual freeing of inet6_dev memory is deferred via RCU. Concurrently, the packet receive path runs under RCU read lock and obtains the inet6_dev pointer. Because the memory is RCU-protected, CPU-0 can safely dereference inet6_dev even if its refcount has hit 0. However, if CPU-0 calls igmp6_event_query() and schedules delayed work, it attempts to acquire a reference using in6_dev_hold(). This increments the refcount from 0 to 1, triggering a "refcount_t: addition on 0" warning. Since the inet6_dev memory is still scheduled to be freed after the RCU grace period, the device is freed while the work is still scheduled. When the work runs, it accesses the freed memory, causing a kernel panic. Fix this by using refcount_inc_not_zero() (via a new helper in6_dev_hold_safe()) to prevent acquiring a reference if the device is already being destroyed. If the refcount is 0, we do not schedule the work.
Références
- https://git.kernel.org/stable/c/f12b63ef26a035c5a29b3ef56401e38199010d4a
- https://git.kernel.org/stable/c/0401d6cf7877c9be36652385dfcbf7f891b8b590
- https://git.kernel.org/stable/c/f03b0a45535d49bdab7e502efaacee205b2a7865
- https://git.kernel.org/stable/c/9815e834f5ff8b39e0ea9f0dbd532f4a3b8f0785
- https://git.kernel.org/stable/c/ebbebf6cee950d7f1c81990256c0eae9e62572ae
- https://git.kernel.org/stable/c/9ce741c22df4fd9546e30306317ac7df3607e48f
- https://git.kernel.org/stable/c/0458ba1cda830ba4ccfcd9e19c0891438bcdbe4e
- https://git.kernel.org/stable/c/9b26518b6896a16b809b1e42986f4ebac7bccc1e
Scores
| Version | Score | Vecteur | Évalué par |
|---|---|---|---|
| CVSS 3.1 | CRITICAL 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H | Linux |
| CVSS 3.1 | CRITICAL 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H | NVD · 416baaa9-dc9f-4396-8d5f-8c081fb06d67 (Secondary) |
Références européennes
- ENISA EUVD · EUVD-2026-59221
- GCVE · GCVE-0-2026-72322
Avis du CERT-FR
- CERTFR-2026-AVI-1385 — Multiples vulnérabilités dans les produits VMware · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1372 — Multiples vulnérabilités dans les produits SUSE · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1335 — Multiples vulnérabilités dans le noyau Linux de SUSE · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1333 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1286 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1252 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1229 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1203 — Multiples vulnérabilités dans le noyau Linux d'Ubuntu · cert.ssi.gouv.fr
Produits affectés
| Produit | Versions |
|---|---|
| Linux · Linux | affected 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < f12b63ef26a035c5a29b3ef56401e38199010d4a ; affected 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 0401d6cf7877c9be36652385dfcbf7f891b8b590 ; affected 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < f03b0a45535d49bdab7e502efaacee205b2a7865 ; affected 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 9815e834f5ff8b39e0ea9f0dbd532f4a3b8f0785 ; affected 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < ebbebf6cee950d7f1c81990256c0eae9e62572ae ; affected 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 9ce741c22df4fd9546e30306317ac7df3607e48f |
| Linux · Linux | affected 2.6.12 ; unaffected 0 < 2.6.12 ; unaffected 5.10.261 ≤ 5.10.* ; unaffected 5.15.212 ≤ 5.15.* ; unaffected 6.1.178 ≤ 6.1.* ; unaffected 6.6.145 ≤ 6.6.* |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| CERT-FR (ANSSI) | Licence Ouverte / Etalab 2.0 |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |