GhostRace: un atac de execuție speculativ care afectează procesoarele Intel, AMD, ARM și IBM

GhostRace

Vulnerabilitatea GhostRace

Informații despre a nou atac de execuție speculativ, numit GhostRace (listată sub CVE-2024-2193), aceasta este o nouă metodă dezvoltată de cercetătorii de la Vrije Universiteit Amsterdam și IBM pentru a exploata mecanismul de execuție speculativ prezent în procesoarele moderne de la Intel, AMD, ARM și IBM.

Cercetătorii menționează că, GhostRace se concentrează pe manipularea condițiilor speculative ale cursei pentru a accesa zonele de memorie eliberate anterior, care pot duce la extragerea de date sensibile din nucleul Linux, în special în mediile de virtualizare în care un atacator pe un sistem invitat poate compromite securitatea sistemului gazdă sau a altor sisteme invitate.

Cum funcționează atacul se bazează pe executarea speculativă a instrucțiunilor condiționate cu primitive de sincronizare threading, cum ar fi mutex și spinlock.

Dacă procesorul prezice incorect ramuri din codul care se ocupă de aceste operațiuni, se pot face accesări speculative la memoria care a fost deja eliberată. Deși procesorul renunță la aceste accesări după detectarea predicției greșite, urmele de execuție rămân în cache și pot fi recuperate folosind tehnici de analiză pe canal lateral.

GhostRace necesită prezența anumitor secvențe de instrucțiuni în nucleu, cunoscut ca gadgeturi, care sunt folosite pentru execuţia speculativă în funcţie de condiţiile externe controlate de atacator. Aceste gadget-uri Ele sunt formate din secțiuni de cod în care starea este verificată într-o buclă nesfârșită și iese din buclă după eliminarea blocării de acces la resursă. Acest lucru vă permite să declanșați în mod fals o tranziție și să executați instrucțiuni protejate de o blocare, chiar dacă resursa rămâne blocată.

În timpul analizei de vulnerabilitate, care a fost realizat în codul de kernel Linux 5.15.83, a fost dezvăluită prezența a 1283 de dispozitive care ar putea duce la acces speculativ la memoria deja eliberată. Acest tip de atac reprezintă un risc potențial pentru sistemele de virtualizare, pentru orice nucleu de sistem de operare și pentru programele care utilizează primitive de sincronizare a firelor verificate prin instrucțiuni condiționate și rulează pe platforme care permit executarea speculativă a operațiunilor de ramuri, cum ar fi x86, ARM, RISC-V, printre alții.

Pentru a testa vulnerabilitatea, cercetatorii a dezvoltat un prototip de exploatare care demonstrează eficacitatea del atac permiţând extragerea de date din memoria kernel-ului Linux cu o capacitate de 12 KB pe secundă și un nivel de fiabilitate similar atacurilor din clasa Spectre.

L Dezvoltatorii de kernel Linux și companiile producătoare de procesoare au fost informate despre această problemă la sfarsitul anului 2023. AMD a publicat deja un raport despre vulnerabilitate și recomandă utilizarea tehnicilor standard pentru a proteja împotriva atacurilor similare cu Spectre v1. Pe de altă parte, Intel și ARM nu au răspuns încă la această notificare.

Cu toate că Dezvoltatorii de kernel Linux nu au planuri imediate de a implementa serializarea primitivelor sincronizare Din cauza pierderii de performanță, au încorporat deja restricții pentru a proteja împotriva tehnicii de exploatare IPI Storming (CVE-2024-26602). Această tehnică de atac implică întreruperea unui proces la momentul potrivit pentru a oferi o fereastră de timp pentru accesul speculativ la memoria eliberată.

Pentru a atenua acest tip de atac, Se propune utilizarea serializării primitivelor sincronizare prin includerea unei instrucțiuni LFENCE după instrucțiunea cmpxchq care verifică starea blocării. In orice caz, Această măsură de protecție implică o penalizare de performanță de aproximativ 5% în benchmark-ul LMBench, deoarece instrucțiunea LFENCE dezactivează execuția preventivă a instrucțiunilor ulterioare înainte de a comite toate operațiunile anterioare.

În cazul hipervizorului Xen, dezvoltatorii au pregătit modificări pentru a implementa mecanismul de blocare protejat LOCK_HARDEN, similar cu metoda BRANCH_HARDEN folosită mai sus. Cu toate acestea, din cauza potențialului impact negativ asupra performanței și a lipsei de dovezi ale atacurilor în Xen, modul LOCK_HARDEN este dezactivat implicit.

in sfarsit daca esti interesat să afle mai multe despre asta, puteți verifica detaliile în următorul link.


Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: AB Internet Networks 2008 SL
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.