L1DES (CacheOut) en VRS - nieuwe kwetsbaarheden in microarchitecturale structuren van Intel CPU's

Intel onbedekt informatie over twee nieuwe kwetsbaarheden in Intel CPU's veroorzaakt door datalekken uit de L1D-cache (CVE-2020-0549, L1DES - L1D uitzettingsbemonstering) en vectorregisters (CVE-2020-0548, VRS - Vectorregisterbemonstering). Kwetsbaarheden horen bij de klasse MDS (Microarchitectural Data Sampling) en zijn gebaseerd op de toepassing van zijkanaalanalysemethoden op gegevens in microarchitecturale structuren. AMD, ARM en andere processors ondervinden geen problemen.

Het grootste gevaar is de L1DES-kwetsbaarheid vergunningen het vereffenen van blokken met gegevens in de cache (cacheregel), verwijderd uit de cache van het eerste niveau (L1D), in de vulbuffer, die in dit stadium leeg zou moeten zijn. Om te bepalen welke gegevens zich in de vulbuffer hebben gevestigd, kunnen we zijkanaalanalysemethoden gebruiken die eerder bij aanvallen zijn voorgesteld MDS (Microarchitecturale gegevensbemonstering) en TAA (Transactionele asynchrone abortus). De essentie van de eerder geΓ―mplementeerde bescherming tegen
MDS en TAA bij het doorspoelen van microarchitecturale buffers vΓ³Γ³r het wisselen van context, maar het blijkt dat onder sommige omstandigheden gegevens na de spoeloperatie speculatief in buffers worden gespoeld, dus MDS- en TAA-methoden blijven toepasbaar.

L1DES (CacheOut) en VRS - nieuwe kwetsbaarheden in microarchitecturale structuren van Intel CPU's

Als gevolg hiervan kan een aanvaller gegevens detecteren die uit de cache van het eerste niveau zijn verwijderd en die zijn gewijzigd tijdens de uitvoering van een applicatie die voorheen de huidige CPU-kern bezette, of applicaties die parallel draaiden in andere logische threads (hyperthread) op dezelfde CPU. core (het uitschakelen van HyperThreading vermindert de effectiviteit van geen enkele aanval). In tegenstelling tot een aanval L1TFL1DES staat de selectie van specifieke fysieke adressen voor inspectie niet toe, maar biedt wel de mogelijkheid om passief de activiteit in andere logische threads te monitoren die verband houden met het laden of opslaan van waarden in het geheugen.

Op basis van L1DES hebben verschillende onderzoeksteams verschillende aanvalsvarianten ontwikkeld die potentieel gevoelige informatie uit andere processen, het besturingssysteem, virtuele machines en beschermde SGX-enclaves kunnen halen.

  • VUSec-team aangepast RIDL-aanvalsmethode voor de L1DES-kwetsbaarheid. Beschikbaar prototype exploiteren, die ook de door Intel voorgestelde MDS-beschermingsmethode omzeilt, die is gebaseerd op het gebruik van de VERW-instructie om de inhoud van microarchitecturale buffers te wissen bij het terugkeren van de kernel naar de gebruikersruimte of bij het overdragen van de controle naar het gastsysteem (onderzoekers drongen er aanvankelijk op aan dat VERW (het wissen van microarchitecturale buffers) buffers) voor bescherming is onvoldoende en vereist een volledige spoeling van de L1-cache op elke contextswitch).
  • Team ZombieLoad mijn bijgewerkt aanvalsmethode rekening houdend met de L1DES-kwetsbaarheid.
  • Onderzoekers van de Universiteit van Michigan hebben hun eigen aanvalsmethode ontwikkeld Cache uit (PDF), waarmee u vertrouwelijke informatie kunt extraheren uit de kernel van het besturingssysteem, virtuele machines en beschermde SGX-enclaves. De methode is gebaseerd op manipulaties met een mechanisme voor asynchrone onderbreking van bewerkingen (TAA, TSX Asynchronous Abort) om de inhoud van de vulbuffer te bepalen na een datalek uit de L1D-cache.

    L1DES (CacheOut) en VRS - nieuwe kwetsbaarheden in microarchitecturale structuren van Intel CPU's

