Vulnerabilità in chips Qualcomm chì permette à e chjave private esse estratte da u almacenamiento TrustZone

I ricercatori di u Gruppu NCC scupertu i dettagli vulnerabilità (CVE-2018-11976) in chip Qualcomm, chì permette di determinà u cuntenutu di e chjave di criptografia privata situate in un enclave isolatu Qualcomm QSEE (Qualcomm Secure Execution Environment), basatu nantu à a tecnulugia ARM TrustZone. U prublema si manifesta in più Snapdragon SoC, chì hè diventatu diffusa in i telefoni smartphones basati nantu à a piattaforma Android. E correzioni chì risolve u prublema sò digià inclusu in l'aghjurnamentu Android d'aprile è novi versioni di firmware per i chip Qualcomm. Qualcomm hà pigliatu più di un annu per preparà una correzione; l'infurmazioni nantu à a vulnerabilità sò state inizialmente mandate à Qualcomm u 19 di marzu di u 2018.

Ricurdemu chì a tecnulugia ARM TrustZone permette di creà ambienti protetti isolati da hardware chì sò completamente separati da u sistema principale è eseguite nantu à un processore virtuale separatu cù un sistema operatore specializatu separatu. U scopu principale di TrustZone hè di furnisce l'esekzione isolata di processori per e chjave di criptografia, autentificazione biometrica, dati di pagamentu è altre informazioni cunfidenziale. L'interazzione cù l'OS principale hè realizata indirettamente attraversu l'interfaccia di spedizione. I chjavi privati ​​​​di criptografia sò almacenati in un magazinu di chjave isolatu da hardware, chì, se implementatu bè, ponu impedisce a so fuga se u sistema sottostante hè cumprumissu.

A vulnerabilità hè duvuta à un difettu in l'implementazione di l'algoritmu di trasfurmazione di a curva ellittica, chì hà purtatu à a fuga d'infurmazioni nantu à u prugressu di u prucessu di dati. I ricercatori anu sviluppatu una tecnica di attaccu di canali laterali chì permette di utilizà fughe indirette esistenti per ricuperà u cuntenutu di e chjave private situate in un hardware isolatu. Android Keystore. Leaks sò determinate basatu annantu à l'analisi di l'attività di u bloccu di prediczione di ramu è i cambiamenti in u tempu d'accessu à e dati in memoria. In l'esperimentu, i circadori anu dimustratu cù successu a ricuperazione di e chjavi ECDSA 224 è 256-bit da a magazzina di chjave isolata da hardware utilizata in u smartphone Nexus 5X. A ricuperazione di a chjave hà bisognu di generà circa 12 mila firme digitali, chì hà pigliatu più di 14 ore. Strumenti usati per fà l'attaccu Cachegrab.

A causa principale di u prublema hè a spartera di cumpunenti di hardware cumuni è cache per i calculi in TrustZone è in u sistema principalu - l'isolamentu hè realizatu à u livellu di separazione logica, ma utilizendu unità di computing cumuni è cù tracce di calculi è infurmazioni nantu à u ramu. indirizzi dipositu in a cache di u processatore cumuni. Utilizendu u metudu Prime + Probe, basatu annantu à a valutazione di i cambiamenti in u tempu d'accessu à l'infurmazioni in cache, hè pussibule, cuntrollandu a presenza di certi mudelli in a cache, per monitorà i flussi di dati è i segni di l'esekzione di codice assuciata à i calculi di signature digitale in u cache. TrustZone cù una precisione abbastanza alta.

A maiò parte di u tempu per generà una firma digitale utilizendu chjavi ECDSA in chip Qualcomm hè spesu à fà operazioni di multiplicazione in un ciclu utilizendu un vettore di inizializazione chì ùn hè micca cambiatu per ogni firma (papal). Se l'attaccante pò ricuperà almenu uni pochi di pezzi cù l'infurmazioni nantu à stu vettore, diventa pussibule di fà un attaccu per ricuperà in sequenza tutta a chjave privata.

In u casu di Qualcomm, in l'algoritmu di multiplicazione sò stati identificati dui posti induve tali informazioni sò state filtrate: quandu eseguite operazioni di ricerca in tavule è in u codice di ricuperazione di dati cundiziunali basatu annantu à u valore di l'ultimu bit in u vettore "nonce". Malgradu u fattu chì u codice Qualcomm cuntene misure per contru à e fughe di l'infurmazioni attraversu i canali di terzu, u metudu di attaccu sviluppatu permette di scaccià queste misure è determinà parechji bits di u valore "nonce", chì sò abbastanza per ricuperà e chjave ECDSA 256-bit.

Source: opennet.ru

Add a comment