In the Linux kernel, the following vulnerability has been resolved: platform/x86: wmi: Fix opening of char device Since commit fa1f68db6ca7 (“drivers: misc: pass miscdevice pointer via file private data”), the miscdevice stores a pointer to itself inside filp->private_data, which means that private_data will not be NULL when wmi_char_open() is called. This might cause memory corruption should wmi_char_open() be unable to find its driver, something which can happen when the associated WMI device is deleted in wmi_free_devices(). Fix the problem by using the miscdevice pointer to retrieve the WMI device data associated with a char device using container_of(). This also avoids wmi_char_open() picking a wrong WMI device bound to a driver with the same name as the original driver.
OS | Version | Architecture | Package | Version | Filename |
---|---|---|---|---|---|
Debian | 12 | all | linux | < 6.1.64-1 | linux_6.1.64-1_all.deb |
Debian | 11 | all | linux | < 5.10.205-1 | linux_5.10.205-1_all.deb |
Debian | 10 | all | linux | < 4.19.304-1 | linux_4.19.304-1_all.deb |
Debian | 999 | all | linux | < 6.6.8-1 | linux_6.6.8-1_all.deb |
Debian | 13 | all | linux | < 6.6.8-1 | linux_6.6.8-1_all.deb |