A fost identificată o nouă variantă a atacului Zombieload asupra procesoarelor Intel

Cercetătorii de la Universitatea Tehnică din Graz (Austria) au dezvăluit informații despre noua metodă de atac prin canale secundare ZombieLoad 2.0 (CVE-2019-11135), care permite extragerea informațiilor confidențiale din alte procese, sistemul de operare, mașini virtuale și enclave securizate (TEE, Trusted Execution Environment). Problema afectează doar procesoarele Intel. Componentele pentru blocarea problemei sunt oferite în actualizarea de ieri a microcodului.

Problema se încadrează în clasa MDS (Microarchitectural Data Sampling) și este o variantă modernizată a făcute publice în luna mai a atacului ZombieLoad. ZombieLoad 2.0, la fel ca și alte atacuri din clasa MDS, se bazează pe utilizarea metodelor de analiză prin canale secundare asupra datelor din structurile microarhitecturale (de exemplu, în buffer-ele de umplere (Line Fill Buffer) și de stocare (Store Buffer), în care sunt temporar păstrate datele utilizate în timpul desfășurării operațiunilor Load și Store).

Noua variantă a atacului Zombieload se bazează pe scurgerile care apar în timpul funcționării mecanismului de întrerupere asincronă a operațiunilor (TAA, TSX Asynchronous Abort), implementat în extensia TSX (Transactional Synchronization Extensions), care oferă mijloace pentru a lucra cu memoria tranzacțională, permițând îmbunătățirea performanței aplicațiilor multi-threaded prin excluderea dinamică a operațiunilor inutile de sincronizare (sunt susținute tranzacții atomice care pot fi fie acceptate, fie anulate). În cazul întreruperii, operațiunile efectuate în regiunea de memorie tranzacțională sunt răsturnate.

Întreruperea tranzacției se realizează asincron, iar în acest timp alte fire pot accesa cache-ul, care este folosit de asemenea în regiunea de memorie tranzacțională anihilată. În intervalul dintre începutul și finalizarea efectivă a întreruperii asincrone a tranzacției, nu este exclus ca procesorul, în timpul desfășurării speculative a operațiunii, să poată citi date din buffer-urile interne microarhitecturale și să le transmită într-o operațiune desfășurată speculativ. Apoi va fi identificat conflictul, iar operațiunea speculativă va fi anulată, dar datele vor rămâne în cache și pot fi extrase folosind metode de recuperare a cache-ului prin canale secundare.

Atacul se referă la deschiderea tranzacțiilor TSX și crearea condițiilor pentru întreruperea lor asincronă, moment în care apar condiții pentru scurgeri de conținut din buffer-ele interne, umplute speculativ cu date din operațiunile de citire a memoriei ce se desfășoară pe același nucleu al CPU. Scurgerea este limitată la nucleul fizic curent al CPU (pe care se execută codul atacatorului), însă având în vedere că buffer-ele microarhitecturale sunt utilizate în comun de diferite fire în modul Hyper-Threading, este posibilă apariția scurgerilor de operațiuni cu memoriile efectuate în alte fire ale CPU.

Atacului sunt expuse anumite modele de procesoare Intel Core de generația a opta, a noua și a zecea, precum și Intel Pentium Gold, Intel Celeron 5000, Intel Xeon E, Intel Xeon W și a doua generație de Intel Xeon Scalable. De asemenea, atacului îi sunt expuse și noile procesoare Intel bazate pe microarhitectura Cascade Lake, prezentată în aprilie, care inițial nu era supusă atacurilor RIDL și Fallout. Pe lângă Zombieload 2.0, cercetătorii au identificat și o modalitate de a ocoli metodele anterioare de protecție împotriva atacurilor MDS, care se bazează pe utilizarea instrucțiunii VERW pentru a curăța conținutul buffer-elor microarhitecturale în momentul revenirii din modul kernel în spațiul utilizatorului sau în timpul transferului controlului către sistemul gazdă.

În raportul Intel se afirmă că, în sistemele cu sarcini heterogene, posibilitatea de a efectua un atac este îngreunată, deoarece scurgerea din structurile microarhitecturale acoperă toată activitatea din sistem și atacatorul nu poate influența sursa datelor extrase, adică poate doar să acumuleze informațiile care apar în urma scurgerii și să încerce să identifice printre acestea informații utile, fără a avea posibilitatea de a intercepta în mod direcționat datele legate de adrese specifice de memorie. Cu toate acestea, cercetătorii au publicat un prototip de exploit, care funcționează pe Linux și Windows, și a fost demonstrată posibilitatea de aplicare a atacului pentru a determina hash-ul parolei utilizatorului root.
Este posibil să se realizeze un atac din sistemul gazdă pentru a acumula date care figurează în operațiunile altor sisteme gazdă, mediu gazdă, hypervizor și enclave Intel SGX.

Redați video

Corecțiile pentru blocarea vulnerabilității sunt incluse au fost incluse în baza de cod a nucleului Linux și au intrat în versiunile 5.3.11, 4.19.84, 4.14.154, 4.9.201 și 4.4.201. Actualizările cu kernelul și microcodul au fost deja lansate pentru principalele distribuții (Debian, SUSE/openSUSE, Ubuntu, RHEL, Fedora, FreeBSD). Problema a fost identificată în aprilie, iar soluția a fost coordonată de Intel cu dezvoltatorii sistemelor de operare.

Cea mai simplă metodă de blocare a Zombieload 2.0 este dezactivarea suportului TSX în CPU. Soluția propusă pentru kernelul Linux include mai multe opțiuni de protecție. Prima opțiune oferă parametrul „tsx=on/off/auto”, care permite gestionarea activării extensiei TSX în CPU (valoarea auto dezactivează TSX doar pentru CPU-urile vulnerabile). A doua opțiune de protecție se activează prin parametrul „tsx_async_abort=off/full/full,nosmt” și se bazează pe curățarea bufferelor microarhitecturale în timpul schimbării de context (flagul nosmt dezactivează în plus SMT/Hyper-Threads). Pentru a verifica expunerea sistemului la vulnerabilitate, în sysfs este prevăzut parametrul „/sys/devices/system/cpu/vulnerabilities/tsx_async_abort”.

În plus, în platformei microcod remediată înca o vulnerabilitatea (CVE-2018-12207) în procesoarele Intel, care este de asemenea blocat în noul platformei kernel Linux. Vulnerabilitatea permite poate permite unui atacator neprivilegiat să inițieze un atac de tip denial of service, care duce la blocarea sistemului în starea „Machine Check Error”.
Atacul poate fi realizat dintr-un sistem gazdă. din sistemul de oaspeți.

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