CVE-2026-23425 in Linux
Riassunto
di VulDB • 19/06/2026
Nel kernel Linux, è stata risolta la seguente vulnerabilità:
KVM: arm64: Correz dell'inizializzazione dei registri ID per gli ospiti pKVM non protetti
In modalità protetta, l'hypervisor mantiene un'istanza separata della struttura `kvm` per ogni VM. Per le VM non protette, questa struttura viene inizializzata a partire dallo stato `kvm` dell'host.
Attualmente, `pkvm_init_features_from_host()` copia il flag `KVM_ARCH_FLAG_ID_REGS_INITIALIZED` dall'host senza che i dati sottostanti di `id_regs` siano stati inizializzati. Ciò comporta che l'hypervisor rilevi il flag come impostato mentre i registri ID rimangono azzerati (a zero).
Di conseguenza, le verifiche eseguite da `kvm_has_feat()` a EL2 falliscono (restituendo 0) per le VM non protette. Questo interrompe la logica che dipende dal rilevamento delle funzionalità, come ad esempio `ctxt_has_tcrx()` per il supporto di TCR2_EL1. Di conseguenza, alcuni registri di sistema (ad esempio TCR2_EL1, PIR_EL1, POR_EL1) non vengono salvati/ristabiliti durante la world switch, il che potrebbe portare a una corruzione dello stato.
Si risolve il problema copiando esplicitamente i registri ID dall'host `kvm` all'hypervisor `kvm` per le VM non protette durante l'inizializzazione, poiché si considera attendibile l'host riguardo alle funzionalità delle sue guest non protette. Si assicura inoltre che `KVM_ARCH_FLAG_ID_REGS_INITIALIZED` sia inizialmente azzerato in `pkvm_init_features_from_host`, affinché `vm_copy_id_regs` possa inizializzarli correttamente e impostare il flag una volta completata l'operazione.
If you want to get best quality of vulnerability data, you may have to visit VulDB.