Le vulnerabilità Spectre e Meltdown hanno creato un po’ di problemi tra i clienti di Intel, soprattutto quelli Enterprise, sia perché sono comparse come un fulmine a ciel sereno, sia perché le patch hanno intaccato le prestazioni e l'affidabilità – più o meno marcatamente, a seconda dei contesti – delle CPU della casa di Santa Clara.

La vulnerabilità Foreshadow, recentemente emersa (E probabilmente non sarà l’ultima), risulta più ostica da combattere, in quanto si richiede una pesante revisione software ed hardware. A subirne in particolare gli effetti saranno coloro che utilizzano le CPU Intel per far girare sistemi virtualizzati (Cloud Computing compreso), come ad esempio Microsoft (Azure), Dropbox, Cloudflare o Google. Come viene specificato dalle varie documentazioni ufficiali, per essere sicuri che Foreshadow non sia un pericolo costante (Le mitigazioni software potrebbero non essere sicure al 100%), si renderebbe necessaria la disabilitazione dell’HyperThreading (SMT): “Turning off hyper-threading is necessary to protect virtual machines from attack via Foreshadow”.

Una vera sfortuna per chi sfrutta software dedicati alla virtualizzazione (Virtual Machine) ed al Cloud Computing, in quanto la disabilitazione dell’SMT porta ad un calo prestazionale attorno al 25%, in media. Anche per questo, nelle ultime ore, Intel è salita agli onori della cronaca, in quanto con una comunicato ufficiale faceva divieto agli sviluppatori ed ai clienti Enterprise di effettuare Benchmark, e poi di pubblicarli, con i sistemi aggiornati con le ultime patch (Nell’Unione Europea, fortunatamente, queste restrizioni sono illegali).

La cosa ha sollevato un tale polverone – a ragione – ed Intel ha dovuto fare marcia indietro, tornando sui propri passi. Ora si possono pubblicare i risultati dei benchmark.

Va ricordato, infine, che attualmente le vulnerabilità Foreshadow sono state riprodotte solo sulle CPU Intel, e che le CPU AMD basate su uArch Ryzen ne sembrerebbero immuni. Anche per questo, probabilmente, Intel ha pensato di vietare la pubblicazione di benchmark comparativi. Secondo le ultime prove (Phoronix), Foreshadow fa perdere circa il 10% di prestazioni, con picchi del 50% disabilitando l'SMT, nel caso si lavori su sistemi virtualizzati.
Il fix alla Cache L1 (Da lì parte l’exploit) impatta tra lo 0% ed 5% (A seconda del task), con picchi del 25% per i sottosistemi di storage. La cosa ha impatto sui context-switch (I/O in primis, ma non solo), anche e soprattutto con software multithreaded.

Se poi non viene utilizzato microcodice aggiornato, le prestazioni possono anche dimezzarsi o peggio.

Nel complesso, comunque, in ambito consumer le penalità dovrebbero essere limitatissime, al pari di quanto visto con Spectre e Meltdown, ma un punto percentuale qui, un punto percentuale lì, sarà interessante fare un confronto prestazionale tra un sistema Pre-Spectre/Meltdown ed un sistema Post-Foreshadow. Anche in ambito videoludico. Probabilmente i risultati potrebbero essere interessanti.