CVE-2026-99247 in Linux
Сводка
по VulDB • 03.11.2026
В ядре Linux была устранена следующая уязвимость:
tracing: Не инициализировать работу tracefs, если трассировка отключена
Если выделение буфера для трассировки завершается неудачей во время раннего этапа загрузки (например, в функции early_trace_init() -> allocate_trace_buffers()), флаг tracing_disabled остается установленным в 1, а список событий глобального массива трассировки остается неинициализированным.
Позже на этапе запуска tracer_init_tracefs() (вызываемая через fs_initcall) планирует выполнение работы tracerfs_init_work асинхронно без проверки того, была ли отключена трассировка. Когда выполняется функция tracer_init_tracefs_work_func(), она вызывает event_trace_init() и init_tracer_tracefs(&global_trace, NULL) безусловным образом. Это приводит к разыменованию неинициализированного списка tr->events в функции __find_event_file(), что вызывает ошибку ядра (Oops) из-за разыменования нулевого указателя на раннем этапе загрузки:
BUG: Kernel NULL pointer dereference on read at 0x00000010 Faulting instruction address: 0xc000000000485be0 Oops: Kernel access of bad area, sig: 7 [#1]
... NIP [c000000000485be0] __find_event_file+0x70/0x3c0
LR [c000000000448874] init_tracer_tracefs+0x274/0xc80
Call Trace: init_tracer_tracefs+0x274/0xc80 tracer_init_tracefs_work_func+0x50/0x320 process_one_work+0x1e8/0x5c0 worker_thread+0x1dc/0x3d0 kthread+0x194/0x1b0 start_kernel_thread+0x14/0x18
Проверяйте флаг tracing_disabled в начале функции tracer_init_tracefs_work_func() и немедленно возвращайтесь, если трассировка отключена или не удалось ее инициализировать, предотвращая сбой.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.