Spectre en Meltdown

Virus

VirusHet heeft even niets met radio te maken, maar vanuit mijn vakgebied voel ik me toch genoodzaakt hier wat over te roepen. Voor wie onder een steen gelegen heeft: Meltdown en Spectre zijn twee kwetsbaarheden die in vrijwel alle computerprocessoren (die Linux of Windows draaien) voorkomen en die mogelijk gegevens kunnen lekken. Maar het wordt wel een beetje gehyped op dit moment.

 

 

Waar gaat het om? Het heeft alles te maken met Prefetching: het vooruitlezen van instructies zodat een processor efficiënter kan werken. Een betoog in Jip-en-Janneketaal vind je HIER . Lees dat eerst even door om een goed beeld te krijgen van wat het probleem is.

Het verschil met traditionele kwetsbaarheden is dat die altijd wel te patchen (achteraf te herstellen) waren. Deze kwetsbaarheid, het Prefetchen van instructies, is een stuk lastiger te bestrijden omdat deze inherent is aan de manier waarop processoren gebouwd zijn. Dat is alleen te repareren door de structuur van een microprocessor te wijzigen, en om te beginnen gaat dat nog vele maanden zoniet jaren duren, en dan nog zijn de oude processoren die nu in omloop zijn echt niet over twee jaar weg. Het probleem blijft dus nog wel even, en de software oplossingen die nu bedacht worden, kunnen de processor potentieel trager maken. En als je een serverfarm hebt die op 90% van zijn capaciteit draait (waarbij je dan in mijn opinie een dramatisch gebrek aan capacity planning etaleert, maar dat is mijn mening…) en de processor wordt 20% trager, dan heb je een dik probleem.

Maar goed. Je hebt het probleem gelezen ga ik even vanuit. Naar mijn mening gaat die vergelijking op een paar punten mank, maar misschien moet je metaforen niet fileren. In het voorbeeld wordt geschetst dat in een stuk geheugen ergens een advertentie staat, en in een ander stuk geheugen een password/WiFi code. En daar gaat het verhaal mis. In een ander stuk geheugen staat inderdaad andere data, maar hoe weet je dat dat een wachtwoord is? Dat weet je niet. Via een Side Channel Attack (wat dit is) kan je dus andere delen van het geheugen lezen, die niet van jou zijn. Wat voor data dat is, heb je geen idee van. Het is alsof je vanaf een harde schijf willekeurige stukjes data leest (records). Leef je uit om daar een Word document van te maken, maar ik geef je weinig kans.

Daarnaast moet je je realiseren dat als je met twee gebruikers gebruik maakt van hetzelfde systeem, dat de data die niet van jou is, automatisch van die ander is. Maar bij een multi-user systeem (bij een hosting provider kunnen er tientallen servers op eenzelfde systeem draaien) moet je ook nog maar weten van wie de data is die je bij elkaar gegokt hebt volgens dit systeem. 

Kortom: Ja, er is een mogelijkheid om data van andere gebruikers op een systeem te lezen, en dat is nooit goed. Daar moet ook echt wel wat aan gedaan worden. Maar liggen nu meteen al je foto's, documenten en wachtwoorden op straat zoals diverse media suggereren? Welnee. Daarvoor moet je van één bepaalde andere gebruiker op het systeem sequentieel (in volgorde) relatief veel data kopiëren en dan ook nog vast kunnen stellen waar het begin en eind zit, en wat het dan voor data is. De soep wordt dus niet zo heet gegeten als hij wordt opgediend. Het risico dat op deze manier een wachtwoord of persoonlijke informatie achterhaald wordt, is heel erg klein. Maar niet nul, en dat willen we natuurlijk graag met zijn allen. Reden tot paniek is er dus zeer zeker niet.