SQUIP - aanval op AMD-processors, leidend tot gegevenslekkage via kanalen van derden

Een groep onderzoekers van de Graz University of Technology (Oostenrijk), voorheen bekend van het ontwikkelen van de MDS-, NetSpectre-, Throwhammer- en ZombieLoad-aanvallen, heeft details bekendgemaakt van een nieuwe side-channel-aanval (CVE-2021-46778) op de wachtrij van de AMD-processorplanner. , gebruikt om de uitvoering van instructies in verschillende uitvoeringseenheden van de CPU te plannen. De aanval, SQUIP genaamd, stelt u in staat om de gegevens te bepalen die worden gebruikt in berekeningen in een ander proces of virtuele machine of om een ​​verborgen communicatiekanaal tussen processen of virtuele machines te organiseren waarmee u gegevens kunt uitwisselen zonder mechanismen voor systeemtoegangscontrole.

AMD CPU's gebaseerd op 2000e, 5000e en 3000e generatie Zen-microarchitecturen (AMD Ryzen XNUMX-XNUMX, AMD Ryzen Threadripper, AMD Athlon XNUMX, AMD EPYC) worden beïnvloed bij gebruik van Simultaneous Multithreading Technology (SMT). Intel-processors zijn niet vatbaar voor aanvallen, omdat ze een enkele scheduler-wachtrij gebruiken, terwijl kwetsbare AMD-processors afzonderlijke wachtrijen gebruiken voor elke uitvoeringseenheid. Als tijdelijke oplossing om het lekken van informatie te voorkomen, adviseerde AMD dat ontwikkelaars algoritmen gebruiken die altijd wiskundige berekeningen in een constante tijd uitvoeren, ongeacht de aard van de gegevens die worden verwerkt, en ook vertakkingen op basis van geheime gegevens vermijden.

De aanval is gebaseerd op een beoordeling van het niveau van betwisting (conflictniveau) in verschillende scheduler-wachtrijen en wordt uitgevoerd door het meten van vertragingen bij het starten van controlebewerkingen die worden uitgevoerd in een andere SMT-thread op dezelfde fysieke CPU. Om de inhoud te analyseren, werd de Prime + Probe-methode gebruikt, wat inhoudt dat de wachtrij wordt gevuld met een referentiereeks waarden en veranderingen worden bepaald door de toegangstijd tot deze waarden te meten bij het opnieuw vullen.

Tijdens het experiment waren de onderzoekers in staat om de private 4096-bit RSA-sleutel die werd gebruikt om digitale handtekeningen te maken volledig opnieuw te creëren met behulp van de mbedTLS 3.0 cryptografische bibliotheek, die het Montgomery-algoritme gebruikt om een ​​getal te verhogen tot een machtsmodulo. Er waren 50500 sporen nodig om de sleutel te bepalen. De totale aanvalstijd duurde 38 minuten. Er worden aanvalsvarianten gedemonstreerd die zorgen voor een lek tussen verschillende processen en virtuele machines die worden aangestuurd door de KVM-hypervisor. Er wordt ook aangetoond dat de methode kan worden gebruikt om geheime gegevensoverdracht tussen virtuele machines te organiseren met een snelheid van 0.89 Mbit/s en tussen processen met een snelheid van 2.70 Mbit/s met een foutpercentage van minder dan 0.8%.

Bron: opennet.ru

Voeg een reactie