CVE-2026-23464Linux内核中的Microchip PolarFire SoC系统控制器驱动存在内存泄漏漏洞。在mpfs_sys_controller_probe函数中,当of_get_mtd_device_by_node调用失败时,函数直接返回而未释放已分配的sys_controller内存。此外,mbox_request_channel失败时的错误处理也存在同样问题,导致内核内存资源泄漏。
该漏洞位于Linux内核的drivers/soc/microchip/mpfs-sys-controller.c驱动文件中。在mpfs_sys_controller_probe探测函数执行期间,系统首先为sys_controller结构体分配内存。随后调用of_get_mtd_device_by_node()尝试获取设备节点。如果该函数返回失败(例如节点不存在或不可用),原始代码直接返回错误码,跳过了内存释放步骤。同理,mbox_request_channel()失败时也未正确清理资源。这种逻辑缺陷导致每次探测失败都会泄漏一块内存。本地攻击者可通过反复加载卸载驱动或触发设备探测失败,逐渐耗尽内核内存,最终导致系统拒绝服务。