SQUIP ir uzbrukums AMD procesoriem, kas izraisa datu noplūdi, izmantojot trešo pušu kanālus

Grācas Tehniskās universitātes (Austrija) pētnieku komanda, kas iepriekš bija pazīstama ar MDS, NetSpectre, Throwhammer un ZombieLoad uzbrukumu izstrādi, ir atklājusi informāciju par jaunu sānu kanālu uzbrukuma metodi (CVE-2021-46778) AMD procesoram. plānotāja rinda, ko izmanto, lai ieplānotu instrukciju izpildi dažādās CPU izpildvienībās. Uzbrukums, ko sauc par SQUIP, ļauj noteikt aprēķinos izmantotos datus citā procesā vai virtuālajā mašīnā vai organizēt slēptu sakaru kanālu starp procesiem vai virtuālajām mašīnām, ļaujot apmainīties ar datiem, apejot sistēmas piekļuves kontroles mehānismus.

Problēma skar AMD CPU, kuru pamatā ir pirmās, otrās un trešās paaudzes Zen mikroarhitektūras (AMD Ryzen 2000-5000, AMD Ryzen Threadripper, AMD Athlon 3000, AMD EPYC), ja tiek izmantota vienlaicīga vairāku pavedienu tehnoloģija (SMT). Intel procesori nav uzņēmīgi pret uzbrukumiem, jo ​​tie izmanto vienu plānotāja rindu, savukārt neaizsargātie AMD procesori katrai izpildes vienībai izmanto atsevišķas rindas. Kā risinājumu informācijas noplūdes bloķēšanai AMD ieteica izstrādātājiem izmantot algoritmus, kuros matemātiskie aprēķini vienmēr tiek veikti nemainīgā laikā neatkarīgi no apstrādājamo datu veida, kā arī izvairīties no sazarošanās, pamatojoties uz slepeniem datiem.

Uzbrukums ir balstīts uz strīdu līmeņa novērtēšanu dažādās plānotāja rindās, un tas tiek veikts, mērot aizkavi, palaižot verifikācijas darbības, kas veiktas citā SMT pavedienā tajā pašā fiziskajā CPU. Satura analīzei tika izmantota Prime+Probe metode, kas ietver rindas aizpildīšanu ar standarta vērtību kopu un izmaiņu noteikšanu, mērot piekļuves laiku tām, tos uzpildot.

Eksperimenta laikā pētnieki varēja pilnībā atjaunot privāto 4096 bitu RSA atslēgu, ko izmantoja digitālo parakstu izveidošanai, izmantojot mbedTLS 3.0 kriptogrāfisko bibliotēku, kas izmanto Montgomery algoritmu, lai palielinātu skaitļa moduli. Atslēgas noteikšanai bija vajadzīgas 50500 38 pēdas. Kopējais uzbrukuma laiks aizņēma 0.89 minūtes. Tiek demonstrēti uzbrukuma varianti, kas nodrošina noplūdi starp dažādiem procesiem un virtuālajām mašīnām, ko pārvalda KVM hipervizors. Tāpat tiek parādīts, ka ar metodi var organizēt slēpto datu pārraidi starp virtuālajām mašīnām ar ātrumu 2.70 Mbit/s un starp procesiem ar ātrumu 0.8 Mbit/s ar kļūdu līmeni mazāku par XNUMX%.

Avots: opennet.ru

Pievieno komentāru