CVE-2026-0648

HIGH CVSS 3.1: 6,3 EPSS 0.02%
Обновлено 2 апреля 2026
Eclipse
Параметр Значение
CVSS 6,3 (HIGH)
Уязвимые версии 6.1.7 — 6.4.5
Устранено в версии 6.4.5
Тип уязвимости CWE-253, CWE-787 (Запись за пределами буфера)
Поставщик Eclipse
Публичный эксплойт Нет

Уязвимость связана с неправильной логикой проверки ошибок в функции CreateCounter() (в threadx/utility/rtos_compatibility_layers/OSEK/tx_osek.c) при обработке возвращаемого значения osek_get_counter(). В частности, текущий код проверяет, равен ли cntr_id 0u , чтобы определить сбой, но @osek_get_counter() фактически возвращает E_OS_SYS_STACK (определенный как 12U) в случае сбоя. Это несоответствие приводит к тому, что ветвь ошибок никогда не выполняется, даже если пул счетчиков исчерпан.

В результате, когда пул счетчиков исчерпан, код продолжает приводить код ошибки (12U) к указателю (OSEK_COUNTER *), создавая дикий указатель. Последующие записи в члены этого указателя приводят к записи в недопустимые адреса памяти (например, 0x0000000C), что может вызвать немедленный HardFaults или скрытое повреждение памяти. Эта уязвимость создает значительные риски, включая потенциальные атаки типа «отказ в обслуживании» (посредством повторных вызовов для исчерпания пула счетчиков) и несанкционированный доступ к памяти.

Показать оригинальное описание (EN)

The vulnerability stems from an incorrect error-checking logic in the CreateCounter() function (in threadx/utility/rtos_compatibility_layers/OSEK/tx_osek.c) when handling the return value of osek_get_counter(). Specifically, the current code checks if cntr_id equals 0u to determine failure, but @osek_get_counter() actually returns E_OS_SYS_STACK (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 (OSEK_COUNTER *), 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.

Характеристики атаки

Способ атаки
Локальный
Нужен локальный доступ
Сложность
Высокая
Сложно эксплуатировать
Нужны права
Низкие
Нужны базовые права
Участие пользователя
Не требуется
Не нужно действие пользователя

Последствия

Конфиденциальность
Высокое
Полная утечка данных
Целостность
Нет
Нет модификации данных
Доступность
Высокое
Полный отказ в обслуживании

Строка CVSS v3.1

Уязвимые продукты 1

Конфигурация От (включительно) До (исключительно)
Eclipse Threadx
cpe:2.3:a:eclipse:threadx:*:*:*:*:*:*:*:*
6.1.7 6.4.5