Retpoline arriva su Windows 10, protezione da Spectre e migliori prestazioni

KB4482887 abilita la mitigazione Retpoline messa a punto da Google contro la vulnerabilità Spectre v2 nel kernel di Windows 10 1809.

Avatar di Manolo De Agostini

a cura di Manolo De Agostini

Con l'ultimo aggiornamento di Windows 10, descritto nel bollettino KB4482887 e scaricabile da Windows Update, Microsoft porta la tecnica di mitigazione Retpoline contro la falla Spectre v2 su Windows 10 1809, attuale versione del sistema operativo - nota anche come October 2018 Update.

Spectre v2, per chi non lo ricordasse, è la vulnerabilità che colpisce i microprocessori (emersa pubblicamente a inizio 2018) che usano l'esecuzione speculativa (tutte le CPU moderne) e la branch prediction indiretta, e che consente a un malintenzionato di ottenere informazioni tramite accesso utente locale mediante l’analisi di un side channel.

Come riportato qualche mese fa, Microsoft stava lavorando con l'obiettivo di integrarla nell'aggiornamento che sarà distribuito questo aprile, ma ora la casa di Redmond ci fa sapere di aver eseguito il "backporting" delle modifiche al sistema operativo necessarie per supportare Retpoline sull'attuale release che molti di noi hanno installato sul PC.

Perché questo cambiamento è così importante? La tecnica Retpoline messa a punto da Google impatta meno sulle prestazioni rispetto alle altre soluzioni sviluppate da Intel e Microsoft. Retpoline ha trovato ampia diffusione in ambito Linux, ma finora non aveva ancora trovato casa nel cuore di Windows.

Lo scorso dicembre Microsoft spiegava che con Retpoline aveva misurato "un incremento del tempo di avvio di Office del 25% e un throughput migliorato fino a 1,5-2 volte nei benchmark Diskspd (storage) e NTttcp (networking) sulle piattaforme con CPU Broadwell nei nostri laboratori".

In realtà l'impatto delle mitigazioni per Spectre e Meltdown sui computer tradizionali è difficilmente notabile nella stragrande maggioranza delle operazioni quotidiane, mentre diversa è la situazione in ambito server con operazioni specifiche in cui anche lo storage è coinvolto.

AMD ha promesso che l'architettura Zen 2 delle CPU in arrivo quest'anno implementerà una mitigazione per Spectre in hardware. Intel, dal canto suo, farà la stessa cosa con le CPU Cascade Lake per l'ambito server. Nella seguente tabella la situazione delle patch e le intenzioni della casa di Santa Clara:

Falla Whiskey Lake e Core 9a gen desktop (Coffee Lake Refresh) Amber Lake Core X 9a gen (Skylake Refresh) Mitigazioni Cascade Lake
Variant 1 (Spectre) Sistema operativo Sistema operativo / VMM Sistema operativo / VMM Sistema operativo / VMM
Variant 2 (Spectre) Microcode + Sistema operativo Microcode + Sistema operativo Microcode + Sistema operativo Hardware + Sistema operativo / VMM
Variant 3 (Meltdown) Hardware Microcode Microcode Hardware
Variant 3a Microcode + Sistema operativo Microcode Microcode Firmware
Variant 4 Microcode + Sistema operativo Microcode + Sistema operativo Microcode + Sistema operativo Microcode + Sistema operativo / VMM
L1TF (Foreshadow) Hardware Microcode Microcode + Sistema operativo Hardware

Per i più curiosi e preparati, segnaliamo un post sul blog di Microsoft, raggiungibile qui, in cui è possibile leggere in cosa consiste l'implementazione tecnica della mitigazione Retpoline in Windows 10.