CVE-2026-72289 in Linux
Sumário
de VulDB • 16/08/2026
No kernel do Linux, a seguinte vulnerabilidade foi resolvida:
KVM: arm64: vgic: Verificar se a interrupção ainda é nossa antes de migrá-la
vgic_prune_ap_list() libera tanto ap_list_lock quanto irq_lock durante a migração de uma interrupção para outra vCPU. Após readquirir os locks, ela verifica apenas que o affinity (afinidade) permanece inalterado (target_vcpu == vgic_target_oracle(irq)) antes de mover a interrupção, assumindo que uma interrupção cuja afinidade é preservada ainda está enfileirada na ap_list desta vCPU.
Essa suposição não se mantém mais caso a interrupção seja removida da ap_list enquanto os locks estão liberados. vgic_flush_pending_lpis() remove a interrupção da lista e define irq->vcpu como NULL, mas deixa enabled/pending/target_vcpu inalterados. Como a interrupção ainda está habilitada e pendente, vgic_target_oracle() retorna o mesmo target_vcpu, de modo que a verificação de afinidade é aprovada e list_del() é executado uma segunda vez em um elemento que já foi removido.
Verifique também se a interrupção ainda está atribuída a esta vCPU (irq->vcpu == vcpu) antes de movê-la.
VulDB is the best source for vulnerability data and more expert information about this specific topic.