LVI: een nieuwe klasse van speculatieve executieaanvallen op Intel CPU's

Informatie over een nieuwe klasse aanvallen HVAC in het mechanisme speculatieve uitvoering die invloed heeft op Intel, die kan worden gebruikt voor het afleiden van sleutels en gevoelige gegevens uit Intel SGX-enclaves en andere processen.

De nieuwe klasse van aanvallen is gebaseerd op manipulaties met dezelfde microarchitecturale structuren als bij de MDS-, Spectre- en Meltdown-aanvallen. Tegelijkertijd, nieuwe aanvallen worden niet geblokkeerd door bestaande methoden bescherming tegen Meltdown, Spectre, MDS en andere soortgelijke aanvallen.

Over LVI

Het probleem werd in april vorig jaar geïdentificeerd door onderzoeker Jo Van Bulck van de KU Leuven, waarna, met deelname van 9 onderzoekers van andere universiteiten, er werden vijf basismethoden ontwikkeld, die elk meer specifieke opties mogelijk maken.

Hoe dan ook, in februari van dit jaar, de Bitdefender-onderzoekers ontdekten ook een van de aanvalsopties LVI en meldde het aan Intel.

De aanvalsopties onderscheiden zich door het gebruik van verschillende microarchitecturale structuren, zoals Store Buffer (SB, Store Buffer), Fill Buffer (LFB, Line Fill Buffer), FPU Context Switch Buffer en First Level Cache (L1D), voorheen gebruikt bij aanvallen zoals ZombieLoad, RIDL, Fallout, LazyFP, Foreshadow en Kernsmelting.

Het belangrijkste verschil tussen Ik val ze aanLVI en MDS is dat MDS inhoudsbepaling manipuleert van microarchitecturale structuren die in de cache blijven na speculatieve foutafhandeling of laad- en opslagbewerkingen, terwijl De aanvallen Met LVI kan de aanvaller worden vervangen door microarchitecturale structuren om de daaropvolgende speculatieve uitvoering van de code van het slachtoffer te beïnvloeden.

Met behulp van deze manipulaties kan een aanvaller de inhoud van gesloten gegevensstructuren in andere processen extraheren terwijl hij bepaalde code in de kern van de doel-CPU uitvoert.

Voor exploitatie moeten problemen worden gevonden in de procescode en het verzenden van reeksen speciale codes (gadgets) waarin de door de aanvaller gecontroleerde waarde wordt geladen en het laden van deze waarde veroorzaakt uitzonderingen die het resultaat negeren en de instructie opnieuw uitvoeren.

Bij het verwerken van een uitzondering verschijnt een speculatief venster waarin de gegevens die in de gadget worden verwerkt, worden gefilterd.

En in het bijzonder, de processor begint speculatief een stukje code uit te voeren (een gadget), stelt vervolgens vast dat de voorspelling niet gerechtvaardigd is en draait de bewerkingen om, maar de verwerkte gegevens Tijdens speculatieve executie worden gedeponeerd in de L1D-cache en buffers microarchitecturale gegevens en kunnen daaruit worden geëxtraheerd met behulp van bekende methoden om resterende gegevens van kanalen van derden te bepalen.

De grootste moeilijkheid om andere processen aan te vallen ens hoe u hulp kunt initiëren door het slachtofferproces te manipuleren.

Momenteel zijn er geen betrouwbare manieren om dit te doen, maar in de toekomst is zijn bevinding niet uitgesloten. Tot dusverre is de mogelijkheid van een aanval alleen bevestigd voor Intel SGX-enclaves, andere scenario's zijn theoretisch of reproduceerbaar onder synthetische omstandigheden.

Mogelijke aanvalsvectoren

  • Het lekken van gegevens van de kernelstructuren naar het proces op gebruikersniveau. Linux-kernelbescherming tegen Spectre 1-aanvallen en het SMAP-beschermingsmechanisme (Supervisor Mode Access Prevention) de kans op een LVI-aanval aanzienlijk verkleinen​ Het introduceren van extra kernelbescherming kan nodig zijn bij het identificeren van eenvoudigere methoden om in de toekomst een LVI-aanval uit te voeren.
  • Datalek tussen verschillende processen. Een aanval vereist de aanwezigheid van bepaalde codefragmenten in de applicatie en de bepaling van de methode om een ​​uitzondering op te werpen in het doelproces.
  • Er lekken gegevens van de hostomgeving naar het gastsysteem. De aanval wordt als te complex geclassificeerd, waardoor de implementatie van verschillende moeilijk te implementeren stappen en voorspellingen van activiteit op het systeem vereist is.
  • Datalek tussen processen in verschillende gastsystemen. De aanvalsvector organiseert bijna het lekken van gegevens tussen verschillende processen, maar vereist ook complexe manipulaties om isolatie tussen gastsystemen te voorkomen.

Om effectieve bescherming tegen LVI te bieden, zijn hardwarewijzigingen aan de CPU vereist. Door de bescherming programmatisch te organiseren, de compiler-instructie LFENCE toe te voegen na elke laadoperatie vanuit het geheugen, en de instructie RET te vervangen door POP, LFENCE en JMP, wordt te veel overhead opgelost; Volgens de onderzoekers zal uitgebreide softwarebescherming leiden tot een prestatievermindering van 2 tot 19 keer.

bron: https://www.intel.com


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: Miguel Ángel Gatón
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.