CVE-2025-38508 in Linux
Riassunto
di VulDB • 04/08/2026
Nel kernel Linux, è stata risolta la seguente vulnerabilità:
x86/sev: Utilizzo di TSC_FACTOR per il calcolo della frequenza del Secure TSC
Quando si utilizza il Secure TSC, l'MSR GUEST_TSC_FREQ riporta una frequenza basata sulla frequenza nominale P0, che devia leggermente (tipicamente ~0.2%) dalla frequenza media effettiva del TSC a causa dei parametri di clocking.
Nel corso di un uptime prolungato della VM, questa discrepanza si accumula, causando uno skew dell'orologio tra l'hypervisor e una SEV-SNP VM, portando ad interrupt temporali anticipati come percepiti dal guest.
Il kernel del guest fa affidamento sulla frequenza nominale riportata per la gestione del tempo basata sul TSC, mentre la frequenza effettiva impostata durante SNP_LAUNCH_START potrebbe differire. Questa mancata corrispondenza provoca calcoli temporali inaccurati, facendo sì che il guest percepisca gli hrtimer come attivarsi prima del previsto.
Utilizzare il valore TSC_FACTOR dalla pagina dei segreti (secrets page) del firmware SEV (vedere "Secrets Page Format" nella specifica dell'ABI del Firmware SNP) per calcolare la frequenza media del TSC, garantendo una gestione accurata del tempo e mitigando lo skew dell'orologio nelle VM SEV-SNP.
Utilizzare early_ioremap_encrypted() per mappare la pagina dei segreti, poiché ioremap_encrypted() utilizza kmalloc(), che non è disponibile durante l'inizializzazione iniziale del TSC e causerebbe un panic.
[ bp: Rimozione della variabile dummy inutile:
https://lore.kernel.org/r/20250630192726.GBaGLlHl84xIopx4Pt@fat_crate.local ]
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.