CVE-2026-43091Linux内核中的xfrm_policy_fini()函数在处理网络命名空间退出时存在漏洞。该函数在刷新策略工作项并删除所有策略后,立即释放policy_bydst哈希表,但未等待并发的RCU读者离开其读端临界区。由于这些表通过rcu_assign_pointer发布,通过rcu_dereference_check查找,过早释放会导致在RCU宽限期结束前仍有读者访问已释放的内存,从而引发内核崩溃或潜在的安全问题。
该漏洞发生在Linux内核net/xfrm子系统的xfrm_policy_fini()函数中。当网络命名空间退出时,系统调用该函数进行清理。问题在于,函数在删除所有策略并刷新工作队列后,直接释放了policy_bydst哈希表内存,而未调用synchronize_rcu()等待现有的RCU读者完成读端临界区。由于policy_bydst表的发布与访问均依赖RCU机制,当内存被过早释放而仍有读者在访问时,会导致释放后重用(UAF)。本地低权限攻击者可利用此竞态条件,触发内核空指针解引用或执行任意代码,导致拒绝服务或权限提升。