CVE-2026-43271Linux内核中的md-cluster模块存在空指针解引用漏洞。该漏洞源于MD阵列启动序列中的竞态条件。在`bitmap_load`调用后,`recv_daemon`线程已启动并处理消息,但主MD线程尚未初始化。此时若收到远程节点的`METADATA_UPDATED`消息,系统将因解引用空指针而导致内核崩溃,影响系统可用性。
该漏洞位于Linux内核的`process_metadata_update`函数中。函数通过`rcu_dereference_protected`获取'thread'指针并在`wait_event`宏中直接解引用。尽管注释声称守护线程必须存在,但在`md_run`启动序列中存在一个时间窗口:首先`bitmap_load`调用`join`启动`cluster_recv`线程,此时该线程已活跃并处理消息,但`mddev->thread`(主MD线程)尚未初始化。如果在此窗口期内从远程节点接收到`METADATA_UPDATED`消息,`process_metadata_update`被调用时`mddev->thread`仍为NULL。代码未检查指针有效性直接访问,导致内核恐慌。攻击者需具备本地低权限,并控制节点间的通信以在特定时机发送消息。