Missing of_node_put() in nmk_pinctrl_probe in Kernel
Summary
GSD-2022-1002231: pinctrl: nomadik: Add missing of_node_put() in nmk_pinctrl_probe. Affects Kernel versions >= 32e67eee670e1254ee5ab41e2f454680acb9c17c, < bc1e29a35147c1ba6ea2b06a16cb0028f7c852d2. 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 is a crucial component of the Linux operating system that manages system resources and facilitates communication between hardware and software. It provides essential functionalities for the proper functioning of the system. The pinctrl subsystem in the Kernel allows for the configuration and control of pin multiplexing and GPIOs on various platforms. The nomadik pinctrl driver is responsible for handling pin control on Nomadik platforms. However, a vulnerability has been identified in the nmk_pinctrl_probe function, where a call to of_node_put() is missing. This vulnerability can potentially lead to resource leaks and other issues.
Vulnerability Detail
The missing of_node_put() call in nmk_pinctrl_probe can result in resource leaks and other problems. When the driver probes a device node, it acquires a reference to the node using of_node_get(). However, if the probe fails or encounters an error, the of_node_put() function should be called to release the reference. Without this call, the reference count remains incremented, leading to resource leaks. Attackers may be able to exploit these leaks to exhaust system resources or cause other unexpected behavior. This vulnerability was introduced in Kernel version v3.9 and is fixed in version v5.4.189.
How To Fix
No fixed version is published for this vulnerability.
To fix this vulnerability, developers should ensure that the of_node_put() function is called in the nmk_pinctrl_probe function after any failure or error condition. This will release the acquired reference to the device node and prevent resource leaks. The fix for this vulnerability has been implemented in Kernel version v5.4.189, so updating to this version or any subsequent version will resolve the issue.
Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →
Workaround
There is no specific workaround mentioned for this vulnerability.
Conclusion
The missing of_node_put() call in nmk_pinctrl_probe in the Kernel can lead to resource leaks and other unexpected behavior. It is important to update to Kernel version v5.4.189 or any subsequent version to fix this vulnerability. For further support on vulnerability remediation, you can reach out to DevNack.com.
See every vulnerability recorded for Kernel →
FAQ
This vulnerability can lead to resource leaks and other unexpected behavior. Attackers may be able to exploit these leaks to exhaust system resources or cause other issues.
You can use Vulert's playground (https://vulert.com/scanner) to check if your system is affected by this vulnerability. Vulert monitors and alerts in real-time for open-source vulnerabilities without requiring access to the code or installation.
Yes, the fix for this vulnerability has been implemented in Kernel version v5.4.189. Updating to this version or any subsequent version will resolve the issue.
There are no known exploits for this vulnerability at the moment. However, it is important to apply the fix to prevent any potential exploitation.
You can find more information about this vulnerability in the Linux Kernel's Git repository (https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/).
Related vulnerabilities
Recent vulnerabilities recorded for Kernel.
Follow Vulert in Google
Get more Vulert vulnerability and dependency-security updates in Google Search and AI results.