Intel ha rilasciato l’aggiornamento del microcodice per diversi processori che risolve una vulnerabilità scoperta dai ricercatori di Google. Come spiegato in dettaglio da Tavis Ormandy, Reptar causa un comportamento inatteso delle CPU dovuto all’errata interpretazione dei prefissi ridondanti presenti nelle istruzioni in linguaggio assembly x86.
Reptar: pericolo per PC e server
Una delle istruzioni assembly più utilizzate è MOVSB
. Permette di spostare un dato a 8 bit da un indirizzo di memoria ad un altro. Aggiungendo il prefisso REP
si indica che l’operazione deve essere ripetuta più volte. Se viene aggiunto un prefisso ridondante o inutile, i processori x86 lo ignoreranno.
Il prefisso REX
incrementa lo spazio disponibile per la decodifica degli operandi. Tuttavia l’istruzione MOVSB
non ha nessun operando, quindi il prefisso REX
dovrebbe essere ignorato. In realtà ciò non accade per i processori Intel che supportano la funzionalità FSRM (Fast Short Repeat Move) che velocizza lo spostamento dei dati in memoria.
Se viene aggiunto il prefisso REX
all’istruzione REP MOVSB
, i processori Intel a partire da quelli basati sull’architettura Ice Lake (decima generazione) iniziano a manifestare uno strano comportamento. Le conseguenze sono visibili con blocchi o crash del sistema, ma la vulnerabilità può essere sfruttata anche per ottenere privilegi elevati o accedere ad informazioni sensibili.
Google scrive che un malintenzionato potrebbe colpire una macchina guest in un ambiente virtualizzato e causare il crash della macchina host. Ciò comporterebbe un DoS (Denial of Service) per le altre macchine guest in esecuzione sullo stesso host. Intel sottolinea però che dovrebbe essere eseguito un codice arbitrario con il suddetto prefisso ridondante.
Il problema non rappresenta un reale pericolo per gli utenti consumer, ma è sempre meglio installare il nuovo microcodice dei processori Intel tramite aggiornamento del BIOS e del sistema operativo.