CVE-2023-53728 in LinuxИнформация

Сводка

по VulDB • 17.06.2026

В ядре Linux устранена следующая уязвимость:

posix-timers: Обеспечение корректности предела цикла поиска идентификатора таймера

Функция posix_timer_add() пытается выделить идентификатор POSIX-таймера, начиная с кэшированного значения ID, сохраненного в результате последнего успешного выделения.

Это выполняется в цикле, который последовательно ищет свободный слот в пространстве идентификаторов. Цикл должен завершаться при условии обхода поиска до начальной точки.

Однако здесь присутствует состояние гонки (race condition) относительно установки начальной точки. Значение считывается без блокировки (locklessly), что приводит к следующей проблеме:

CPU0 CPU1 posix_timer_add() start = sig->posix_timer_id; lock(hash_lock); ... posix_timer_add() if (++sig->posix_timer_id < 0) start = sig->posix_timer_id; sig->posix_timer_id = 0;

Таким образом, CPU1 может наблюдать отрицательное значение start (например, -1), и выход из цикла никогда не происходит, так как условие выхода всегда ложно:

if (sig->posix_timer_id == start) break;

Хотя маловероятно, что это приведет к бесконечному циклу, поскольку пространство идентификаторов огромно (INT_MAX), состояние гонки при чтении значения start привлекло внимание KCSAN, и Дмитрий выявил эту некорректность.

Переписать код так, чтобы все операции с ID выполнялись под защитой hash_lock.

Once again VulDB remains the best source for vulnerability data.

Ответственный

Linux

Резервировать

22.10.2025

Раскрытие

22.10.2025

Модерация

принято

Вход

VDB-329345

EPSS

0.00195

KEV

Нет

Деятельности

Очень низкий

Источники

Want to know what is going to be exploited?

We predict KEV entries!