← CVE announcements

SECURITY ANNOUNCEMENT

CVE-2026-99246

3 November 2026

The tipc_node_reset_links trace event asks tipc_node_dump() to walk the node's link entries. Unlike the other node events that request link data, this event runs without the node lock.

This permits bearer teardown to free a link while the trace callback is dumping it:

CPU 0 CPU 1 trace_tipc_node_reset_links() tipc_node_dump() l = n->links[0].link tipc_node_write_lock() kfree(l) n->links[0].link = NULL tipc_node_write_unlock() tipc_link_dump(l)

tipc_link_dump() then dereferences the stale pointer. KASAN reported:

BUG: KASAN: slab-use-after-free in tipc_link_dump Read of size 4 by task poc/115 Call Trace: tipc_link_dump+0x10cb/0x16b0 tipc_node_dump+0x4bb/0x740 trace_event_raw_event_tipc_node_class+0x258/0x360 tipc_node_reset_links+0x14d/0x1a0 tipc_rcv+0x13f5/0x3030 tipc_udp_recv+0x4e3/0x670 Allocated by task 0: tipc_link_create+0x1e1/0x1020 tipc_node_check_dest+0x7d2/0x11a0 tipc_disc_rcv+0xdbf/0x1430 Freed by task 89: kfree+0x131/0x3c0 tipc_node_link_down+0x267/0x4b0 tipc_node_delete_links+0xec/0x160 bearer_disable+0x107/0x260

Take the node write lock around the trace event. This serializes the dump against tipc_node_link_down(delete=true), which frees the link under the same write lock.

Introduced

5.0 eb18a510b5cd4daeb9736ad8db57a9fc49db185b

Fixed releases

5.10.273 c8b72ca0918e95f708f67c8b3e69b05290f2b6d2

5.15.224 6e492cb98ca69cc1145175e23e22e3b84da7f26d

6.1.191 7bb6a35bd6d69019539d8782fb590fd2aa8a3236

6.12.115 a6101d62ccfa153db8c218ce59362b8e0316fd4f

6.18.59 b8b7d28dc2b7472ffd1eff3954c38f1976b21a7b

6.6.161 6abd93d01b0f495f29201925a5ee8e6a583c4044

7.2.13 fa8c78c0e49aa11fae116fd841e41aa8f2d68751

7.3 dddf197f29ba5e47a476dde82bf542ca2e0d5e5e

View source announcement ↗