Studiuesit nga NCC Group
Le të kujtojmë se teknologjia ARM TrustZone ju lejon të krijoni mjedise të mbrojtura të izoluara nga hardueri që janë plotësisht të ndara nga sistemi kryesor dhe të ekzekutohen në një procesor virtual të veçantë duke përdorur një sistem operativ të veçantë të specializuar. Qëllimi kryesor i TrustZone është të sigurojë ekzekutim të izoluar të procesorëve për çelësat e enkriptimit, vërtetimin biometrik, të dhënat e pagesave dhe informacione të tjera konfidenciale. Ndërveprimi me sistemin operativ kryesor kryhet në mënyrë indirekte përmes ndërfaqes së dërgimit. Çelësat privatë të enkriptimit ruhen brenda një dyqani çelësash të izoluar nga hardueri, i cili, nëse zbatohet siç duhet, mund të parandalojë rrjedhjen e tyre nëse sistemi themelor është i rrezikuar.
Dobësia është për shkak të një defekti në zbatimin e algoritmit të përpunimit të kurbës eliptike, i cili çoi në rrjedhje të informacionit në lidhje me përparimin e përpunimit të të dhënave. Studiuesit kanë zhvilluar një teknikë sulmi në kanalin anësor që lejon përdorimin e rrjedhjeve ekzistuese indirekte për të rikuperuar përmbajtjen e çelësave privatë të vendosur në një pajisje të izoluar nga hardueri.
Shkaku kryesor i problemit është ndarja e komponentëve të përbashkët të harduerit dhe cache për llogaritjet në TrustZone dhe në sistemin kryesor - izolimi kryhet në nivelin e ndarjes logjike, por duke përdorur njësi të zakonshme llogaritëse dhe me gjurmë llogaritjesh dhe informacioni rreth degës. adresat që depozitohen në cache të përbashkët të procesorit. Duke përdorur metodën Prime+Probe, bazuar në vlerësimin e ndryshimeve në kohën e hyrjes në informacionin e memorizuar, është e mundur, duke kontrolluar praninë e modeleve të caktuara në cache, të monitorohen rrjedhat e të dhënave dhe shenjat e ekzekutimit të kodit që lidhen me llogaritjet e nënshkrimeve dixhitale në TrustZone me saktësi mjaft të lartë.
Pjesa më e madhe e kohës për të gjeneruar një nënshkrim dixhital duke përdorur çelësat ECDSA në çipat Qualcomm shpenzohet duke kryer operacione shumëzimi në një lak duke përdorur një vektor inicializimi që është i pandryshuar për çdo nënshkrim (
Në rastin e Qualcomm, dy vende ku kishte rrjedhur një informacion i tillë u identifikuan në algoritmin e shumëzimit: gjatë kryerjes së operacioneve të kërkimit në tabela dhe në kodin e marrjes së të dhënave të kushtëzuara bazuar në vlerën e bitit të fundit në vektorin "nonce". Përkundër faktit se kodi Qualcomm përmban masa për të luftuar rrjedhjet e informacionit përmes kanaleve të palëve të treta, metoda e zhvilluar e sulmit ju lejon të anashkaloni këto masa dhe të përcaktoni disa pjesë të vlerës "nonce", të cilat janë të mjaftueshme për të rikuperuar çelësat ECDSA 256-bit.
Burimi: opennet.ru