Tweede VRS-kwetsbaarheid (Vector Register Sampling). gebonden met lekkage in de opslagbuffer (Store Buffer) van de resultaten van leesbewerkingen van vectorregisters die zijn gewijzigd tijdens de uitvoering van vectorinstructies (SSE, AVX, AVX-512) op dezelfde CPU-kern. Het lek treedt op onder vrij zeldzame omstandigheden en wordt veroorzaakt door het feit dat een speculatieve operatie die resulteert in de weerspiegeling van de status van vectorregisters in de opslagbuffer, wordt vertraagd en voltooid nadat de buffer is leeggemaakt, en niet eerder. Net als bij de L1DES-kwetsbaarheid kan de inhoud van de opslagbuffer vervolgens worden bepaald met behulp van MDS- en TAA-aanvalstechnieken.

Onderzoekers uit de VUSec-groep bereid prototype exploiteren, waarmee u de waarden kunt bepalen van vectorregisters die zijn verkregen als resultaat van berekeningen in een andere logische thread van dezelfde CPU-kern. Intel-bedrijf gewaardeerd De VRS-kwetsbaarheid werd als te complex beschouwd om echte aanvallen uit te voeren en er werd een minimaal ernstniveau aan toegekend (2.8 CVSS).

De problemen werden in mei 2019 aan Intel gemeld door het Zombieload-team van de Technische Universiteit van Graz (Oostenrijk) en het VUSec-team van de Vrije Universiteit van Amsterdam, en de kwetsbaarheden werden later bevestigd door verschillende andere onderzoekers na analyse van andere MDS-aanvalsvectoren. Het eerste MDS-rapport bevatte geen informatie over de L1DES- en VRS-problemen vanwege het ontbreken van een oplossing. De fix is ​​nu niet beschikbaar, maar de afgesproken geheimhoudingstermijn is verstreken.
Als tijdelijke oplossing wordt aanbevolen HyperThreading uit te schakelen. Om de kwetsbaarheid aan de kernelzijde te blokkeren, wordt voorgesteld om de L1-cache bij elke contextschakelaar opnieuw in te stellen (MSR-bit MSR_IA32_FLUSH_CMD) en de TSX-extensie uit te schakelen (MSR-bits MSR_IA32_TSX_CTRL en MSR_TSX_FORCE_ABORT).

Intel belooft breng een microcode-update uit met de implementatie van mechanismen om problemen in de nabije toekomst te blokkeren. Intel merkt ook op dat het gebruik van aanvalsbeschermingsmethoden in 2018 werd voorgesteld L1TF (L1 Terminal Fault) stelt u in staat de exploitatie van de L1DES-kwetsbaarheid vanuit virtuele omgevingen te blokkeren. Aanval onderworpen aan Intel Core-processors vanaf de zesde generatie (Sky, Kaby, Coffee, Whiskey, Amber Lake, enz.), evenals enkele Intel Xeon- en Xeon Scalable-modellen.

Bovendien kan worden opgemerkt verbetering uitbuiten, waardoor u aanvalsmethoden kunt gebruiken RΓ½dl om de inhoud van de root-wachtwoordhash van /etc/shadow te bepalen tijdens periodieke authenticatiepogingen. Als de oorspronkelijk voorgestelde exploit de wachtwoordhash heeft bepaald 24 uur, en na het aanbrengen van het lek tijdens de werking van het asynchrone onderbrekingsmechanisme (TAA, TSX Asynchronous Abort) voerde een soortgelijke operatie uit in 36 seconden, dan voert de nieuwe variant een aanval uit in 4 seconden.

Bron: opennet.ru

Voeg een reactie