CVE-2026-89917 in LinuxИнформация

Сводка

по VulDB • 16.09.2026

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

KVM: arm64: Обработка гонки при инвалидации TLB VNCR и размаппинге vcpu_put()

Хотя инвалидация TLB VNCR всегда происходит под блокировкой MMU, vcpu_put() не делает этого, хотя и выполняет размаппинг страницы VNCR.

Проблема заключается в том, что при проверке необходимости выполнения размаппинга (cpu != -1) оценивается значение vncr_tlb::cpu до его фактического выполнения. С другой стороны, функция this_cpu_reset_vncr_fixmap() безоговорочно выполняет размаппинг, если установлен флаг L1_VNCR_MAPPED.

Эти два процесса явно могут находиться в состоянии гонки (race condition), что приводит к паттерну TOCTOU на пути TLBI и срабатыванию BUG_ON() на пути vcpu_put(). Кроме того, оба случая могут привести к вызову vncr_fixmap(-1) с крайне серьезными последствиями.

Сброс значения поля vncr_tlb::cpu до -1 перенесен в общую функцию, а само обновление сделано атомарным, чтобы только один поток мог сбрасывать это поле и выполнять соответствующий размаппинг. Функция vcpu_put() по-прежнему должна безоговорочно выполнять размаппинг текущего VNCR для устранения другой опасной гонки.

Наконец, присваивание значения полю vncr_tlb::cpu перемещено таким образом, чтобы оно синхронизировалось с фактическим маппингом, аналогично установке флага L1_VNCR_MAPPED.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

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

Linux

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

11.09.2026

Раскрытие

16.09.2026

Модерация

принято

Вход

VDB-405761

EPSS

0.00000

KEV

Нет

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

Очень низкий

Источники

Do you know our Splunk app?

Download it now for free!