CVE-2026-53275 PUBLISHED

ipv6: mcast: Fix use-after-free when processing MLD queries

Assigner: Linux
Reserved: 09.06.2026 Published: 25.06.2026 Updated: 25.06.2026

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 pskb_may_pull() 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 __mld_query_work (net/ipv6/mcast.c:1512) Read of size 8 at addr ffff8881154b8e90 by task kworker/4:1/118

Workqueue: mld mld_query_work Call Trace: <TASK> dump_stack_lvl (lib/dump_stack.c:94 lib/dump_stack.c:120) print_address_description.constprop.0 (mm/kasan/report.c:378) print_report (mm/kasan/report.c:482) kasan_report (mm/kasan/report.c:595) __mld_query_work (net/ipv6/mcast.c:1512) mld_query_work (net/ipv6/mcast.c:1563) process_one_work (kernel/workqueue.c:3314) worker_thread (kernel/workqueue.c:3397 kernel/workqueue.c:3478) kthread (kernel/kthread.c:436) ret_from_fork (arch/x86/kernel/process.c:158) ret_from_fork_asm (arch/x86/entry/entry_64.S:245) </TASK>

[...]

Freed by task 118: kasan_save_stack (mm/kasan/common.c:57) kasan_save_track (mm/kasan/common.c:78) kasan_save_free_info (mm/kasan/generic.c:584) __kasan_slab_free (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) pskb_expand_head (net/core/skbuff.c:2335) __pskb_pull_tail (net/core/skbuff.c:2878 (discriminator 4)) __mld_query_work (net/ipv6/mcast.c:1495 (discriminator 1)) mld_query_work (net/ipv6/mcast.c:1563) process_one_work (kernel/workqueue.c:3314) worker_thread (kernel/workqueue.c:3397 kernel/workqueue.c:3478) kthread (kernel/kthread.c:436) ret_from_fork (arch/x86/kernel/process.c:158) ret_from_fork_asm (arch/x86/entry/entry_64.S:245)

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from 97300b5fdfe28c6edae926926f9467a27cf5889c to 1354271c89d0e5fbf8b3d94097ff0216695209c7 (excl.)
  • affected from 97300b5fdfe28c6edae926926f9467a27cf5889c to 53baa63a4183291574483f89583dbef13677a2c4 (excl.)
  • affected from 97300b5fdfe28c6edae926926f9467a27cf5889c to 2a613bf497029d555a7428406aa8cdb84a503cea (excl.)
  • affected from 97300b5fdfe28c6edae926926f9467a27cf5889c to b2eb8886200b907fc71806869620609f0f4cacb0 (excl.)
  • affected from 97300b5fdfe28c6edae926926f9467a27cf5889c to 4203806f700bb44ea0b05d484d9d40044b47fb04 (excl.)
  • affected from 97300b5fdfe28c6edae926926f9467a27cf5889c to 087dbacf897c020f438f780f0a4a8aa73b6d7c5a (excl.)
  • affected from 97300b5fdfe28c6edae926926f9467a27cf5889c to 791c91dc7a9dfb2457d5e29b8216a6484b9c4b40 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 2.6.15 is affected
  • unaffected from 0 to 2.6.15 (excl.)
  • unaffected from 5.15.210 to 5.15.* (incl.)
  • unaffected from 6.1.176 to 6.1.* (incl.)
  • unaffected from 6.6.143 to 6.6.* (incl.)
  • unaffected from 6.12.94 to 6.12.* (incl.)
  • unaffected from 6.18.36 to 6.18.* (incl.)
  • unaffected from 7.0.13 to 7.0.* (incl.)
  • unaffected from 7.1 to * (incl.)

References