CVE-2026-23366该漏洞存在于Linux内核的drm/client模块中。在`drm_client_modeset_probe`函数执行时,若`kcalloc`分配内存失败导致`modes`为空指针,代码会错误地跳转至清理逻辑并调用`modes_destroy`。由于解引用了空指针,这将导致系统崩溃或内核拒绝服务,影响本地系统的可用性。
漏洞原理在于Linux内核驱动中的错误处理逻辑缺失。当调用`drm_client_modeset_probe`时,系统尝试使用`kcalloc`为`modes`分配内存。若分配失败(例如内存不足),`modes`指针将为NULL。此时代码执行流跳转到标签`out`,并调用`modes_destroy(connector, modes)`。`modes_destroy`函数内部通常会遍历或访问`modes`指针指向的结构体成员,从而导致NULL Pointer Dereference。攻击者需具备本地低权限,可通过消耗内存或触发特定图形模式探测流程来利用此漏洞,导致内核崩溃。