CVE-2026-43451Linux内核中的netfilter子系统存在一个内存泄漏漏洞。该漏洞位于nfnetlink_queue模块的桥接判决错误路径中。当处理PF_BRIDGE数据包时,`nfqnl_recv_verdict`函数调用`find_dequeue_entry`获取队列条目所有权后,若后续的`nfqa_parse_bridge`函数解析VLAN属性失败(例如缺少TCI),函数会直接返回而未释放已获取的队列条目及相关sk_buff。这会导致内核内存被持续占用,重复触发可耗尽系统内存,造成拒绝服务攻击。
该漏洞的根源在于Linux内核netfilter子系统的`nfnetlink_queue`模块中的资源管理逻辑错误。具体而言,`nfqnl_recv_verdict`函数在处理网络数据包的判决时,首先调用`find_dequeue_entry`将条目从队列中移除,此时调用者获得了该条目及其关联数据结构(如`sk_buff`)的所有权。随后,对于PF_BRIDGE类型的数据包,函数会调用`nfqa_parse_bridge`来解析VLAN属性。如果解析过程中遇到错误情况(例如检测到NFQA_VLAN属性但缺少NFQA_VLAN_TCI),代码流程会直接返回错误码。然而,在返回之前并未调用`nfqnl_reinject`释放或重新注入之前获取的队列条目。这种“获取后未释放”的逻辑导致`nf_queue_entry`结构体、套接字缓冲区以及持有的网络设备引用计数发生泄漏。攻击者可通过本地低权限账户反复发送特制的桥接数据包触发该错误路径,导致内核内存逐渐耗尽,最终使系统崩溃或失去响应。