En gruppe forskere fra Graz Tekniske Universitet (Østrig), tidligere kendt for at udvikle angrebene MDS, NetSpectre, Throwhammer og ZombieLoad, har afsløret oplysninger om en ny metode til sidekanalangreb (CVE-2021-46778) på schedulerkøerne i AMD-processorer, der bruges til at planlægge udførelsen af instruktioner i forskellige udførelsesenheder på CPU'en. Angrebet, kaldet SQUIP, giver mulighed for at bestemme de data, der bruges i beregninger i en anden proces eller virtuel maskine, eller at organisere en skjult kommunikationskanal mellem processer eller virtuelle maskiner, hvilket muliggør dataudveksling ved at omgå systemadgangskontrolmekanismer.
Problemet påvirker AMD CPU'er baseret på første, anden og tredje generation af Zen-mikroarkitekturer (AMD Ryzen 2000-5000, AMD Ryzen Threadripper, AMD Athlon 3000, AMD EPYC), når de bruger simultan multithreading (SMT) teknologi. Intel-processorer er ikke modtagelige for angrebet, da de bruger en enkelt scheduler-kø, mens sårbare AMD-processorer bruger separate køer til hver udførelsesenhed. Som en løsning til at blokere informationslækagen anbefalede AMD, at udviklere bruger algoritmer, hvor matematiske beregninger altid udføres i konstant tid, uanset arten af de data, der behandles, og også undgår forgrening baseret på hemmelige data.
Angrebet er baseret på at vurdere konkurrenceniveauet i forskellige scheduler-køer og udføres ved at måle forsinkelser ved opstart af verifikationsoperationer udført i en anden SMT-tråd på den samme fysiske CPU. Prime+Probe-metoden bruges til at analysere indholdet, hvilket involverer at fylde køen med et referencesæt af værdier og bestemme ændringer ved at måle adgangstiden til dem ved genopfyldning.
Under eksperimentet var forskerne i stand til fuldstændigt at genskabe en privat 4096-bit RSA-nøgle, der bruges til at oprette digitale signaturer ved hjælp af det kryptografiske bibliotek mbedTLS 3.0, som bruger Montgomery-algoritmen til modulo-eksponentiering. Bestemmelse af nøglen krævede 50500 spor. Den samlede angrebstid var 38 minutter. Der blev demonstreret angrebsvarianter, der kunne lække information mellem forskellige processer og virtuelle maskiner, der administreres af hypervisoren. KVMDet vises også, at metoden kan bruges til at organisere skjult dataoverførsel mellem virtuelle maskiner med en hastighed på 0.89 Mbit/s og mellem processer med en hastighed på 2.70 Mbit/s med en fejlrate på mindre end 0.8%.
Kilde: opennet.ru
