Un grup de cercetători în domeniul securității cibernetice a dezvoltat iLeakage, un instrument sofisticat destinat exploatării vulnerabilităților dispozitivelor cu chip-uri din seriile A si M, adica iPhone, iPad sau Mac-uri. iLeakage funcționează prin intermediul unui site web, care, atunci când este vizitat de un dispozitiv vulnerabil, utilizează JavaScript pentru a deschide pe ascuns un alt site web la alegerea atacatorului și pentru a recupera conținutul afișat într-o fereastră pop-up.
Cum Funcționează iLeakage pentru a ataca iPhone
Cercetătorii au reușit să folosească iLeakage pentru a recupera istoricul vizualizărilor pe YouTube, conținutul unei căsuțe de e-mail Gmail — când utilizatorul este logat — și o parolă în timp ce aceasta era completată automat de un manager de cparole. Odată vizitat, site-ul iLeakage necesită aproximativ cinci minute pentru a profila un iPhone sau Mac și, în medie, de aproximativ alte 30 de secunde pentru a extrage un cod secret de 512 biți, cum ar fi un șir de 64 de caractere.
Implicațiile de securitate pentru iPhone si Mac
„Arătăm cum un atacator poate forta Safari să afișeze o pagină web arbitrară, recuperând ulterior informații sensibile din aceasta prin intermediul execuției speculative”, au scris cercetătorii pe un site web informativ. Ei au demonstrat cum Safari pentru iPhone si Mac ii permite unei pagini web malițioase să recupereze secrete din ținte de înaltă valoare, cum ar fi conținutul căsuței de e-mail Gmail. În final, au demonstrat și recuperarea parolelor, în cazul în care acestea sunt completate automat de manageri de credențiale.
Provocările tehnice și protecția iPhone sau Mac
Recuperarea informațiilor confidențiale din iPhone sau Mac a fost posibilă prin explorarea unui canal lateral nou descoperit într-o funcție de îmbunătățire a performanței cunoscută sub numele de execuție speculativă, care este încorporată în aproape toate CPU-urile moderne. Transferul datelor de la memoria sistemului principal la un CPU necesita mult timp. Pentru a reduce timpul de așteptare, CPU-urile moderne execută instrucțiuni imediat ce datele necesare devin disponibile, și nu în ordine secvențială.
Un ingredient cheie este predicția căilor pe care CPU-ul este probabil să le urmeze. Când predicția este corectă, sarcina este completată mai repede decât ar fi fost în alt mod. Când nu este, CPU-ul va abandona calea greșită și va urma o nouă cale corectă. Deși CPU-urile pot inversa majoritatea efectelor, cercetătorii vulnerabilitatilor Spectre și Meltdown au descoperit că anumite artefacte la nivel microarhitectural, inclusiv ca stările cache-ului și predictorului, nu puteau fi restaurate.
Această perspectivă le-a permis cercetătorilor să conceapă atacuri care induceau în eroare CPU-urile Intel și AMD, determinându-le să prezică greșit instrucțiuni sensibile care transferau secrete de la o aplicație la alta, o încălcare gravă a unei limite de securitate esențiale.
De-a lungul anilor, producătorii de CPU-uri și software au dezvoltat o serie de metode pentru a atenua atacurile bazate pe execuția speculativă. O metodă cheie de atenuare a fost limitarea capacității unui browser sau a altei aplicații de a măsura timpul precis pe care un CPU îl ia pentru a efectua o anumită operațiune.
În browsere, alte mitigări sunt implementate sub formă de protecții cunoscute sub numele de adresare comprimată pe 35 de biți și otrăvirea valorilor. Cea mai mare provocare – și este considerabilă – este nivelul înalt de expertiză tehnică necesar. Un atacator trebuie să aibă nu doar ani de experiență în exploatarea vulnerabilităților de execuție speculativă în general, dar trebuie și să fi inversat complet cipurile seriilor A și M din iPhone si Mac, pentru a obține informații despre canalul lateral pe care îl conțin. Nu există niciun indiciu că această vulnerabilitate a fost vreodată descoperită anterior, cu atât mai puțin exploatată activ în mediul online.