CVE-2026-64189
Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
20/07/2026
Last modified:
20/07/2026
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
netfilter: ipset: fix race between dump and ip_set_list resize<br />
<br />
The release path of ip_set_dump_do() and ip_set_dump_done() read<br />
inst->ip_set_list via ip_set_ref_netlink(), a plain rcu_dereference_raw()<br />
of the array pointer. These run from netlink_recvmsg() without the nfnl<br />
mutex and without an RCU read-side critical section.<br />
<br />
A concurrent ip_set_create() can grow the array: it publishes the new<br />
array, calls synchronize_net() and then kvfree()s the old one. Since the<br />
dump paths read the array outside any RCU reader, synchronize_net() does<br />
not wait for them and the old array can be freed while they still index<br />
into it, causing a use-after-free.<br />
<br />
The dumped set itself stays pinned via set->ref_netlink, so only the<br />
array load needs protecting. Take rcu_read_lock() around it, matching<br />
ip_set_get_byname() and __ip_set_put_byindex().<br />
<br />
BUG: KASAN: slab-use-after-free in ip_set_dump_do (net/netfilter/ipset/ip_set_core.c:1697)<br />
Read of size 8 at addr ffff88800b5c4018 by task exploit/150<br />
Call Trace:<br />
...<br />
kasan_report (mm/kasan/report.c:595)<br />
ip_set_dump_do (net/netfilter/ipset/ip_set_core.c:1697)<br />
netlink_dump (net/netlink/af_netlink.c:2325)<br />
netlink_recvmsg (net/netlink/af_netlink.c:1976)<br />
sock_recvmsg (net/socket.c:1159)<br />
__sys_recvfrom (net/socket.c:2315)<br />
...<br />
Oops: general protection fault, probably for non-canonical address ... KASAN NOPTI<br />
KASAN: maybe wild-memory-access in range [0x02d6...d0-0x02d6...d7]<br />
RIP: 0010:ip_set_dump_do (net/netfilter/ipset/ip_set_core.c:1698)<br />
Kernel panic - not syncing: Fatal exception



