CVE-2024-50197 pinctrl: intel: platform: fix error path in device_for_each_child_node()
A missing reference count decrement in the Intel pinctrl driver can lead to memory leaks and potential denial of service.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2024-50197?
CVE-2024-50197 is a medium-severity memory corruption vulnerability in Linux kernel, published on 8 Nov 2024. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
In the Linux kernel, the following vulnerability has been resolved:
pinctrl: intel: platform: fix error path in device_for_each_child_node()
The device_for_each_child_node() loop requires calls to fwnode_handle_put() upon early returns to decrement the refcount of the child node and avoid leaking memory if that error path is triggered.
There is one early returns within that loop in intel_platform_pinctrl_prepare_community(), but fwnode_handle_put() is missing.
Instead of adding the missing call, the scoped version of the loop can be used to simplify the code and avoid mistakes in the future if new early returns are added, as the child node is only used for parsing, and it is never assigned.
Weakness: CWE-401
Which versions are affected by CVE-2024-50197?
It affects 1 product.
Products include Linux kernel.
How do I fix CVE-2024-50197?
Apply the vendor's patch.
Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.
Is CVE-2024-50197 being exploited?
There is no known exploitation of CVE-2024-50197 in the wild and no public exploit code.
Other vulnerabilities in Linux kernel
Sources
Also known as BELL-CVE-2024-50197, DEBIAN-CVE-2024-50197, GHSA-v43r-53w7-7crq, UBUNTU-CVE-2024-50197.