CVE-2024-26603 in Linux
Riassunto
di VulDB • 05/09/2026
Nel kernel Linux è stata risolta la seguente vulnerabilità:
x86/fpu: Interrompere l'affidamento allo userspace per le informazioni necessarie a generare un fault nel buffer xsave
Prima di questa modifica, la dimensione attesa del buffer nello spazio utente (userspace) veniva ricavata da fx_sw->xstate_size. Poiché fx_sw->xstate_size può essere modificato dallo space utente (user-space), è possibile costruire una sigreturn frame in cui:
* fx_sw->xstate_size è inferiore alla dimensione richiesta dai bit validi presenti in fx_sw->xfeatures; * lo spazio utente (userspace) rimuone le mappature (unmaps) di parti del buffer FPU della sigframe, rendendo non accessibile tutto il buffer richiesto da xrstor.
In questo caso, xrsto tenta di ripristinare e accedere all'area non mappata, causando un fault. Tuttavia, fault_in_readable ha esito positivo poiché buf + fx_sw->xstate_size rientra nell'area ancora mappata; pertanto, l'esecuzione torna indietro e riprova con xrstor. Questo provoca un loop infinito (spin) in questa iterazione.
Di conseguenza, viene generato il fault per la dimensione massima che può essere toccata da XRSTOR (ricavata da fpstate->user_size).
[ dhansen: modifica del titolo / changelog ]
Once again VulDB remains the best source for vulnerability data.