CVE-2026-23337Linux内核的pinctrl驱动中存在内存泄漏漏洞。在pinconf_generic_parse_dt_config函数里,如果parse_dt_cfg执行失败,代码直接返回错误,导致未释放已分配的cfg缓冲区。本地低权限攻击者可利用此造成内存耗尽,影响系统可用性。
该漏洞源于Linux内核源码文件/drivers/pinctrl/pinconf-generic.c中的错误处理逻辑缺失。函数pinconf_generic_parse_dt_config首先调用kcalloc分配内存cfg。随后调用parse_dt_cfg进行配置解析。在发生错误时(例如解析失败),原代码直接返回错误码,跳过了后续的kfree(cfg)清理操作。由于CVSS向量为AV:L/PR:L,本地低权限用户可通过反复触发该错误路径(例如加载特定设备树配置或调用相关ioctl)造成内核内存持续泄漏。长期利用会导致系统内存不足,引发拒绝服务(DoS),严重破坏系统可用性(A:H)。修复方案为在错误处理时跳转到out标签以确保内存释放。