CVE-2026-43036Linux内核网络子系统存在安全漏洞。在TCPv4 GSO的frag_off检查过程中,代码直接通过iph->frag_off访问IPv4头部,未考虑数据包可能来自PF_PACKET路径且数据非线性化的情况。这导致读取未初始化的内存值,可能引发内核崩溃或拒绝服务。
该漏洞位于Linux内核的net子系统,具体涉及gso_features_check()函数。Syzbot报告的KMSAN警告显示,该函数在调用netif_skb_features()时读取了未初始化的值。问题的核心在于,代码直接使用ip_hdr()或inner_ip_hdr()返回的指针来访问iph->frag_off字段。对于通过PF_PACKET套接字注入的数据包,其skb头部可能尚未线性化,或者偏移量不可靠,直接解引用这些指针会导致访问无效或未初始化的内存区域。虽然该漏洞主要影响可用性(A:H),可能导致系统崩溃,但不会泄露机密信息或破坏数据完整性。修复方案采用skb_header_pointer()函数替代直接指针访问,该函数能够安全地处理线性数据和非线性数据的读取(必要时进行拷贝),从而消除了潜在的内存访问风险,增强了内核在处理特殊数据包时的鲁棒性。