Implementarea DDIO în cipurile Intel permite unui atac de rețea să detecteze apăsările de taste într-o sesiune SSH

Un grup de cercetători de la Vrije Universiteit Amsterdam și ETH Zurich au dezvoltat o tehnică de atac în rețea NetCAT (Network Cache ATtack), care permite, folosind metode de analiză a datelor prin canale terțe, să se determine de la distanță tastele apăsate de utilizator în timpul lucrului într-o sesiune SSH. Problema apare doar pe serverele care folosesc tehnologii RDMA (Acces direct la memorie de la distanță) și DDIO (I/O directă de date).

Intel consideră, că atacul este dificil de implementat în practică, deoarece necesită accesul atacatorului la rețeaua locală, condiții sterile și organizarea comunicării gazdă folosind tehnologii RDMA și DDIO, care sunt de obicei folosite în rețele izolate, de exemplu, în care calcularea clusterele funcționează. Problema este considerată minoră (CVSS 2.6, CVE-2019-11184) și se recomandă să nu se activeze DDIO și RDMA în rețelele locale în care perimetrul de securitate nu este asigurat și este permisă conectarea clienților nedemni de încredere. DDIO a fost utilizat în procesoarele de server Intel din 2012 (Intel Xeon E5, E7 și SP). Sistemele bazate pe procesoare de la AMD și alți producători nu sunt afectate de problemă, deoarece nu acceptă stocarea datelor transferate prin rețea în memoria cache a procesorului.

Metoda folosită pentru atac seamănă cu o vulnerabilitate "Aruncă ciocanul„, care vă permite să modificați conținutul biților individuali din RAM prin manipularea pachetelor de rețea în sistemele cu RDMA. Noua problemă este o consecință a muncii de minimizare a întârzierilor la utilizarea mecanismului DDIO, care asigură interacțiunea directă a plăcii de rețea și a altor dispozitive periferice cu memoria cache a procesorului (în procesul de procesare a pachetelor de carduri de rețea, datele sunt stocate în cache și preluat din cache, fără a accesa memorie).

Datorită DDIO, memoria cache a procesorului include și date generate în timpul activității rău intenționate în rețea. Atacul NetCAT se bazează pe faptul că plăcile de rețea memorează în mod activ datele, iar viteza de procesare a pachetelor în rețelele locale moderne este suficientă pentru a influența umplerea cache-ului și a determina prezența sau absența datelor în cache prin analiza întârzierilor în timpul datelor. transfer.

Când utilizați sesiuni interactive, cum ar fi prin SSH, pachetul de rețea este trimis imediat după apăsarea tastei, adică. întârzierile dintre pachete se corelează cu întârzierile dintre apăsările de taste. Folosind metode de analiză statistică și ținând cont de faptul că întârzierile dintre apăsările de taste depind de obicei de poziția tastei pe tastatură, este posibilă recrearea informațiilor introduse cu o anumită probabilitate. De exemplu, majoritatea oamenilor tind să tasteze „s” după „a” mult mai repede decât „g” după „s”.

Informațiile depuse în memoria cache a procesorului permit, de asemenea, să se judece timpul exact al pachetelor trimise de placa de rețea atunci când procesează conexiuni precum SSH. Prin generarea unui anumit flux de trafic, un atacator poate determina momentul în care apar date noi în memoria cache asociată cu o anumită activitate din sistem. Pentru a analiza conținutul cache-ului se folosește metoda Prime+Probe, care implică popularea memoriei cache cu un set de referință de valori și măsurarea timpului de acces la acestea atunci când sunt repopulate pentru a determina modificări.

Implementarea DDIO în cipurile Intel permite unui atac de rețea să detecteze apăsările de taste într-o sesiune SSH

Este posibil ca tehnica propusă să poată fi utilizată pentru a determina nu numai apăsările de taste, ci și alte tipuri de date confidențiale depuse în memoria cache a CPU. Atacul poate fi efectuat chiar dacă RDMA este dezactivat, dar fără RDMA eficiența acestuia este redusă și execuția devine semnificativ mai dificilă. De asemenea, este posibil să utilizați DDIO pentru a organiza un canal de comunicație ascuns utilizat pentru a transfera date după ce un server a fost compromis, ocolind sistemele de securitate.

Sursa: opennet.ru

Adauga un comentariu