CVE-2026-31494Linux内核macb驱动程序存在越界写入漏洞。在获取网卡统计信息时,`gem_get_ethtool_stats`函数错误地使用最大队列数(MACB_MAX_QUEUES)来复制数据,而实际分配的内存是基于活动队列数计算的。当活动队列数小于最大值时,会导致向分配区域之外的内存写入数据,引发内核崩溃或潜在的权限提升。
该漏洞源于Linux内核macb驱动中统计信息收集逻辑的缺陷。`gem_get_sset_count`函数根据当前激活的队列数量正确计算了统计信息所需的内存大小,并分配了相应空间。然而,`gem_get_ethtool_stats`函数在执行`memcpy`操作时,使用了常量`MACB_MAX_QUEUES`作为长度参数,而非当前活动的队列数。这种不匹配导致在活动队列数少于最大值时,写入的数据量超过了分配的缓冲区大小,造成堆越界写入。攻击者需拥有本地低权限账号,通过调用`ethtool -S`等命令触发该漏洞,导致内核崩溃或执行任意代码。