CVE-2026-74563 in Linux정보

요약

\~에 의해 VulDB • 2026. 08. 15.

리눅스 커널에서 다음 취약점이 해결되었습니다.

rds: tcp: rds_tcp_laddr_check() 내에서 ipv6_chk_addr() 호출 시 RCU 잠금을 유지합니다.

rds_tcp_laddr_check()는 dev_get_by_index_rcu()를 사용하여 스코프 지정 IPv6 인터페이스를 조회한 후, RRC 읽기 전용 잠금(RCU read-side lock)을 해제하고 나서야 원시 struct net_device * 포인터를 ipv6_chk_addr()에 전달합니다.

dev_get_by_index_rcu()는 동일한 RCU 읽기 전용 섹션 내에서만 해당 장치를 유효하게 유지합니다. rcu_read_unlock() 이후, 동시 실행되는 RTM_DELLINK 이벤트가 net_device의 메모리를 해제할 수 있으며, 이로 인해 ipv6_chk_addr()은 __ipv6_chk_addr_and_flags()(예: l3mdev_master_dev_rcu(dev))에서 유효하지 않은 포인터를 역참조하여 이미 해제된 메모리를 읽게 됩니다.

조회 직후 잠금을 해제하는 대신, 해당 장치가 사용 중인 동안 해제가 되지 않도록 ipv6_chk_addr() 호출 전체에 걸쳐 RCU 읽기 전용 잠금을 유지합니다.

BUG: KASAN: slab-use-after-free in __ipv6_chk_addr_and_flags (... net/ipv6/addrconf.c:1998) Read of size 8 at addr ffff8880106ec000 by task exploit/153 Call Trace: ... kasan_report (mm/kasan/report.c:595) __ipv6_chk_addr_and_flags (... net/ipv6/addrconf.c:1998) ipv6_chk_addr (net/ipv6/addrconf.c:2031 net/ipv6/addrconf.c:1972) rds_tcp_laddr_check (net/rds/tcp.c:370) rds_bind (net/rds/bind.c:248) __sys_bind (net/socket.c:1920) __x64_sys_bind (net/socket.c:1956) do_syscall_64 (arch/x86/entry/syscall_64.c:63) entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:121)

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

출처

Want to stay up to date on a daily basis?

Enable the mail alert feature now!