CVE-2026-53275: ipv6: mcast: Fix use-after-free when processing MLD queries
In the Linux kernel, the following vulnerability has been resolved:
ipv6: mcast: Fix use-after-free when processing MLD queries
When processing an MLD query, a pointer to the multicast group address is retrieved when initially parsing the packet. This pointer is later dereferenced without being reloaded despite the fact that the skb header might have been reallocated following the pskbmaypull() calls, leading to a use-after-free [1].
Fix by copying the multicast group address when the packet is initially parsed.
[1] BUG: KASAN: slab-use-after-free in mldquerywork (net/ipv6/mcast.c:1512) Read of size 8 at addr ffff8881154b8e90 by task kworker/4:1/118
Workqueue: mld mldquerywork Call Trace: <TASK> dumpstacklvl (lib/dumpstack.c:94 lib/dumpstack.c:120) printaddressdescription.constprop.0 (mm/kasan/report.c:378) printreport (mm/kasan/report.c:482) kasanreport (mm/kasan/report.c:595) mldquerywork (net/ipv6/mcast.c:1512) mldquerywork (net/ipv6/mcast.c:1563) processonework (kernel/workqueue.c:3314) workerthread (kernel/workqueue.c:3397 kernel/workqueue.c:3478) kthread (kernel/kthread.c:436) retfromfork (arch/x86/kernel/process.c:158) retfromforkasm (arch/x86/entry/entry64.S:245) </TASK>
[...]
Freed by task 118: kasansavestack (mm/kasan/common.c:57) kasansavetrack (mm/kasan/common.c:78) kasansavefreeinfo (mm/kasan/generic.c:584) kasanslabfree (mm/kasan/common.c:253 mm/kasan/common.c:285) kfree (./include/linux/kasan.h:235 mm/slub.c:2689 mm/slub.c:6251 mm/slub.c:6566) pskbexpandhead (net/core/skbuff.c:2335) pskbpulltail (net/core/skbuff.c:2878 (discriminator 4)) mldquerywork (net/ipv6/mcast.c:1495 (discriminator 1)) mldquerywork (net/ipv6/mcast.c:1563) processonework (kernel/workqueue.c:3314) workerthread (kernel/workqueue.c:3397 kernel/workqueue.c:3478) kthread (kernel/kthread.c:436) retfromfork (arch/x86/kernel/process.c:158) retfromforkasm (arch/x86/entry/entry64.S:245)
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 6.6.143.1-1 - Configuration
Update the affected Linux kernel networking code to copy the multicast group address when initially parsing the packet in MLD query handling (in __mld_query_work / net/ipv6/mcast.c). This prevents use-after-free when workqueue processing later dereferences that pointer after pskb_may_pull/pskb_pull_tail may reallocate skb header storage.
Linux kernel (net/ipv6/mcast.c) - MLD query handling Copy multicast group address instead of using pointer to skb header after skb header may move = Implement fix: copy the multicast group address when the packet is initially parsed, so later workqueue processing does not dereference freed/relocated skb-derived memory
Event History
Frequently Asked Questions
What is the severity of CVE-2026-53275?
CVE-2026-53275 has a risk score of 55, indicating a moderate level of severity.
How do I fix CVE-2026-53275?
To fix CVE-2026-53275, ensure that your Linux kernel is updated to the latest version where this vulnerability is patched.
What types of systems are affected by CVE-2026-53275?
CVE-2026-53275 affects systems running vulnerable versions of the Linux kernel that utilize IPv6 multicast.
What is the nature of CVE-2026-53275?
CVE-2026-53275 is a use-after-free vulnerability related to the processing of MLD queries in the Linux kernel.
Is CVE-2026-53275 exploitable remotely?
Yes, CVE-2026-53275 could potentially be exploited remotely if an attacker sends crafted MLD queries to a vulnerable system.