science >> Wetenschap >  >> Elektronica

DAWG-systeem is bedoeld om aanvallen te voorkomen die mogelijk zijn gemaakt door Meltdown en Spectre

Krediet:CC0 Publiek Domein

In januari werd de technologiewereld opgeschrikt door de ontdekking van Meltdown en Spectre, twee grote beveiligingsproblemen in de processors die op vrijwel elke computer ter wereld te vinden zijn.

Misschien wel het meest verontrustende aan deze kwetsbaarheden is dat ze niet het gevolg waren van normale softwarefouten of fysieke CPU-problemen. In plaats daarvan, ze kwamen voort uit de architectuur van de processors zelf - dat wil zeggen, de miljoenen transistors die samenwerken om operaties uit te voeren.

"Deze aanvallen hebben ons begrip van wat betrouwbaar is in een systeem fundamenteel veranderd. en ons dwingen om opnieuw te onderzoeken waar we beveiligingsmiddelen inzetten, " zegt Ilia Lebedev, een doctoraat student aan MIT's Computer Science and Artificial Intelligence Laboratory (CSAIL). "Ze hebben laten zien dat we veel meer aandacht moeten besteden aan de microarchitectuur van systemen."

Lebedev en zijn collega's geloven dat ze een belangrijke nieuwe doorbraak hebben gemaakt op dit gebied, met een aanpak die het voor hackers veel moeilijker maakt om dergelijke kwetsbaarheden te verzilveren. Hun methode zou onmiddellijke toepassingen kunnen hebben in cloud computing, vooral voor gebieden zoals geneeskunde en financiën die momenteel hun cloudgebaseerde functies beperken vanwege beveiligingsproblemen.

Met Kernsmelting en Spectre, hackers maakten misbruik van het feit dat bewerkingen allemaal een iets andere hoeveelheid tijd nodig hebben om uit te voeren. Om een ​​vereenvoudigd voorbeeld te gebruiken, iemand die een pincode raadt, kan eerst de combinaties "1111" tot en met "9111" proberen. Als de eerste acht gissingen even lang duren, en "9111" duurt een nanoseconde langer, dan heeft die hoogstwaarschijnlijk tenminste de "9" recht, en de aanvaller kan dan beginnen met het raden van "9111" tot en met "9911", enzovoort.

Een operatie die bijzonder kwetsbaar is voor deze zogenaamde "timing-aanvallen" is toegang tot geheugen. Als systemen altijd op geheugen moesten wachten voordat ze de volgende stap van een actie konden uitvoeren, ze zouden een groot deel van hun tijd inactief doorbrengen.

Om de prestaties op peil te houden, ingenieurs gebruiken een truc:ze geven de processor de kracht om meerdere instructies uit te voeren terwijl hij op geheugen wacht - en dan, zodra het geheugen gereed is, verwijdert degenen die niet nodig waren. Dit wordt 'speculatieve uitvoering' genoemd.

Hoewel het zijn vruchten afwerpt in prestatiesnelheid, het creëert ook nieuwe veiligheidsproblemen. specifiek, de aanvaller zou de processor speculatief wat code kunnen laten uitvoeren om een ​​deel van het geheugen te lezen dat het niet zou kunnen. Zelfs als de code mislukt, het kan nog steeds gegevens lekken waartoe de aanvaller toegang heeft.

Een gebruikelijke manier om dergelijke aanvallen te voorkomen, is door het geheugen op te splitsen, zodat het niet allemaal in één gebied wordt opgeslagen. Stel je een industriële keuken voor die wordt gedeeld door chef-koks die allemaal hun recepten geheim willen houden. Een benadering zou zijn om de koks hun werk aan verschillende kanten te laten opzetten - dat is in wezen wat er gebeurt met de "Cache Allocation Technology" (CAT) die Intel in 2016 begon te gebruiken. Maar zo'n systeem is nog steeds behoorlijk onveilig, omdat een chef-kok een vrij goed idee kan krijgen van de recepten van anderen door te zien welke potten en pannen ze uit de gemeenschappelijke ruimte halen.

In tegenstelling tot, de aanpak van het MIT CSAIL-team is het equivalent van het bouwen van muren om de keuken in afzonderlijke ruimtes te splitsen, en ervoor te zorgen dat iedereen alleen zijn eigen ingrediënten en apparaten kent. (Deze aanpak is een vorm van zogenaamde "secure way partitioning"; de "chefs", in het geval van cachegeheugen, worden "beschermingsdomeinen" genoemd.)

