Sårbarheden skyldes hukommelsesoptimeringsfunktioner i Intel-processorer.
igen, en sårbarhed er blevet opdaget i det spekulative instruktionsudførelsessystem for Intel-processorer, og denne gang en Google-forsker, meddelte, at han identificerede en ny sårbarhed (allerede katalogiseret under CVE-2022-40982), kaldet «Nedfald»
Downfall, er en sårbarhed, der gør det muligt at bestemme indholdet af XMM, YMM og ZMM vektorregistre, som tidligere blev brugt af andre processer, når AVX-instruktioner udføres på den samme CPU-kerne.
Om Undergang
Vedrørende sårbarhed nævnes det en uprivilegeret angriber med evnen til at køre din egen kode på systemet, kunne bruge sårbarheden til at lække data fra andre brugerprocesser, systemkernen, isolerede Intel SGX-enklaver og virtuelle maskiner.
Filtrerbare vektorregistre er meget udbredt i kryptering, hukommelseskopieringsfunktioner og strengbehandling, for eksempel bruges disse registre i Glibc-biblioteket i blandt andet memcpy-, strcmp- og strlen-funktionerne. Fra et praktisk synspunkt kunne sårbarheden udnyttes til at bestemme de data, der behandles i AES-NI eller REP-MOVS instruktioner (brugt i memcpy-funktionen) i andre processer, hvilket kan lække krypteringsnøgler, følsomme data og brugeradgangskoder.
Sårbarhed viser sig i Intel-processorer som understøtter AVX2 og AVX-512 udvidede instruktionssæt (hvilket betyder, at det påvirker 6. til 11. generations processorer), mens Intel-processorer baseret på Alder Lake, Raptor Lake og Sapphire Rapids mikroarkitekturer ikke synes påvirket.
Som med den nyligt opdagede Zenbleed-sårbarhed, der påvirker AMD Zen2-processorer, i Downfall, er årsagen til sårbarheden datalækage fra logfiler, som bruges til at dele logindhold på tværs af alle applikationer.opgaver på den samme CPU-kerne.
Lækagen skyldes en spekulativ dataoverførsel ved udførelse af GATHER-sætningen, tilgængelig i AVX2- og AVX-512-udvidelser og designet til at give hurtig adgang til forskellige data i hukommelsen. Under udførelsen af GATHER-sætningen bruges de gamle data i registerfilen i den spekulative udførelse af afhængige instruktioner. Disse data afspejles ikke direkte i softwarelogfiler, men kan bestemmes ved hjælp af side-kanalangrebsteknikker designet til Meltdown-angreb, såsom at analysere resterende data i CPU-cachen.
For at udnytte Downfall, der blev udviklet en angrebsteknik kaldet Gather Data Sampling (GDS), og for hvilke der er udgivet udnyttelsesprototyper til at udtrække kryptografiske nøgler fra en anden brugers proces, lække data, efter at de er blevet kopieret ind i Linux-kernen af memcpy-funktionen, og opsnappe udskrevne tegn, der er tilbage i vektorregistre, efter at andre processer har virket. For eksempel demonstrerer det evnen til at definere AES-nøgler, der bruges til at kryptere data i en anden brugers proces ved hjælp af OpenSSL-biblioteket.
Metoden viste høj effektivitet: ved at udføre et eksperiment med 100 forskellige nøgler, blev 100 % af AES-128 nøgler og 86 % af AES-256 nøgler bestemt med varigheden af hvert forsøg på at bestemme ikke mere end 10 sekunder. I skysystemer kan et angreb bruges til at bestemme, hvilke data der behandles i andre virtuelle maskiner. Det er muligt, at sårbarheden kan udnyttes ved at udføre JavaScript-kode i en webbrowser.
Det skal nævnes, at jegntel fandt ud af problemet sidste år (præcis i august måned) og at sårbarheden først blev offentliggjort i år på BlackHat USA-konferencen. og rettelser til at beskytte mod sårbarheden er allerede inkluderet i de forskellige Linux-kerneopdateringer, der spænder fra version 6.4.9 6.1.44 til 4.14.321.
Udover dette nævnes det blandt de mulige foranstaltninger for at undgå den negative indvirkning af beskyttelsen mod Downfall-sårbarheden på ydeevnen at foretage ændringer i kompilatorerne for at deaktivere brugen af GATHER-sætningen eller tilføje erklæringen umiddelbart efter GATHER LFENCE, som deaktiverer forebyggende eksekvering af efterfølgende erklæringer, før alle tidligere commits er gennemført.
For systemer, hvor firmwarerettelser ikke er tilgængelige, er understøttelse af alle AVX-udvidelser blevet deaktiveret, mens den for Intel-mikrokodeopdateringsdelen også giver mulighed for at bruge MSR-grænsefladen til selektivt at deaktivere firmwarebeskyttelsen i forbindelse med individuelle processer.
Endelig hvis du er interesseret i at vide mere om det, kan du kontrollere detaljerne i følgende link.