CVE-2026-43218Linux内核中的media子系统存在一个内存泄漏漏洞,具体位于i2c/tw9903驱动的tw9903_probe函数中。在该函数的某个错误处理路径下,通过v4l2_ctrl_handler_init()和v4l2_ctrl_new_std()分配的内存未被正确释放。长期利用该漏洞可能导致系统内存耗尽,进而影响系统可用性。该漏洞已被修复,通过在错误路径中调用v4l2_ctrl_handler_free()来释放相关资源。
该漏洞源于Linux内核视频4Linux2(v4l2)子系统中tw9903视频解码器驱动的初始化逻辑。在tw9903_probe函数执行期间,驱动程序会调用v4l2_ctrl_handler_init()来初始化控制处理器,并使用v4l2_ctrl_new_std()分配标准控制项的内存。如果在后续初始化步骤中发生错误(例如硬件检测失败或资源分配失败),代码将跳转至错误处理标签退出。然而,在特定的错误返回路径中,代码未能执行必要的清理操作,即未调用v4l2_ctrl_handler_free()函数来释放之前分配的控制处理器及其关联的内存。这种资源的持续泄漏会导致系统可用内存逐渐减少。由于攻击者需要具备低权限本地访问权限(AV:L/PR:L),攻击者可以通过反复触发探测失败或加载/卸载受影响模块,最终耗尽内核内存资源,导致系统拒绝服务(DoS)。