AEPIC Leak, napad koji propušta Intel SGX ključeve i utječe na 10., 11. i 12. generaciju

nedavno objavljene su informacije o novi napad na Intelove procesore, tzv «Curenje AEPIC-a» (već katalogiziran pod CVE-2022-21233), ovaj novi napad dovodi do curenja osjetljivih podataka iz izolirane enklave od intel sgx (Proširenja softvera Guard).

Za razliku od napada klase Spectre, curenje u AEPIC Leaku događa se bez upotrebe metoda oporavka trećih strana, budući da se informacije o osjetljivim podacima prenose izravno dobivanjem sadržaja registara koji se odražavaju na MMIO (memorijski mapirani I/O) memorijskoj stranici.

Općenito, napad omogućuje određivanje podataka koji se prenose između predmemorija druge i posljednje razine, uključujući sadržaj registara i rezultate operacija čitanja memorije, koji su prethodno obrađeni na istoj CPU jezgri.

I/O adresa skeniranja na Intelovim procesorima koji se temelje na mikroarhitekturi Sunny Cove otkrio da su zapisi dodijeljeninapredni programabilni lokalni kontroler prekida (APIC) u memoriji nisu
ispravno inicijaliziran. Kao rezultat toga, arhitektonsko čitanje ovih registara vraća zastarjele podatke iz mikroarhitekture, tako da se nikakvi podaci koji se prenose između L2 i predmemorije posljednje razine ne mogu pročitati kroz te registre.

Kao adresni prostor I/O je dostupan samo privilegiranim korisnicima, Curenje ÆPIC-a cilja na Intelov TEE, SGX. ÆPIC može curiti podatke iz SGX enklava koje rade na istoj fizičkoj jezgri. Iako bi ÆPIC Leak predstavljao ogromnu prijetnju u virtualiziranim okruženjima, hipervizori ih obično ne izlažu lokalnim APIC zapisima virtualnim strojevima, eliminirajući prijetnju u scenarijima temeljenim na oblaku.

Slično prethodnom prijelaznom napadu izvršenja usmjerenom na SGX, ÆPIC Leak je najučinkovitiji kada se izvodi paralelno s enklavom na srodnom hiperprocesu. Međutim, curenje ÆPIC-a ne zahtijeva hipernitnost i također može propuštati podatke enklave ako hipernitnost nije dostupna ili onemogućena.

Predstavljamo dvije nove tehnike za filtriranje podataka u upotrebi, to jest vrijednosti registra enklave i podataka u mirovanju, to jest podataka pohranjenih u memoriji enklave. Uz Cache Line Freezing, uvodimo tehniku ​​koja vrši ciljani pritisak na hijerarhiju predmemorije bez prepisivanja zastarjelih podataka...
Čini se da ti redovi predmemorije i dalje putuju kroz hijerarhiju predmemorije, ali ne prebrišu zastarjele podatke. U tu svrhu bilježimo curenje vrijednosti retka predmemorije u području sigurnog stanja (SSA).

Druga tehnika, Enclave Shaking, iskorištava sposobnost operativnog sustava da sigurno zamijeni stranice enklave. Naizmjeničnim mijenjanjem stranica enklave van i unutra, predmemorirane stranice forsiraju podatke kroz hijerarhiju predmemorije, dopuštajući ÆPIC-u da filtrira vrijednosti čak i bez nastavka izvršavanja enklave. Iskorištavamo ÆPIC Leak u kombinaciji s
Cache Line Freezing i Enclave Shaking za izdvajanje AES-NI ključeva i RSA ključeva iz Intel IPP biblioteke i Intel SGX. Naš napad propušta memoriju enklave brzinom od 334,8 B/s i stopom pogodaka od 92,2%.

S obzirom da napad zahtijeva pristup fizičkim stranicama APIC MMIO, tj. potrebne su administratorske ovlasti, metoda je ograničena na napad na SGX enklave kojima administrator nema izravan pristup.

Istraživači su razvili skup alata koji omogućuju, u nekoliko sekundi, određivanje AES-NI i RSA ključeva pohranjenih u SGX, kao i Intel SGX atestacijskih ključeva i parametara generatora pseudoslučajnih brojeva. Kod napada objavljen je na GitHubu.

Intel je najavio da priprema popravak u obliku nadogradnje mikrokoda koji dodaje podršku za ispiranje međuspremnika i dodaje dodatne mjere za zaštitu podataka enklave.

Nova verzija SDK-a za Intel SGX također je pripremljena s promjenama kako bi se spriječilo curenje podataka. Programeri OS-a i hipervizora potiču se da koriste x2APIC način umjesto naslijeđenog xAPIC načina, koji koristi MSR registre umjesto MMIO za pristup APIC registrima.

Problem utječe na procesore Intelove 10., 11. i 12. generacije (uključujući nove serije Ice Lake i Alder Lake), a uzrokovan je greškom u arhitekturi koja dopušta pristup neinicijaliziranim podacima koji su ostali na CPU-u. APIC (Advanced Programmable Interrupt Controller) bilježi iz prethodne operacije.

konačno ako jesi zainteresirani za saznanje više o tome, pojedinosti možete provjeriti u sljedeći link.


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.