TikTag — atac asupra mecanismului de execuție speculativă în CPU ARM, care permite ocolirea protecției MemTag.

Un grup de cercetători de la Universitatea din Seul și compania Samsung a dezvoltat o tehnică de atac asupra procesorilor ARM, numită TikTag, care poate fi utilizată pentru a ocoli mecanismul hardware de protecție MemTag (MTE, Memory Tagging Extension) existent în cipurile bazate pe arhitectura ARMv8.5-A. Atacul permite determinarea conținutului etichetelor TikTag pentru adrese aleatorii de memorie, din cauza scurgerilor de date care apar în urma execuției speculative a instrucțiunilor CPU.

Tehnologia MemTag oferă posibilitatea de a asocia etichete cu zone din memorie și de a organiza verificarea corectitudinii utilizării pointer-ilor pentru a preveni exploatarea vulnerabilităților cauzate de accesarea blocurilor de memorie deja eliberate, suprascrierea buffer-ului și accesarea înainte de inițializare. Când se folosește MemTag, pentru fiecare 16 octeți de memorie fizică se generează o etichetă de 4 biți, care servește ca un fel de cheie pentru accesarea acelei memorii. Eticheta poate fi generată de aplicație pentru zona de memorie alocată prin instrucțiuni speciale ale CPU și apoi stocată în biții superiori neutilizați ai pointer-ului. Atunci când se accesează memoria utilizând un pointer etichetat, procesorul verifică potrivirea etichetei asociate pointer-ului cu etichetele asociate blocurilor de memorie și permite accesul doar dacă etichetele coincid.

Metoda de atac propusă permite determinarea etichetelor asociate blocurilor de memorie și ocolirea protecției MemTag. Cercetătorii au demonstrat posibilitatea de a executa atacul TikTag prin exploatarea vulnerabilităților din nucleul Linux și browserul Chrome, utilizând secvențele de instrucțiuni existente în aceste produse (gadgets) care duc la execuția speculativă a codului. Astfel de gadgets, atunci când sunt executate în modul de execuție speculativ al codului care lucrează cu pointer-e, provoacă citirea metadatelor MemTag în funcție de condițiile externe, asupra cărora atacatorul poate influența. După determinarea unei previziuni gresite, rezultatul execuției speculative este abandonat, dar datele obținute rămân în cache și pot fi ulterior extrase prin analiza canalelor laterale. Probabilitatea reușitei în ocolirea protecției MemTag în testele efectuate este estimată la 95% atunci când atacul este realizat într-un interval de aproximativ 4 secunde.

TikTag - un atac asupra mecanismului de execuție speculativă în CPU ARM, care permite ocolirea protecției MemTag

Au fost descoperite două tipuri de gadgeturi care duc la scurgeri de informații despre etichetele MemTag. În primul caz, execuția speculativă apare dintr-o predicție greșită a saltului, iar condițiile pentru rularea gadgetului pot fi create prin manipularea apelurilor de sistem. În al doilea caz
execuția speculativă apare dintr-o eroare de predicție a relației dintre operațiunile de citire și scriere în utilizarea optimizării STLF (Store-To-Load-Forwarding), ceea ce permite alegerea etichetei, evaluând starea cache-ului (dacă eticheta se potrivește, valoarea va fi redirecționată direct din comanda anterioară «store» în operațiunea «load» și va schimba starea cache-ului). Primul tip de gadgeturi este potrivit pentru atacarea nucleului Linux, iar al doilea pentru motorul JavaScript V8 folosit în browserele bazate pe Chromium. Un prototip al instrumentarului pentru efectuarea atacului a fost publicat pe GitHub.

TikTag - un atac asupra mecanismului de execuție speculativă în CPU ARM, care permite ocolirea protecției MemTagTikTag - un atac asupra mecanismului de execuție speculativă în CPU ARM, care permite ocolirea protecției MemTag

Compania ARM a confirmat posibilitatea de a efectua un atac pe sistemele cu procesoare Cortex-X2, Cortex-X3, Cortex-A510, Cortex-A520, Cortex-A710, Cortex-A715 și Cortex-A720, dar nu intenționează să facă modificări la CPU pentru a bloca problema, deoarece arhitectura MemTag presupune că etichetele nu sunt date secrete pentru aplicații. În codul sursă Chromium, problema rămâne, de asemenea, nerezolvată, deoarece în browserul Chrome protecția bazată pe MemTag nu este aplicată implicit. Echipa responsabilă pentru securitatea platformei Android a recunoscut posibilitatea unui atac asupra dispozitivelor Pixel 8, care utilizează protecția MemTag, a adăugat remedieri pentru a bloca scurgerile și și-a exprimat disponibilitatea de a plăti recompense pentru vulnerabilitățile găsite.

Ca metode de ocolire pentru a bloca atacul, cercetătorii sugerează utilizarea instrucțiunilor sb sau isb pentru a interzice execuția speculativă în timpul desfășurării operațiunilor critice cu memoria sau introducerea unui umplutură între instrucțiunile de ramificare și instrucțiunile de acces la memorie din alte instrucțiuni.

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster