CVE-2024-56625: Vulnerability in Linux Linux
In the Linux kernel, the following vulnerability has been resolved: can: dev: can_set_termination(): allow sleeping GPIOs In commit 6e86a1543c37 ("can: dev: provide optional GPIO based termination support") GPIO based termination support was added. For no particular reason that patch uses gpiod_set_value() to set the GPIO. This leads to the following warning, if the systems uses a sleeping GPIO, i.e. behind an I2C port expander: | WARNING: CPU: 0 PID: 379 at /drivers/gpio/gpiolib.c:3496 gpiod_set_value+0x50/0x6c | CPU: 0 UID: 0 PID: 379 Comm: ip Not tainted 6.11.0-20241016-1 #1 823affae360cc91126e4d316d7a614a8bf86236c Replace gpiod_set_value() by gpiod_set_value_cansleep() to allow the use of sleeping GPIOs.
AI Analysis
Technical Summary
CVE-2024-56625 is a vulnerability identified in the Linux kernel related to the CAN (Controller Area Network) device driver, specifically in the function can_set_termination(). The issue arises from the way GPIO (General Purpose Input/Output) pins are controlled for termination support in CAN devices. A commit (6e86a1543c37) introduced optional GPIO-based termination support using the function gpiod_set_value() to set GPIO values. However, this function is not suitable for GPIOs that can enter sleep states, such as those managed via I2C port expanders. Using gpiod_set_value() on sleeping GPIOs triggers kernel warnings and potentially unstable behavior because it does not handle the necessary sleeping context properly. The correct approach is to use gpiod_set_value_cansleep(), which is designed to safely set GPIO values even when the GPIOs may sleep. The vulnerability is essentially a misuse of GPIO APIs in the kernel driver, which can lead to kernel warnings and potentially impact device stability or reliability. This issue affects Linux kernel versions containing the specified commit and has been publicly disclosed without known exploits in the wild. No CVSS score has been assigned yet.
Potential Impact
For European organizations relying on Linux-based systems with CAN bus devices that utilize GPIO termination via sleeping GPIOs (e.g., behind I2C port expanders), this vulnerability could cause kernel warnings and potentially disrupt CAN device operation. This may lead to degraded system stability or intermittent failures in critical embedded systems or industrial control environments where CAN bus is prevalent. While this vulnerability does not directly lead to privilege escalation or remote code execution, the instability or unexpected behavior in kernel space could impact availability and reliability of systems. Organizations in sectors such as automotive manufacturing, industrial automation, and embedded device production—where Linux and CAN bus are common—may experience operational disruptions if unpatched. The absence of known exploits reduces immediate risk, but the issue should be addressed to maintain system robustness.
Mitigation Recommendations
To mitigate this vulnerability, organizations should update their Linux kernel to a version where the patch replacing gpiod_set_value() with gpiod_set_value_cansleep() in the CAN driver is applied. Kernel maintainers and distributors should prioritize releasing patched kernel versions. For embedded or industrial systems using custom kernels, developers must audit GPIO handling in CAN drivers to ensure sleeping GPIOs are managed with the correct API. Additionally, system integrators should verify that their hardware configurations involving GPIOs behind I2C port expanders are tested against the patched kernel to prevent kernel warnings and instability. Monitoring kernel logs for related warnings can help detect unpatched systems. Since this vulnerability is related to kernel driver implementation, generic mitigations like disabling CAN devices are impractical; patching is the primary solution.
Affected Countries
Germany, France, Italy, United Kingdom, Netherlands, Sweden, Finland
CVE-2024-56625: Vulnerability in Linux Linux
Description
In the Linux kernel, the following vulnerability has been resolved: can: dev: can_set_termination(): allow sleeping GPIOs In commit 6e86a1543c37 ("can: dev: provide optional GPIO based termination support") GPIO based termination support was added. For no particular reason that patch uses gpiod_set_value() to set the GPIO. This leads to the following warning, if the systems uses a sleeping GPIO, i.e. behind an I2C port expander: | WARNING: CPU: 0 PID: 379 at /drivers/gpio/gpiolib.c:3496 gpiod_set_value+0x50/0x6c | CPU: 0 UID: 0 PID: 379 Comm: ip Not tainted 6.11.0-20241016-1 #1 823affae360cc91126e4d316d7a614a8bf86236c Replace gpiod_set_value() by gpiod_set_value_cansleep() to allow the use of sleeping GPIOs.
AI-Powered Analysis
Technical Analysis
CVE-2024-56625 is a vulnerability identified in the Linux kernel related to the CAN (Controller Area Network) device driver, specifically in the function can_set_termination(). The issue arises from the way GPIO (General Purpose Input/Output) pins are controlled for termination support in CAN devices. A commit (6e86a1543c37) introduced optional GPIO-based termination support using the function gpiod_set_value() to set GPIO values. However, this function is not suitable for GPIOs that can enter sleep states, such as those managed via I2C port expanders. Using gpiod_set_value() on sleeping GPIOs triggers kernel warnings and potentially unstable behavior because it does not handle the necessary sleeping context properly. The correct approach is to use gpiod_set_value_cansleep(), which is designed to safely set GPIO values even when the GPIOs may sleep. The vulnerability is essentially a misuse of GPIO APIs in the kernel driver, which can lead to kernel warnings and potentially impact device stability or reliability. This issue affects Linux kernel versions containing the specified commit and has been publicly disclosed without known exploits in the wild. No CVSS score has been assigned yet.
Potential Impact
For European organizations relying on Linux-based systems with CAN bus devices that utilize GPIO termination via sleeping GPIOs (e.g., behind I2C port expanders), this vulnerability could cause kernel warnings and potentially disrupt CAN device operation. This may lead to degraded system stability or intermittent failures in critical embedded systems or industrial control environments where CAN bus is prevalent. While this vulnerability does not directly lead to privilege escalation or remote code execution, the instability or unexpected behavior in kernel space could impact availability and reliability of systems. Organizations in sectors such as automotive manufacturing, industrial automation, and embedded device production—where Linux and CAN bus are common—may experience operational disruptions if unpatched. The absence of known exploits reduces immediate risk, but the issue should be addressed to maintain system robustness.
Mitigation Recommendations
To mitigate this vulnerability, organizations should update their Linux kernel to a version where the patch replacing gpiod_set_value() with gpiod_set_value_cansleep() in the CAN driver is applied. Kernel maintainers and distributors should prioritize releasing patched kernel versions. For embedded or industrial systems using custom kernels, developers must audit GPIO handling in CAN drivers to ensure sleeping GPIOs are managed with the correct API. Additionally, system integrators should verify that their hardware configurations involving GPIOs behind I2C port expanders are tested against the patched kernel to prevent kernel warnings and instability. Monitoring kernel logs for related warnings can help detect unpatched systems. Since this vulnerability is related to kernel driver implementation, generic mitigations like disabling CAN devices are impractical; patching is the primary solution.
Affected Countries
For access to advanced analysis and higher rate limits, contact root@offseq.com
Technical Details
- Data Version
- 5.1
- Assigner Short Name
- Linux
- Date Reserved
- 2024-12-27T14:03:06.017Z
- Cisa Enriched
- false
- Cvss Version
- null
- State
- PUBLISHED
Threat ID: 682d9822c4522896dcbde3b6
Added to database: 5/21/2025, 9:08:50 AM
Last enriched: 6/28/2025, 6:11:42 AM
Last updated: 8/21/2025, 12:51:38 PM
Views: 14
Related Threats
CVE-2025-7221: CWE-285 Improper Authorization in givewp GiveWP – Donation Plugin and Fundraising Platform
MediumCVE-2025-9305: SQL Injection in SourceCodester Online Bank Management System
MediumCVE-2025-9304: SQL Injection in SourceCodester Online Bank Management System
MediumCVE-2025-55297: CWE-120: Buffer Copy without Checking Size of Input ('Classic Buffer Overflow') in espressif esp-idf
MediumCVE-2025-53251: CWE-434 Unrestricted Upload of File with Dangerous Type in An-Themes Pin WP
CriticalActions
Updates to AI analysis are available only with a Pro account. Contact root@offseq.com for access.
External Links
Need enhanced features?
Contact root@offseq.com for Pro access with improved analysis and higher rate limits.