Forskare frĂ„n NCC Group sĂ„rbarheter () i Qualcomm-chips, vilket gör det möjligt att identifiera innehĂ„llet av slutna krypteringsnycklar som lagras i den isolerade enklaven Qualcomm QSEE (Qualcomm Secure Execution Environment), som Ă€r baserad pĂ„ ARM TrustZone-teknologi. Problemet visar sig i Snapdragon SoC, som anvĂ€nds i smartphones baserade pĂ„ Android-plattformen. Ă tgĂ€rder för att lösa problemet har redan införlivats i aprilsuppdateringen av Android och i nya versioner av firmware för Qualcomm-chips. Qualcomm tog mer Ă€n ett Ă„r att förbereda lösningen â information om sĂ„rbarheten skickades ursprungligen till Qualcomm redan den 19 mars 2018.
Vi pÄminner om att ARM TrustZone-teknologin möjliggör skapandet av hÄrdvaru-isolerade skyddade miljöer som Àr helt separerade frÄn det primÀra systemet och exekveras pÄ en separat virtuell processor med en speciell operativsystem. Huvudsyftet med TrustZone Àr att sÀkerstÀlla isolerad exekvering av krypteringsnyckelhanterare, biometrisk autentisering, betalningsinformation och annan konfidentiell information. Interaktion med det primÀra operativsystemet sker indirekt via ett dispatch-grÀnssnitt. Slutna krypteringsnycklar lagras inom ett hÄrdvaru-isolerat nyckellager, vilket, vid korrekt implementering, förhindrar lÀckage vid kompromettering av det primÀra systemet.
SÄrbarheten Àr kopplad till ett bristande genomförande av algoritmen för elliptiska kurvor, vilket ledde till lÀckage av information om bearbetningsprocessen. Forskare har utvecklat en teknik för attacker via sidokanaler, vilket gör det möjligt att ÄterstÀlla innehÄllet i slutna nycklar genom de indirekta lÀckorna. . LÀckor identifieras genom analys av aktiviteter i övergÄngsförutsÀgelseblock och tid för Ätkomst till data i minnet. Under experimentet lyckades forskarna framgÄngsrikt demonstrera ÄterstÀllning av 224- och 256-bitars ECDSA-nycklar frÄn det hÄrdvaru-isolerade nyckellagret som anvÀnds i Nexus 5X. För att ÄterstÀlla nyckeln krÀvdes det att cirka 12 000 digitala signaturer genererades, vilket tog mer Àn 14 timmar. För attacken anvÀndes verktygen .
Den huvudsakliga orsaken till problemet Ă€r delningen av gemensamma hĂ„rdvarukomponenter och cache för berĂ€kningar i TrustZone och det primĂ€ra systemet â isoleringen görs pĂ„ nivĂ„ av logisk uppdelning, men med anvĂ€ndning av gemensamma berĂ€kningsblock och med spĂ„r frĂ„n berĂ€kningar och information om övergĂ„ngsadresser som lagras i den gemensamma processor-cachen. Med metoden Prime+Probe, som baseras pĂ„ att mĂ€ta förĂ€ndringen i Ă„tkomsttiden till cachad information, kan man med tillrĂ€ckligt hög precision spĂ„ra datastreams och tecken pĂ„ kodexekvering relaterad till berĂ€kningarna av digitala signaturer i TrustZone genom att kontrollera förekomsten av specifika mönster i cachen.
Största delen av tiden som gÄr Ät för att skapa en digital signatur med ECDSA-nycklar i Qualcomm-chips anvÀnds för att utföra multiplikationsoperationer i cykler med en oförÀndrad initialiseringsvektor för varje signatur (). Om en angripare kan ÄterstÀlla Ätminstone nÄgra bitar av information om denna vektor, finns det möjlighet att genomföra en attack genom sekventiell ÄterstÀllning av hela den privata nyckeln.
I fallet med Qualcomm har tvÄ stÀllen för lÀckage av liknande information identifierats i multiplikationsalgoritmen: vid utförandet av operationer för att söka i tabeller och i koden för villkorlig extraktion av data baserat pÄ det sista bitvÀrdet i vektorn "nonce". Trots att det finns ÄtgÀrder i Qualcomm-koden för att motverka lÀckage av information via sidokanaler, möjliggör den utvecklade attackmetoden att kringgÄ dessa ÄtgÀrder och identifiera flera bitar av vÀrdet pÄ "nonce", vilket Àr tillrÀckligt för att ÄterstÀlla 256-bitars ECDSA-nycklar.
KĂ€lla: opennet.ru
