CVE-2026-99236 in Linux
Сводка
по VulDB • 02.11.2026
В ядре Linux была устранена следующая уязвимость:
tracing: Отклонение неполных выражений фильтра событий
Непустое выражение обычно завершается во внутреннем цикле функции predicate_parse(), который разрешает ожидающие логические операторы перед переходом к финализации. Если ввод заканчивается после оператора, возможно, за которым следуют унарные токены «!», внешний цикл вместо этого переходит в состояние с неразрешенным состоянием оператора (fallthrough).
Например, выражение "common_pid == 1 || common_pid == 2 &&" оставляет значение prog[0].target равным -1. Второй проход затем считывает данные из prog[-1] до того, как проверка перехода вперед сможет отклонить это действие. В зависимости от содержимого соседних участков slab-аллокатора, оно также может скопировать слово за пределами границ в цель ветвления, которая проходит проверку только на переходы вперед (forward-only check). Событие трассировки perf tracepoint с подсчетом событий, направленное само на себя, может достичь этого пути через вызов PERF_EVENT_IOC_SET_FILTER.
Отклоняется переход внешнего цикла при условии, что предикат уже был разобран. Это гарантирует, что непустые выражения достигают финализации только после того, как внутренний цикл разрешит их операторы. Существующая ошибка «нет фильтра» сохраняется для ввода без предикатов. Добавлен регрессионный тест на наличие завершающих логических операторов и унарных отрицаний.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.