Als een speelse tegenhanger van Intel's CAT-systeem, de onderzoekers noemden hun methode "DAWG", wat staat voor "Dynamisch Toegewezen Way Guard." (Het "dynamische" deel betekent dat DAWG de cache kan splitsen in meerdere buckets waarvan de grootte in de loop van de tijd kan variëren.)

Lebedev schreef samen met hoofdauteur Vladimir Kiriansky en MIT-professoren Saman Amarasinghe een nieuw artikel over het project, Srini Devadas en Joel Emer. Ze zullen hun bevindingen volgende week presenteren op het jaarlijkse IEEE/ACM International Symposium on Microarchitecture (MICRO) in Fukuoka City, Japan.

"Dit artikel gaat dieper in op hoe je de bijwerkingen van het ene programma volledig kunt isoleren van het doordringen naar een ander programma via de cache, " zegt Mohit Tiwari, een assistent-professor aan de Universiteit van Texas in Austin die niet bij het project betrokken was. "Dit werk beveiligt een kanaal dat een van de meest populaire is om te gebruiken voor aanvallen."

Bij testen, het team ontdekte ook dat het systeem qua prestaties vergelijkbaar was met CAT. Ze zeggen dat DAWG zeer minimale aanpassingen aan moderne besturingssystemen vereist.

"We denken dat dit een belangrijke stap voorwaarts is in het geven van computerarchitecten, cloudproviders en andere IT-professionals een betere manier om resources efficiënt en dynamisch toe te wijzen, " zegt Kiriansky, een doctoraat student aan CSAIL. "Het stelt duidelijke grenzen aan waar delen wel en niet mag gebeuren, zodat programma's met gevoelige informatie die gegevens redelijk veilig kunnen houden."

Het team waarschuwt er snel voor dat DAWG zich nog niet kan verdedigen tegen alle speculatieve aanvallen. Echter, ze hebben experimenteel aangetoond dat het een onfeilbare oplossing is voor een breed scala aan niet-speculatieve aanvallen op cryptografische software.

Lebedev zegt dat de toenemende prevalentie van dit soort aanvallen aantoont dat, in tegenstelling tot de populaire tech-CEO-wijsheid, meer informatie delen is niet altijd een goede zaak.

"Er is een spanning tussen prestaties en beveiliging die tot een hoogtepunt is gekomen voor een gemeenschap van architectuurontwerpers die altijd hebben geprobeerd zoveel mogelijk te delen op zoveel mogelijk plaatsen, "zegt hij. "Aan de andere kant, als veiligheid de enige prioriteit was, we zouden aparte computers hebben voor elk programma dat we willen draaien, zodat er nooit informatie kan lekken, wat natuurlijk niet praktisch is. DAWG maakt deel uit van een groeiend oeuvre dat probeert deze twee tegengestelde krachten met elkaar te verzoenen."

Het is de moeite waard om te erkennen dat de plotselinge aandacht voor timingaanvallen het paradoxale feit weerspiegelt dat de computerbeveiliging in de afgelopen 20 jaar een stuk beter is geworden.

"Een decennium geleden was software niet zo goed geschreven als nu, wat betekent dat andere aanvallen veel gemakkelijker uit te voeren waren, ", zegt Kiriansky. "Omdat andere aspecten van beveiliging moeilijker uit te voeren zijn, deze micro-architecturale aanvallen zijn aantrekkelijker geworden, al zijn ze gelukkig nog steeds maar een klein stukje in een arsenaal aan acties die een aanvaller zou moeten nemen om daadwerkelijk schade aan te richten."

Het team werkt nu aan het verbeteren van DAWG, zodat het alle momenteel bekende speculatieve uitvoeringsaanvallen kan stoppen. Ondertussen, ze hopen dat bedrijven zoals Intel geïnteresseerd zullen zijn in het adopteren van hun idee - of anderen die het leuk vinden - om de kans op toekomstige datalekken te minimaliseren.

"Dit soort aanvallen zijn dankzij deze kwetsbaarheden een stuk makkelijker geworden, ", zegt Kiriansky. "Met alle negatieve PR die naar voren is gekomen, bedrijven zoals Intel hebben de prikkels om dit goed te doen. De sterren zijn uitgelijnd om een ​​dergelijke aanpak mogelijk te maken."