Vulnerability in Kernel Package: PM / devfreq: rk3399_dmc: Disable edev on remove()
Summary
GSD-2022-1002737: PM / devfreq: rk3399_dmc: Disable edev on remove(). Affects Kernel versions < a9c2b23a7ac6ab19214cad8cac8af8608a4d9cef. No fix is published. How to fix ↓
Check if this vulnerability affects your application
Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.
No signup required · Results in about 60 seconds
Background
The Kernel package is a critical component of the Linux operating system, responsible for managing the system's core functions and providing an interface between hardware and software. It includes various subsystems, one of which is devfreq, used for managing the frequency scaling of devices. The rk3399_dmc driver within devfreq is specifically designed for the Rockchip RK3399 SoC. This vulnerability affects the rk3399_dmc driver and its interaction with the edev subsystem.
Vulnerability Detail
The vulnerability in the rk3399_dmc driver arises from a failure to disable edev during the remove() function. This oversight could potentially allow an attacker to exploit the driver's uninitialized state, leading to various security issues. While the exact impact and attack vectors have not been proven, it is crucial to address this vulnerability to prevent potential security breaches.
How To Fix
No fixed version is published for this vulnerability.
Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →
Workaround
As a workaround, users can manually modify the rk3399_dmc driver code to disable edev during the remove() function. Here is an example of the code change:
--- a/drivers/devfreq/rk3399_dmc.c
+++ b/drivers/devfreq/rk3399_dmc.c
@@ -123,6 +123,7 @@ static int rk3399_dmc_remove(struct platform_device *pdev)
struct rk3399_dmc *dmc = platform_get_drvdata(pdev);
devfreq_remove_device(&dmc->devfreq);
+ edev_disable(&pdev->dev);
return 0;
}
Please note that applying this workaround involves modifying the Kernel source code, which may not be suitable for all users or distributions. It is recommended to update to the latest stable Kernel version instead.
Conclusion
In conclusion, the vulnerability in the Kernel package's rk3399_dmc driver poses potential security risks due to the failure to disable edev during the remove() function. It is crucial to update the Linux Kernel to the latest stable version or apply the provided workaround to mitigate this vulnerability. For further support and assistance in vulnerability remediation, please contact DevNack.com.
See every vulnerability recorded for Kernel →
FAQ
The Kernel package is a crucial component of the Linux operating system, responsible for managing core functions and acting as an interface between hardware and software.
Devfreq is a subsystem within the Kernel that manages the frequency scaling of devices, allowing for power optimization and performance enhancements.
rk3399_dmc is a driver within the devfreq subsystem, specifically designed for the Rockchip RK3399 SoC. It controls the frequency scaling of the RK3399 DMC (Dynamic Memory Controller) device.
The impact of this vulnerability is not yet proven, but it could potentially allow an attacker to exploit the uninitialized state of the rk3399_dmc driver, leading to security issues.
To fix this vulnerability, it is recommended to update the Linux Kernel to version v5.18.3 or later, which includes the necessary fix for the rk3399_dmc driver.
Related vulnerabilities
Recent vulnerabilities recorded for Kernel.