Intel-cpu’s opnieuw kwetsbaar: CacheOut

Processors van Intel worden getroffen door een nieuwe bug die speculative execution misbruikt om gevoelige data uit het cachegeheugen te stelen. Vooral in datacenters is misbruik een optie.

CacheOut: zo heet de nieuwe bug die Intel-cpu’s treft. De naam verklapt al wat ongure elementen met het lek kunnen bewerkstelligen: CacheOut laat hackers toe om de cpu te misleiden en zo data uit het cachegeheugen te halen. Het kan daarbij gaan om gevoelige gegevens die elders is het systeem versleuteld zijn, maar in de processorcache wel leesbaar zijn. Denk bijvoorbeeld aan wachtwoorden.

De kwetsbaarheid maakt deel uit van dezelfde familie als Spectre en Meltdown. Dat wil zeggen dat speculatieve uitvoering misbruikt wordt. Bij speculatieve uitvoering voert een processor instructies uit voor zeker is dat die nodig zijn. Vraagt een eerdere instructie om een reeds speculatief uitgevoerde instructie, dan boekt de cpu een enorme prestatiewinst. Speculatieve uitvoering is vandaag erg geavanceerd, kiest doorgaans de juiste instructies om vooraf uit te voeren, en is essentieel voor een processor om de snelheden te halen die we vandaag verwachten.

Cachegeheugen lezen

Hackers kunnen Speculatieve uitvoering in sommige gevallen echter misbruiken om het cachegeheugen op de processor te manipuleren. Dat maakt het mogelijk om te deduceren wat andere programma’s en instructies in dat cachegeheugen hebben gestopt. Data in de cache wordt gebruikt door de processor om rekenwerk uit te voeren, en is niet meer versleuteld. Dat was geen probleem in het tijdperk voor Spectre en Meltdown, aangezien algemeen werd aangenomen dat het geheugen en de manier van werken waterdicht waren.

CacheOut werkt ondanks eerdere pogingen van Intel om kwetsbaarheden te mitigeren. Bovendien kan een hacker de aanval inzetten om gericht data uit het cache-geheugen te stelen. Dat is nieuw: vorige hacks die gebruik maakten van speculatieve executie konden enkel willekeurige data stelen, wat het moeilijker maakte om in de praktijk aan gevoelige info te raken. Intel detailleert de impact van CacheOut op zijn website, waar het ook gewag maakt van een tweede, minder ernstige kwetsbaarheid. Een firmware-update komt eraan, al blijft mitigatie noodzakelijk. De kern van het probleem zit immers op hardware-niveau.

KU Leuven

CacheOut werd ontdekt door onderzoekers van de universiteiten van Michigan en Adelaide en kreeg de referentie CVE-2020-0549 mee. Onafhankelijk van dat team ontdekten ook onderzoekers van de TU Graz en de KU Leuven het probleem. De nieuwe aanval richt zich specifiek op L1-cache en leest die uit voor de eerdere oplossingen van Intel in het spel komen. Ook data uit zogenaamde SGX-enclaves is kwetsbaar. Vrijwel alle Intel-processors zijn kwetsbaar, behalve de meest recente modellen. Intel publiceerde zelf een lijst met de getroffen producten. Zowel chips uit de Core-familie als uit de Xeon-line-up bevatten de bug.

De aanval uitbuiten blijft moeilijk maar niet onmogelijk. Een aanvaller kan CacheOut bijvoorbeeld gebruiken in een datacenter om gegevens te lezen van virtuele machines van derden die toevallig op dezelfde fysieke processor draaien. Gezien de complexiteit van de problemen zal het vermoedelijk niet de laatste keer zijn dat Intel-chips kwetsbaar blijken voor een nieuwe aanval.

Lees ook: De vloek van Spectre: waarom blijft het jou en Intel achtervolgen? In dat stuk leggen we uit wat speculatieve uitvoering precies is, en waarom Intel het slachtoffer blijft worden van nieuwe lekken die er misbruik ban maken.