
Intels chipgat is een virtualisatie-nachtmerrie
Net terug van de jaarwisseling? Het jaar in IT begint ellendig.
2018 begint slecht voor Intel na de onthulling van een ontwerpfout in de processors, genaamd Meltdown. Hoewel het bedrijf heeft aangekondigd dat consumenten geen last zullen hebben, zijn zij niet degenen die zich in de eerste plaats zorgen moeten maken.

Intels chipgat is een virtualisatie-nachtmerrie
2018 begint slecht voor Intel na de onthulling van een ontwerpfout in de processors, genaamd Meltdown. Hoewel het bedrijf heeft aangekondigd dat consumenten geen last zullen hebben, zijn zij niet degenen die zich in de eerste plaats zorgen moeten maken.
Het issue draait om de manier waarop CPU's page tables van virtueel geheugen aanspreken. Door een ontwerpfout kan vanuit applicaties de inhoud van geheugen met de hoogste rechten worden uitgelezen. De techniek die daarvoor wordt gebruikt is een soort parallellisatiemethode die speculative execution wordt genoemd.
Hoe de aanval werkt
Dat is onderdeel van een dynamische uitvoermethode (OOE) waar de CPU een geïnformeerde gokpoging doet van waar in het geheugen de volgende opdracht wordt uitgevoerd. Het idee daarvan is dat de verwerking van een proces wordt versneld zonder dat er aanvullende CPU-tikken verloren gaan. Het is dus eigenlijk een techniek om de Von Neumann-bottleneck beter te pareren.
Intel belooft nu patches voor hardware van de afgelopen vijf jaar uit te brengen, maar het probleem kan dateren van de tijd dat er werd overgestapt op 64-bit in 2006 met de Penryn/Merom-chips. Intel hoorde voor het eerst van het issue in juni 2017 van onderzoekers bij Google. Die deden er verder het zwijgen toe totdat Intel en OS-leveranciers een oplossing hadden. Inmiddels zijn de bevindingen gepubliceerd (PDF).
De oplossing
Er zijn in totaal drie varianten van hetzelfde basisprobleem en ze kunnen alle drie worden opgelost, maar een patch kan alleen toegepast worden op het besturingssysteem. De fouten zitten ingebakken in het silicium: je kunt ze niet upgraden en geen BIOS-update repareert de architectuurfout. Alleen een OS-fix kan soelaas bieden.
De Linux-kernel heeft een oplossing en de fixes rollen uit naar diverse distro's, terwijl Microsoft het deze week uitrolde voor Windows 10-machines en aanstaande dinsdag naar de rest van de nog ondersteunde Windows-systemen. Maar dat is dus een stoplap. De echte oplossing ligt in het herontwerpen van de CPU's.
Vertraging chiproadmap
Hoe lang dat duurt, is een punt van discussie. Volgens Jim McGregor van Tirias Research zorgt een herontwerp van een vertraging van zes tot negen maanden op de roadmap van Intel. Nathan Brookwood van Insight64 rekent zelfs op twee tot vier jaar. Intel werd in juni 2017 geïnformeerd, maar het is niet duidelijk of er wijzigingen zijn aangebracht in de planning destijds voor 2018.
Normaal gesproken delen de kernel en applicaties adressen in het geheugen om prestaties te verbeteren als een app OS-calls maakt. Ze moeten schakelen tussen page tables als een app de kernel aanspreekt en data ophaalt. Kerneldata zou onzichtbaar moeten zijn, maar door deze techniek kan de software kernelinformatie achterhalen.
Oplossing zorgt voor vertraging
De oplossing is het aanbrengen van een strikte scheiding in de geheugenruimte die door de kernel wordt aangesproken en de adressen waar applicaties gebruik van kunnen maken. Het gevolg daarvan is een hogere overhead voor elke OS-call van software. De kerneldata moet steeds worden ingeladen, terwijl app-data uitlaadt en andersom voor elke call.
Hierna: Wat merk je hiervan en hoe zit het met AMD?
Reageer
Preview