CVE-2026-74563: rds: tcp: hold the RCU lock across ipv6_chk_addr() in rds_tcp_laddr_check()
In the Linux kernel, the following vulnerability has been resolved:
rds: tcp: hold the RCU lock across ipv6chkaddr() in rdstcpladdrcheck()
rdstcpladdrcheck() looks up a scoped IPv6 interface with devgetbyindexrcu(), drops the RCU read-side lock, and only then passes the bare struct netdevice into ipv6chkaddr().
devgetbyindexrcu() only keeps the device alive within the same RCU read-side section. After rcureadunlock(), a concurrent RTMDELLINK can free the netdevice; ipv6chkaddr() then dereferences the stale pointer in ipv6chkaddrandflags() (e.g. l3mdevmasterdevrcu(dev)), reading freed memory.
Keep the RCU read-side lock held across the ipv6chkaddr() call instead of dropping it right after the lookup, so the device cannot be freed while it is in use.
BUG: KASAN: slab-use-after-free in ipv6chkaddrandflags (... net/ipv6/addrconf.c:1998) Read of size 8 at addr ffff8880106ec000 by task exploit/153 Call Trace: ... kasanreport (mm/kasan/report.c:595) ipv6chkaddrandflags (... net/ipv6/addrconf.c:1998) ipv6chkaddr (net/ipv6/addrconf.c:2031 net/ipv6/addrconf.c:1972) rdstcpladdrcheck (net/rds/tcp.c:370) rdsbind (net/rds/bind.c:248) sysbind (net/socket.c:1920) x64sysbind (net/socket.c:1956) dosyscall64 (arch/x86/entry/syscall64.c:63) entrySYSCALL64afterhwframe (arch/x86/entry/entry64.S:121)
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2026-74563?
The severity of CVE-2026-74563 is rated at risk 44.
How do I fix CVE-2026-74563?
To fix CVE-2026-74563, update the Linux kernel to the latest version where this vulnerability is patched.
What systems are affected by CVE-2026-74563?
CVE-2026-74563 affects systems running specific versions of the Linux kernel.
What is the nature of the vulnerability in CVE-2026-74563?
CVE-2026-74563 is related to a use after free issue in the RDS TCP component of the Linux kernel.
When was CVE-2026-74563 published?
CVE-2026-74563 was published on August 15, 2026.