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

Сводка

по VulDB • 19.10.2026

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

KVM: arm64: nv: исправлена ошибка разыменования нулевого указателя (null ptr deref) при вложенной защите от записи/отображении и гонке процессов teardown.

Коммит 7270cc9157f4 ("KVM: arm64: nv: Handle VNCR_EL2 invalidation from MMU notifiers") добавил инвалидацию VNCR_EL2 как в функции kvm_nested_s2_unmap(), так и в kvm_nested_s2_wp().

Однако на момент выполнения этой операции одновременный teardown (разбор/освобождение) stage 2 для гостевой машины с поддержкой виртуализации второго уровня может привести к тому, что поле kvm->arch.mmu.pgt будет установлено в NULL.

Это происходит в функции kvm_flush_shadow_all() -> kvm_arch_flush_shadow_all() -> kvm_free_stage2_pgd(), и выполняется под блокировкой kvm->mmu_lock.

Коммит ec14c272408a ("KVM: arm64: nv: Unmap/flush shadow stage 2 page tables") добавил teardown всего диапазона вложенного MMU, что затем вызывает функцию stage2_apply_range() с параметром resched=true:

mmu_notifier_invalidate_range_start() -> ... -> kvm_mmu_notifier_invalidate_range_start() -> kvm_mmu_unmap_gfn_range() -> kvm_unmap_gfn_range() -> kvm_nested_s2_unmap() -> kvm_stage2_unmap_range() -> __unmap_stage2_range() -> stage2_apply_range()

Это означает, что функция stage2_apply_range() может снять блокировку kvm->mmu_lock, и таким образом одновременное выполнение процессов может происходить параллельно с выполнением функции kvm_arch_flush_shadow_all().

Если функция kvm_arch_flush_shadow_all() опередит функцию stage2_apply_range() и завершит свою работу, это гарантирует разыменование нулевого указателя (NULL pointer deref).

Поскольку вызов kvm_free_stage2_pgd() выполняется под блокировкой kvm->mmu_lock, значение будет либо явно NULL, либо синхронизировано с вызовом kvm_free_stage2_pgd().

Для устранения проблемы инвалидация была выделена в новую функцию kvm_invalidate_vncr_ipa_all(), и перед разыменованием проверяется, что указатель pgt не равен NULL.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

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

Linux

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

25.09.2026

Раскрытие

18.10.2026

Модерация

принято

Вход

VDB-422119

EPSS

0.00000

KEV

Нет

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

Очень низкий

Источники

Want to know what is going to be exploited?

We predict KEV entries!