AEPIC Leak, en attack som läcker Intel SGX-nycklar och påverkar 10:e, 11:e och 12:e generationen

nyligen information släpptes om en ny attack mot Intel-processorer, kallad "AEPIC läcka" (redan katalogiserad under CVE-2022-21233), denna nya attack leder till läckage av känsliga uppgifter från isolerade enklaver av intel sgx (Software Guard-extensions).

Till skillnad från Spectre-klassens attacker, en läcka i AEPIC Leak sker utan användning av återställningsmetoder från tredje part, eftersom informationen om känsliga data överförs direkt genom att innehållet i registren reflekteras i MMIO-minnessidan (memory maped I/O).

Övergripande attacken gör det möjligt att bestämma data som överförs mellan cachen på den andra och sista nivån, inklusive innehållet i register och resultaten av minnesläsoperationer, som tidigare bearbetades på samma CPU-kärna.

I/O-adressskanning på Intel-processorer baserade på Sunny Cove-mikroarkitekturen avslöjade att de tilldelade posters i minnet Advanced Programmable Interrupt Local Controller (APIC) de är det inte
korrekt initierad. Som ett resultat returnerar arkitektonisk läsning av dessa register inaktuella data från mikroarkitekturen, så ingen data som överförs mellan L2 och den sista nivåns cache kan läsas genom dessa register.

Som adressutrymme för I/O är endast tillgänglig för privilegierade användare, ÆPIC-läckan riktar sig till Intels TEE, SGX. ÆPIC kan läcka data från SGX-enklaver som körs på samma fysiska kärna. Även om ÆPIC Leak skulle utgöra ett enormt hot i virtualiserade miljöer, gör hypervisorer vanligtvis att de inte exponerar lokala APIC-loggar för virtuella maskiner, vilket eliminerar hotet i molnbaserade scenarier.

I likhet med den tidigare övergående exekveringsattacken riktad mot SGX, är ÆPIC Leak mest effektiv när den exekveras parallellt med enklaven på syskonhyperprocessen. ÆPIC-läckan kräver dock inte hypertrådning och kan även läcka enklavdata om hypertrådning inte är tillgänglig eller inaktiverad.

Vi introducerar två nya tekniker för att filtrera data som används, det vill säga enklavregistervärden och data i vila, det vill säga data lagrad i enklavminnet. Med Cache Line Freezing introducerar vi en teknik som sätter riktat tryck på cachehierarkin utan att skriva över inaktuella data...
Dessa cache-rader verkar fortfarande färdas genom cachehierarkin, men de skriver inte över inaktuella data. För detta ändamål loggar vi läckor av cache-linjevärden i safe state area (SSA).

Den andra tekniken, Enclave Shaking, utnyttjar operativsystemets förmåga att säkert byta enklavsidor. Genom att omväxlande byta enklavsidorna ut och in, tvingar de cachade sidorna data genom cachehierarkin, vilket tillåter ÆPIC att filtrera värden utan att ens fortsätta körningen av enklaven. Vi utnyttjar ÆPIC Leak i kombination med
Cache Line Freezing och Enclave Shaking för att extrahera AES-NI-nycklar och RSA-nycklar från Intel IPP-biblioteket och Intel SGX. Våra attackläckor enklaver minne vid 334,8 B/s och en träfffrekvens på 92,2 %.

Med tanke på att attacken kräver åtkomst till de fysiska sidorna i APIC MMIO, dvs. administratörsbehörighet krävs, metoden är begränsad till att attackera SGX-enklaver som administratören inte har direkt åtkomst till.

Forskarna har utvecklat en uppsättning verktyg som gör det möjligt att på några sekunder bestämma AES-NI- och RSA-nycklarna lagrade i SGX, såväl som Intel SGX-attestationsnycklar och parametrar för pseudo-slumptalsgenerator. Koden för attacken publiceras på GitHub.

Intel meddelade att de förbereder en fix i form av en uppdatering av mikrokod som lägger till stöd för buffertspolning och lägger till ytterligare åtgärder för att skydda enklavdata.

En ny version av SDK för Intel SGX har också förberetts med ändringar för att förhindra dataläckor. Utvecklare av operativsystem och hypervisorer uppmuntras att använda x2APIC-läge istället för äldre xAPIC-läge, som använder MSR-register istället för MMIO för att komma åt APIC-register.

Problemet påverkar Intels 10:e, 11:e och 12:e generations processorer (inklusive den nya Ice Lake och Alder Lake-serien) och orsakas av ett arkitektoniskt fel som tillåter åtkomst till oinitierad data kvar på processorerna. APIC (Advanced Programmable Interrupt Controller)-poster från tidigare operationer.

äntligen om du är det intresserad av att veta mer om det, du kan kolla in detaljerna följande länk.


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för data: AB Internet Networks 2008 SL
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.