CVE-2026-43198Linux内核TCP协议栈中存在一个严重的竞态条件漏洞。在`tcp_v6_syn_recv_sock`函数处理IPv6映射套接字时,子套接字在完全初始化前就被插入全局哈希表,导致`newinet->pinet6`指针指向错误内存。攻击者无需交互即可通过网络触发该漏洞,可能导致内核崩溃、内存损坏或权限提升,CVSS评分9.8。
该漏洞发生在Linux内核网络子系统的IPv6 TCP连接处理逻辑中。具体而言,`tcp_v6_syn_recv_sock`函数在调用`tcp_v4_syn_recv_sock`后,子套接字已被加入TCP ehash(扩展哈希表),此时该套接字对系统所有CPU核心可见。然而,将`newinet->pinet6`正确指向子套接字私有数据的初始化代码是在`tcp_v4_syn_recv_sock`之后执行的。在这个时间窗口内,如果其他CPU核心调度并访问该未完全初始化的套接字,将访问到父监听套接字的`ipv6_pinfo`,导致内核空指针解引用、释放后重用(UAF)或越界写入。修复方法是将初始化逻辑移至`tcp_v6_mapped_child_init`辅助函数,并在插入ehash之前调用。