Një grup hulumtuesish nga Universitete i Lirë të Amsterdamit zbuloi një të re (CVE-2020-0543) në strukturat mikroarkitekturore të procesorëve Intel, e cila është e rëndësishme sepse lejon rikuperimin e rezultateve të ekzekutimit të disa instrukcioneve, të cilat janë realizuar në një bërthamë tjetër CPU. Kjo është e para dobësi e mekanizmit të ekzekutimit speculativ të instrukcioneve që lejon rrjedhjen e të dhënave midis bërthamave të ndryshme CPU (më parë rrjedhjet ishin të kufizuara në përvoja të ndryshme të një bërthame). Hulumtuesit i dhanë këtij problemi emrin CROSSTalk, por në dobësia përmendet si SRBDS (Special Register Buffer Data Sampling).
Dobësia i përket CROSSTalk është afër dobësisë RIDL Dobësia e re manipuluar rrjedhjen nga një tampon ndërmjetës që nuk është dokumentuar më parë, i cili përdoret nga të gjitha bërthemat CPU.
Thelbi i problemit
Madhësia e tamponit të përbashkët përputhet me linjën e caches, e cila zakonisht është më e madhe se madhësia e të dhënave të lexuara dhe operacione të ndryshme leximore prekin offset të ndryshme në tampon. Duke qenë se tamponi i përbashkët kopjohet tërësisht në tamponin ndihmës, atëherë nuk është vetëm porcija e nevojshme për operacionin aktual që është e lëvizur, por edhe të dhënat që mbeten nga ekzekutimi i operacioneve të tjera, përfshirë ato që janë realizuar në bërthama të tjera CPU.
Në rastin e një sulmi të suksesshëm, një përdorues lokal i autentikuar në sistem mund të përcaktojë rezultatin e ekzekutimit të instrukcioneve RDRAND, RDSEED dhe EGETKEY në një proces të huaj apo brenda një enclave Intel SGX, pavarësisht nga bërthama CPU, mbi të cilën ekzekutohet kodi.
Hulumtuesit që zbuluan problemin
Hulumtuesit që identifikuan problemin prototip i një exploiti, që demonstruar mundësinë e rrjedhjes së informacionit mbi vlerat e rastësishme të fituara përmes instrukcioneve RDRAND dhe RDSEED, për të restauruar çelësin e mbyllur ECDSA, i përpunuar në enklavën Intel SGX, pas realizimit në sistem vetëm një operacioni me nënshkrim digjital.

Problemi një gamë e gjerë procesorësh desktop, mobil dhe server nga Intel, përfshirë Core i3, i5, i7, i9, m3, Celeron (seritë J, G dhe N), Atom (seritë C, E dhe X), Xeon (familjet E3, E5, E7, W dhe D), Xeon Scalable etj. Vlen të përmendet se kompania Intel u njoftua për ndjeshmërinë në Shtator 2018, dhe në Korrik 2019 u dha një prototip i exploiti, që demonstron rrjedhjen e të dhënave midis bërthamave CPU, por zhvillimi i një riparimi u vonua për shkak të kompleksitetit të zbatimit të tij. Në azhurnimin e mikrocode-s të propozuar sot, problemi është bllokuar duke ndryshuar sjelljen e instrukcioneve RDRAND, RDSEED dhe EGETKEY për të shkruar të dhënat në mënyrë të tepruar në një bufer të përbashkët për të parandaluar që informacione të mbetjeve të mbeten aty. Për më tepër, është aplikuar ndalimi i aksesit në bufer derisa operacionet e leximit dhe shkrimit të përfundojnë.
Një efekt ndihmës i këtij mbrojtjeje është rritja e vonesave gjatë realizimit të RDRAND, RDSEED dhe EGETKEY, dhe reduktimi i kapacitetit të kaluar gjatë përpjekjeve për të realizuar këto instrukcione në procesorë logjikë të ndryshëm. Realizimi i RDRAND, RDSEED dhe EGETKEY gjithashtu ndalon aksesin në memorien nga procesorët e tjerë logjikë. Këto karakteristika mund të ndikojnë negativisht në performancën e disa aplikacioneve server, prandaj në firmware është parashikuar një mekanizëm (RNGDS_MITG_DIS) për të çaktivizuar mbrojtjen e instrukcioneve RDRAND dhe RDSEED, që kryhen jashtë enklavës Intel SGX.
Burimi: opennet.ru
