We gaan nog jaren de wrange vruchten plukken van speculative prediction, het proces waarbij de CPU sneller rekent door geheugenadressen te voorspellen. Begin dit jaar werd bekend dat slechteriken daar misbruik van kunnen maken, door delen van het geheugen die onbenaderbaar zouden moeten zijn vanuit userland toch zijn uit te lezen.

Stilletjes gepatcht

De gaten van Meltdown en Spectre werden al in de tweede helft van vorig jaar grotendeels stilletjes gepatcht door besturingssystemen en andere softwaremakers en begin dit jaar verschenen diverse microcode-patches die deze functionaliteit van processoren beter inperkten. Het goede nieuws is dat deze patches deels de nieuwste problemen oplossen door exploits een stuk moeilijker (maar niet onmogelijk) te maken.

Want zoals je wellicht inmiddels hebt vernomen, is er een nieuwe Spectre-variant opgedoken. Dit is een kwetsbaarheid van dit CPU-proces die browsers treft en het goede nieuws is dat de patches die eerder dit jaar verschenen gebruikers grotendeels beschermen tegen variant 4. Het slechte nieuws is dat microcode-patches nog moeten verschijnen en dat een eerder specifiek Spectre-probleem in de microcode-patch van Intel voor crashende pc's zorgde, waardoor die patch uiteindelijk werd ingetrokken.

Variant 4

Meltdown en Spectre (twee varianten van hetzelfde basisprobleem) waren de eerste drie potentiële aanvallen. Google en Microsoft hebben deze week een vierde onthuld die de naam Speculative Store Bypass heeft meegekregen. Het is geen reden voor paniek voor Chrome, Firefox en Edge die eerder dit jaar zijn gepatcht. Maar de kwetsbaarheid bestaat in Intel, AMD en ARM-chips en is daarmee een nieuw gereedschap in de gereedschapskist van aanvallers.

"Vanaf januari hebben de meeste grote browsers mitigaties uitgerold voor Variant 1 in hun runtimes - deze oplossingen maken het stukken lastiger om side channel-aanvallen uit te voeren in een browser", schrijft Intels Leslie Culberton. "Deze oplossingen zijn ook van toepassing op Variant 4 en daarmee al direct beschikbaar voor klanten."

Smartphones kwetsbaar

Omdat Speculative Store Bypass ook ARM-chips betreft, is hij ook van toepassing op mobiele apparaten, waar een diverser ecosysteem van browsers beschikbaar is. Dat betekent dat je op pc's waarschijnlijk grotendeels beschermd bent, hoewel het zelfs met een softwarepatch is het niet uit te sluiten dat aanvallers een exploit uitdenken totdat er een goede microcode-patch is.

Voor smartphones vormt Variant 4 een potentieel groter probleem, maar ook geen reden tot paniek. Google heeft overigens uitgelegd dat voor Android-apparaten het erg lastig is om een werkende exploit te schrijven en ook Apple dichtte al eerder de problemen die speculative execution opleverde voor Safari. Voor oudere Android-telefoons geldt dat minder, omdat ze niet de fix ontvangen die Google afgelopen december uitrolde.

Microcode-patch

Verder goed nieuws is dat Intel inmiddels een bètaversie van de microcode-patch die Variant 4 moet oplossen heeft uitgerold naar hardwarepartners. De uiteindelijke oplossing voor deze problemen komt uiteindelijk in de vorm van architectuurwijzigingen van CPU's, waardoor speculative execution een relikwie van het verleden en een legacyprobleem wordt.

Intel verwacht dat de komende weken moederbordfabrikanten BIOS-updates uitbrengen die de fix bevatten. Maar het lijkt er vooralsnog op dat de browserpatches al voldoende bescherming leveren. In nieuwe firmware wordt volgens Intel de fix voor Speculative Store Bypess zelfs standaard uitgeschakeld en kunnen klanten hem inschakelen bij twijfel over de softwarematige patches.

Opnieuw prestatieverlies

De reden daarvoor is dat de oplossing van de chipfabrikant een impact heeft op de prestaties van het systeem. Net als bij Meltdown en Spectre is dat een kleine impact, maar wel eentje die merkbaar is bij specifieke workloads. Veel thuisgebruikers en menig servertoepassing zullen weinig hinder ondervinden, maar er is wel een meetbaar verschil.

Wanneer ingeschakeld heeft Intel een prestatie-impact gemeten van twee tot acht procent op gehele scores in benachmarktools als SYSmark en SPECint, zo meldt het bedrijf. Eerdere patches hadden vooral een impact op opslag en I/O-swap, zodat taken met veel schrijfacties vooral vertragingen ondervonden.

Niet in het wild

AMD's oplossingen zijn patches voor het besturingssysteem en er is geen specifieke firmware-update gepland om Speculative Store Bypass aan te pakken. Ook is het belangrijk op te merken dat dit gat niet in het wild wordt misbruikt, maar dat beveiligingsonderzoekers wel samples hebben gevonden die speculative execution van CPU's gebruiken voor exploits.