science >> Wetenschap >  >> Elektronica

Het blootleggen van de grootste kwetsbaarheid voor computerchips die ooit is ontdekt

Dmitry Evtyushkin, een assistent-professor in de afdeling Computerwetenschappen van William &Mary, heeft de beveiligingsproblemen van speculatieve uitvoering bestudeerd. Krediet:Adrienne Berard

De dreiging begon rond nieuwjaar de krantenkoppen te halen. Publicaties over de hele wereld waarschuwen voor de grootste kwetsbaarheid in computerchips die ooit is ontdekt, een reeks beveiligingsfouten die van invloed zijn op elk apparaat met een microprocessor, van laptops tot smartphones.

Onderzoekers hadden ontdekt dat in een poging om computerchips efficiënter te maken, grote fabrikanten hadden per ongeluk een opening geplaatst waardoor hackers gevoelige gegevens konden bespioneren. In twee artikelen die op 3 januari werden gepubliceerd, onderzoekers bedachten de cyberbeveiligingsbedreigingen Meltdown en Spectre.

De naam Meltdown werd gekozen vanwege het vermogen van de aanval om het beveiligingssysteem te "smelten" dat doorgaans wordt afgedwongen door de hardware van een processor. De naam Spectre was gebaseerd op de hoofdoorzaak van het beveiligingslek, speculatieve uitvoering, een snelheidsverhogende techniek waarbij de processor probeert te voorspellen welk deel van de code het volgende moet worden uitgevoerd en begint met het uitvoeren ervan. En, net als een echt spook, de aanval is bijna onmogelijk te detecteren.

Tegen eind januari, hardwarebedrijven zoals Intel, ARM Holdings Plc. en Advanced Micro Devices Inc. hadden microcode-updates uitgebracht om de kwetsbaarheden aan te pakken. De bedrijven werkten ook samen met ontwikkelaars van besturingssystemen, zoals Windows en Linux, om software-updates te ontwerpen en uit te brengen. De gebreken waren fysiek, onderdeel van computerverwerkingshardware. Om het probleem volledig te elimineren, zouden miljoenen computerchips moeten worden aangepast.

In plaats daarvan, ontwikkelaars en fabrikanten kozen ervoor om hardwarefouten te verhelpen met software-updates. De updates vertraagden de prestaties en, in sommige gevallen, maakte systemen onbruikbaar, maar de gecoördineerde inspanning leek succesvol te zijn geweest in het beschermen tegen Meltdown en het verminderen van de kwetsbaarheid voor een Spectre-aanval.

De wereld ging snel verder, maar Dmitry Evtyushkin kon het niet. Hij was al jaren op de hoogte van Spectre-achtige processorfouten. In feite, zijn onderzoek had er in de eerste plaats toe bijgedragen dat ze een licht op hen hadden geworpen. en spook, zoals zijn naam, ligt daar nog steeds op de loer.

"Onderzoekers weten nog steeds niet helemaal zeker wat de echte impact van Spectre is, " zei Evtyushkin, een assistent-professor in de afdeling Computerwetenschappen van William &Mary. "Ze weten niet precies waar ze mee te maken hebben. Er zijn zoveel verschillende processors en zoveel verschillende manieren om misbruik te maken van dit type kwetsbaarheid."

Zie een Spectre-aanval als een soort sonar in een computer. Om te zien hoe de verwerking werkt, een aanvaller stuitert programma's van elkaar af en brengt op basis van die botsingen een afbeelding in kaart. De aanvaller gebruikt dan die foto, evenals andere bijwerkingen van de botsingen, om toegang te krijgen tot gevoelige gegevens in de computer.

"We hebben verschillende processen die verantwoordelijk zijn voor verschillende activiteiten, "Zei Evtyushkin. "Je kunt ze zien als je apps. Bijvoorbeeld, je hebt je e-mailclient, uw wachtwoordbeheerder, je spellen. Ze moeten allemaal geïsoleerd worden. Ze mogen elkaar niet hinderen."

in 2016, tijdens het afronden van zijn Ph.D. aan de Binghamton-universiteit, Evtyushkin en twee andere onderzoekers vonden een manier om processen tot interferentie te dwingen. hun studie, getiteld "Jump Over ASLR:de Branch Predictor aanvallen om ASLR te omzeilen, " maakte deel uit van een verzameling onderzoek waarin processorfouten werden beschreven die vergelijkbaar zijn met die in studies over Meltdown en Spectre.

"Ik ontdekte dat het mogelijk is om botsingen te creëren binnen deze meerdere domeinen, " Evtyushkin zei, "wat bijdraagt ​​aan de ontdekking van de geheugenlay-out."

Computersystemen zijn ontworpen om de geheugenlay-out van een programma extreem moeilijk te vinden te maken. Het is verborgen door een verhardingstechniek die bekend staat als Address Space Layout Randomization (ASLR). De beveiligingsmaatregel beschermt de geheugenstructuur van een programma door de posities van de belangrijkste programmacomponenten willekeurig te verdelen, waardoor het voor een aanvaller bijna onmogelijk is om de specifieke adressen te weten waar die componenten zich bevinden. De ASLR is als een combinatie van een kluis. Een aanval die door de ASLR komt, zou de volledige gegevensstructuur van een programma onthullen - elk stukje informatie dat het bevat.

