CVE-2026-23389Linux内核中的Intel以太网驱动(ice驱动)存在内存泄漏漏洞。在`ice_set_ringparam`函数中,由于错误处理逻辑不完善,当接收环(rx_rings)分配失败或初始化出错时,未能释放先前已分配的发送环(tx_rings)和XDP环(xdp_rings)。这导致内核内存资源被永久占用,长期利用可能引发系统内存耗尽及拒绝服务。
该漏洞位于Linux内核的`drivers/net/ethernet/intel/ice/ice_ethtool.c`文件中的`ice_set_ringparam`函数。函数执行流程为先分配`tx_rings`和`xdp_rings`,随后分配`rx_rings`。若`rx_rings`分配失败,代码跳转至`done`标签,仅检查释放`rx_rings`,导致`tx_rings`和`xdp_rings`泄漏。此外,在随后的`rx_rings`设置循环中,若单个ring设置失败,代码跳转至`free_tx`标签,虽然释放了`tx_rings`,但再次遗漏了`xdp_rings`的释放。攻击者可利用本地低权限账户,通过系统调用或工具(如ethtool)反复触发ring参数调整操作,导致内核空间内存持续泄漏,最终耗尽系统内存,造成系统崩溃或服务不可用(DoS)。