CVE-2026-0648: High severity Eclipse ThreadX vulnerability
The vulnerability stems from an incorrect error-checking logic in the CreateCounter() function (in threadx/utility/rtoscompatibilitylayers/OSEK/txosek.c) when handling the return value of osekgetcounter(). Specifically, the current code checks if cntrid equals 0u to determine failure, but @osekgetcounter() actually returns EOSSYSSTACK (defined as 12U) when it fails. This mismatch causes the error branch to never execute even when the counter pool is exhausted.
As a result, when the counter pool is depleted, the code proceeds to cast the error code (12U) to a pointer (OSEKCOUNTER ), creating a wild pointer. Subsequent writes to members of this pointer lead to writes to illegal memory addresses (e.g., 0x0000000C), which can trigger immediate HardFaults or silent memory corruption.
This vulnerability poses significant risks, including potential denial-of-service attacks (via repeated calls to exhaust the counter pool) and unauthorized memory access.
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2026-0648?
CVE-2026-0648 is classified as a medium severity vulnerability due to its potential impact on the reliability of the ThreadX operating system.
How do I fix CVE-2026-0648?
To address CVE-2026-0648, update to a fixed version of Eclipse ThreadX that is above 6.4.5 or follow the recommended patching steps in the advisory.
What versions are affected by CVE-2026-0648?
CVE-2026-0648 affects the Eclipse ThreadX versions from 6.1.7 up to 6.4.5.
What functionality does CVE-2026-0648 impact?
CVE-2026-0648 primarily impacts the CreateCounter() function in ThreadX, which may lead to improper error handling.
Is CVE-2026-0648 exploitable remotely?
CVE-2026-0648 is not known to be remotely exploitable as it requires local access to the affected software.