Kwetsberens yn Qualcomm-chips wêrtroch privee kaaien kinne wurde ekstrahearre út TrustZone-opslach

Undersikers fan NCC Group ûntdutsen de details kwetsberens (CVE-2018-11976) yn Qualcomm-chips, wêrtroch jo de ynhâld fan partikuliere fersiferingskaaien kinne bepale yn in isolearre enklave Qualcomm QSEE (Qualcomm Secure Execution Environment), basearre op ARM TrustZone technology. It probleem manifestearret him yn measte Snapdragon SoC, dy't wiidferspraat wurden is yn smartphones basearre op it Android-platfoarm. De reparaasjes dy't it probleem reparearje binne al ynbegrepen yn 'e april Android-fernijing en nije firmware-releases foar Qualcomm-chips. It duorre Qualcomm mear dan in jier om in fix te meitsjen; ynformaasje oer de kwetsberens waard yn earste ynstânsje stjoerd nei Qualcomm op maart 19, 2018.

Lit ús ûnthâlde dat ARM TrustZone technology kinne jo meitsje hardware-isolearre beskerme omjouwings dy't folslein skieden fan it haadsysteem en rinne op in aparte firtuele prosessor mei help fan in apart spesjalisearre bestjoeringssysteem. It haaddoel fan TrustZone is om isolearre útfiering fan processors te leverjen foar fersiferingskaaien, biometryske autentikaasje, betellingsgegevens en oare fertroulike ynformaasje. Ynteraksje mei it haad OS wurdt yndirekt útfierd fia de ferstjoerynterface. Privee fersiferingskaaien wurde opslein yn in hardware-isolearre kaaiwinkel, dy't, as goed ymplementearre, har lekkage kin foarkomme as it ûnderlizzende systeem kompromittearre is.

De kwetsberens komt troch in flater yn 'e ymplemintaasje fan it elliptyske krommeferwurkingsalgoritme, wat late ta lekkage fan ynformaasje oer de fuortgong fan gegevensferwurking. Ûndersikers hawwe ûntwikkele in side-kanaal oanfal technyk wêrmei it brûken fan besteande yndirekte lekkages te herstellen de ynhâld fan privee kaaien leit yn in hardware-isolearre Android Keystore. Lekken wurde bepaald op basis fan analyze fan 'e aktiviteit fan it tûkefoarsizzingsblok en feroaringen yn' e tagongstiid ta gegevens yn it ûnthâld. Yn it eksperimint demonstreare de ûndersikers mei súkses it herstel fan 224- en 256-bit ECDSA-kaaien fan 'e hardware-isolearre kaaiwinkel brûkt yn' e Nexus 5X-smartphone. It weromheljen fan de kaai fereasket it generearjen fan sawat 12 tûzen digitale hantekeningen, wat mear dan 14 oeren duorre. Tools brûkt om de oanfal út te fieren Cachegrab.

De wichtichste oarsaak fan it probleem is it dielen fan mienskiplike hardwarekomponinten en cache foar berekkeningen yn 'e TrustZone en yn it haadsysteem - isolaasje wurdt útfierd op it nivo fan logyske skieding, mar mei gebrûk fan mienskiplike komputerienheden en mei spoaren fan berekkeningen en ynformaasje oer branch adressen wurde dellein yn de mienskiplike prosessor cache. Mei it brûken fan de Prime + Probe-metoade, basearre op it beoardieljen fan wizigingen yn tagongstiid ta cache-ynformaasje, is it mooglik, troch de oanwêzigens fan bepaalde patroanen yn 'e cache te kontrolearjen, gegevensstreamen te kontrolearjen en tekens fan koade-útfiering ferbûn mei de berekkeningen fan digitale hantekeningen yn TrustZone mei frij hege krektens.

It grutste part fan 'e tiid om in digitale hantekening te generearjen mei ECDSA-kaaien yn Qualcomm-chips wurdt bestege oan it útfieren fan fermannichfâldigingsoperaasjes yn in lus mei in initialisaasjevektor dy't net feroare is foar elke hantekening (nuncio). As de oanfaller op syn minst in pear bits weromhelje kin mei ynformaasje oer dizze fektor, wurdt it mooglik om in oanfal út te fieren om sequentieel de folsleine privee kaai werom te heljen.

Yn it gefal fan Qualcomm, twa plakken dêr't sokke ynformaasje waard útlekt waarden identifisearre yn it fermannichfâldigjen algoritme: by it útfieren fan opsykjen operaasjes yn tabellen en yn de betingst gegevens opheljen koade basearre op de wearde fan it lêste bit yn de "nonce" vector. Nettsjinsteande it feit dat Qualcomm-koade maatregels befettet om ynformaasjelekken troch kanalen fan tredden tsjin te gean, lit de ûntwikkele oanfalmetoade jo dizze maatregels omgean en ferskate bits fan 'e "nonce" wearde bepale, dy't genôch binne om 256-bit ECDSA-kaaien te herstellen.

Boarne: opennet.ru

Add a comment