Istraživači iz NCC grupe
Podsjetimo, ARM TrustZone tehnologija vam omogućava da kreirate hardverski izolovana zaštićena okruženja koja su potpuno odvojena od glavnog sistema i rade na zasebnom virtuelnom procesoru koristeći poseban specijalizovani operativni sistem. Glavna svrha TrustZone je da obezbedi izolovano izvršavanje procesora za ključeve za šifrovanje, biometrijsku autentifikaciju, podatke o plaćanju i druge poverljive informacije. Interakcija sa glavnim OS se vrši indirektno preko dispečerskog interfejsa. Privatni ključevi za enkripciju pohranjuju se unutar hardverski izolirane skladišta ključeva, koja, ako se pravilno implementira, može spriječiti njihovo curenje ako je osnovni sistem kompromitovan.
Ranjivost je uzrokovana nedostatkom u implementaciji algoritma obrade eliptičke krive, što je dovelo do curenja informacija o napretku obrade podataka. Istraživači su razvili tehniku napada sa strane kanala koja omogućava korištenje postojećih indirektnih curenja za oporavak sadržaja privatnih ključeva koji se nalaze u hardverski izolovanoj
Glavni uzrok problema je deljenje zajedničkih hardverskih komponenti i keša za proračune u TrustZone i u glavnom sistemu - izolacija se vrši na nivou logičkog razdvajanja, ali korišćenjem uobičajenih računarskih jedinica i sa tragovima proračuna i informacijama o granama. adrese koje se pohranjuju u zajedničku procesorsku keš memoriju. Koristeći Prime+Probe metodu, zasnovanu na procjeni promjena u vremenu pristupa keširanim informacijama, moguće je, provjerom prisutnosti određenih obrazaca u kešu, pratiti tokove podataka i znakove izvršavanja koda koji su povezani sa proračunima digitalnih potpisa u TrustZone sa prilično visokom preciznošću.
Većina vremena za generiranje digitalnog potpisa pomoću ECDSA ključeva u Qualcomm čipovima se troši na izvođenje operacija množenja u petlji koristeći vektor inicijalizacije koji je nepromijenjen za svaki potpis (
U slučaju Qualcomm-a, u algoritmu množenja identificirana su dva mjesta gdje su takve informacije procurile: prilikom izvođenja operacija pretraživanja u tabelama i u kodu za uslovno preuzimanje podataka na osnovu vrijednosti posljednjeg bita u vektoru „nonce“. Unatoč činjenici da Qualcommov kod sadrži mjere za suzbijanje curenja informacija kroz kanale trećih strana, razvijena metoda napada omogućava vam da zaobiđete ove mjere i odredite nekoliko bitova “nonce” vrijednosti, koji su dovoljni za oporavak 256-bitnih ECDSA ključeva.
izvor: opennet.ru