CVE-2026-31422Linux内核net/sched模块中的cls_flow组件存在空指针解引用漏洞。攻击者可利用该漏洞在共享块上创建未完全限定的流过滤器,导致系统崩溃,从而造成拒绝服务。该漏洞源于flow_change()函数在未检查block->q是否为NULL的情况下直接解引用该指针。
该漏洞位于Linux内核网络流量控制子系统的cls_flow模块中。漏洞根源在于flow_change()函数处理过滤器创建请求时的逻辑缺陷。当用户尝试在共享块上创建一个没有完全限定基类的流过滤器时,该函数会调用tcf_block_q()获取队列指针,并直接访问q->handle以推导默认基类。然而,对于共享块而言,block->q字段明确被设置为NULL,因为它们不依附于特定的队列实例。由于代码缺少对tcf_block_shared()的预检查,直接解引用NULL指针导致内核访问非法内存。这会触发KASAN(内核地址消毒剂)检测到空指针解引用,进而引发内核崩溃,导致本地低权限用户可造成拒绝服务攻击。