CVE-2026-23314Linux内核中的bq257xx稳压器驱动程序存在一处设备节点引用泄漏漏洞。该漏洞发生在驱动初始化阶段的设备树解析函数`bq257xx_reg_dt_parse_gpio`中。由于代码逻辑缺陷,当获取子节点失败时,函数直接返回错误,却未释放之前获取的设备节点引用。这种资源泄漏虽然不会立即破坏系统机密性或完整性,但长期累积会导致内核内存资源耗尽,进而引发系统可用性问题,可能导致拒绝服务。
该漏洞属于典型的内核资源生命周期管理错误。在Linux内核的设备树(Device Tree)子系统中,当驱动通过`of_get_child_by_name`等函数获取设备节点时,内核会增加该节点的引用计数。驱动程序必须在不再使用该节点时调用`of_node_put`来释放引用,否则内核无法回收该内存区域。在`bq257xx_reg_dt_parse_gpio`函数中,代码在获取`child`节点后,若后续检查失败(例如属性不存在或解析错误),执行了`return`操作。由于错误路径上遗漏了`of_node_put(child)`的调用,导致节点引用计数永久增加。攻击者只需具备本地低权限,并能够触发该驱动的加载或重试操作(如插入特定硬件或通过软件模拟),即可反复触发该漏洞,最终耗尽内核内存资源。