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

Сводка

по VulDB • 30.05.2026

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

KVM: nSVM: Синхронизация тени прерывания (interrupt shadow) с кэшированным vmcb12 после выполнения VMRUN для L2

После выполнения VMRUN в режиме гостя функция nested_sync_control_from_vmcb02() синхронизирует поля, записанные процессором, из vmcb02 в кэшированный vmcb12. Это необходимо, поскольку кэшированный vmcb12 используется как авторитетная копия некоторых параметров управления и является полезной нагрузкой при сохранении/восстановлении вложенного состояния.

Поле int_state также записывается процессором, в частности бит 0 (т.е. SVM_INTERRUPT_SHADOW_MASK) для вложенных виртуальных машин, однако оно не синхронизируется с кэшированным vmcb12. Это не вызывает проблем, если в пути восстановления операция KVM_SET_NESTED_STATE предшествует KVM_SET_VCPU_EVENTS, поскольку тень прерывания будет корректно восстановлена в vmcb02 (KVM_SET_VCPU_EVENTS перезаписывает то, что KVM_SET_NESTED_STATE восстановил в int_state).

Однако, если KVM_SET_VCPU_EVENTS предшествует KVM_SET_NESTED_STATE, тень прерывания будет восстановлена в vmcb01 вместо vmcb02. Это, как правило, будет безвредно для L1 (задержка прерывания), но не для L2. Для L2 виртуальный процессор (vCPU) может зависнуть (например, если прерывание пробуждения доставляется до HLT, который должен был находиться в тени прерывания).

Синхронизируйте int_state с кэшированным vmcb12 в nested_sync_control_from_vmcb02(), чтобы избежать этой проблемы. В этом случае KVM_SET_NESTED_STATE восстановит правильное состояние тени прерывания, а если за ним последует KVM_SET_VCPU_EVENTS, оно перезапишет его тем же значением.

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

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

Linux

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

13.05.2026

Раскрытие

27.05.2026

Модерация

принято

Вход

VDB-366242

EPSS

0.00032

KEV

Нет

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

Очень низкий

Источники

Do you want to use VulDB in your project?

Use the official API to access entries easily!