Evtyushkin ontdekte dat een hacker de ASLR kon omzeilen met behulp van een centraal onderdeel van computerchiphardware. de Branchevoorspeller. De BP is geïntroduceerd om computerprocessors - of CPU's - efficiënter te laten werken door de manier waarop programma's worden uitgevoerd te stroomlijnen. Wanneer een programma wordt uitgevoerd, het wordt langs een pad gestuurd dat bekend staat als een tak. De eerste keer dat een programma wordt uitgevoerd, de processor kan het uiteindelijke doel van de branch niet achterhalen. Het is dus afhankelijk van een hardwaremechanisme, de bp, die een doel voorspelt op basis van eerder vertakkingsgedrag.

Als aanvallers toegang krijgen tot de BP, ze kunnen bepalen hoe vertakkingen door de processor worden afgehandeld en allerlei soorten botsingen veroorzaken. Een goed geïnformeerde aanvaller kan dergelijke botsingen detecteren en de op randomisatie gebaseerde bescherming omzeilen die de lay-out van een programma verbergt.

"Ik ontdekte dat veel mechanismen in de computers van vandaag worden gedeeld door verschillende programma's, "Zei Evtyushkin. "Een aanvaller kan code uitvoeren die veranderingen veroorzaakt in interne datastructuren in de hardware. Door dit te doen, ze kunnen ofwel vertakkingsinstructies in een slachtofferprogramma detecteren of een speculatieve uitvoering activeren op een manier dat het beveiligingsgevoelige gegevens begint te lekken."

In de gecontroleerde omgeving van het laboratorium, Evtyushkin en zijn team voerden een reeks aanvallen uit via de BP. In december 2016, het team publiceerde hun resultaten. Hun werk werd onderdeel van een internationale onderzoeksgroep die groot genoeg was om een ​​golf van wereldwijde media-aandacht te creëren.

"Deze ontwerpfout was er al heel lang en ik heb net een manier ontdekt om het te gebruiken, Evtyushkin zei. "Er zijn andere manieren om speculatieve executie te manipuleren, die ernstiger blijken te zijn in termen van veiligheid."

Sinds de publicatie van zijn bevindingen in 2016, Evtyushkin is doorgegaan met het onderzoeken van Branch Predictors. Zijn huidige aandachtsgebied is een ander onderdeel van het werk van de BP:programma's vertellen welke richting ze op moeten. De details van zijn onderzoek kunnen pas worden onthuld als eind maart een paper over zijn werk verschijnt. Hij zei dat Intel op de hoogte is gesteld van de gebreken die hij heeft ontdekt en het onderzoek beoordeelt voordat de paper wordt vrijgegeven.

Evtyushkin is niet optimistisch over een snelle oplossing. Hij, samen met tal van andere onderzoekers, heeft de afgelopen jaren hardwarefabrikanten verteld dat ze hun processors opnieuw moeten ontwerpen om beveiligingsfouten op te lossen. Momenteel, de bedrijven hebben een paar software-updates uitgebracht, maar de hardware is niet bijgewerkt om het probleem op te lossen. Evtyushkin zegt dat er een brede, systematische oplossing om meerdere problemen in modern hardware-ontwerp aan te pakken.

"Deze hele cultuur van het prioriteren van prestaties, in plaats van veiligheid, is de schuldige, "Zei Evtyushkin. "Er is veel concurrentie in de productie van computerhardware. Ontwikkelaars willen snellere chips maken, dus moeten ze agressieve speculatieve uitvoering toevoegen. Ze geven de veiligheidscontroles op om het snel te maken."

Aan de zonnige kant, er zijn geen incidenten van Spectre-type aanvallen bekend, maar Evtyushkin zegt dat een aanval kan plaatsvinden zonder medeweten van zelfs een slimme operator. Een Spectre-aanval kan binnenkomen via talloze verschillende wegen, zoals een website, een bestand downloaden, een mobiele telefoontoepassing of een mediaspeler. Als het eenmaal binnen is, het is onzichtbaar.

"Een van de problemen met Spectre is dat het volledig stil is, ' zei Evtyushkin. 'Je ziet niets gebeuren. Vergeleken met traditionele aanvallen, waar een applicatie meestal crasht en je de schade kunt zien, met microarchitectuuraanvallen zul je het niet zien of weten dat het is gebeurd."

Om jezelf te beschermen tegen elke vorm van aanval, Evtyushkin moedigt veilige computerpraktijken aan, zoals het niet uitvoeren van niet-vertrouwde code en het regelmatig bijwerken van uw systemen.

"Gebruikelijk, de mensen die verantwoordelijk zijn voor deze updates weten meer over kwetsbaarheden en kunnen er hopelijk iets aan doen, ' zei Evtyushkin.

Evtyushkin zegt dat zijn werk bewustzijn creëert en dat uiteindelijk de vereiste hardware-updates zullen volgen. Hij werkt momenteel met medewerkers om meer systemische beschermingsmethoden te ontwikkelen, zoals het herstructureren van speculatieve uitvoering en Branch Predictor-hardware om het veiliger te maken met behoud van hoge prestaties.

"Dit onderzoek werd vroeger als extreem geeky beschouwd, maar nu besteedt het publiek er aandacht aan, "Zei Evtyushkin. "Het helpt het probleem aan te pakken, omdat iedereen het weet. Het motiveert al deze grote bedrijven om de zaken serieuzer te nemen."