ZenHammer — metoda napada za iskrivljavanje sadržaja memorije na platformama AMD Zen

Istraživači s Tehničkog sveučilišta u Zurichu razvili su ZenHammer napad, koji je varijanta RowHammer napada za promjenu sadržaja pojedinih bitova dinamičke radne memorije (DRAM), prilagođena za korištenje na platformama s AMD procesorima. Raniji RowHammer napadi bili su ograničeni na sustave s Intel procesorima, ali istraživanje je pokazalo da se izobličenja memorijskih ćelija također mogu postići na platformama s AMD kontrolerima memorije.

Rad metode demonstriran je na AMD Zen 2 i Zen 3 sustavima s DDR4 memorijom od tri vodeća proizvođača (Samsung, Micron i SK Hynix). Napad uspješno zaobilazi implementirani mehanizam TRR (Target Row Refresh) u memorijskim čipovima, koji je usmjeren na zaštitu od izobličenja memorijskih ćelija u susjednim redovima. Prema procjenama istraživača, sustavi temeljen na CPU AMD Zen 3 su više ranjivi nego sustavi s Intel Coffee Lake procesorima, i lakše ih je i učinkovitije napasti. Na AMD Zen 2 sustavima, izobličenja ćelija postignuta su na 7 od 10 testiranih DDR4 čipova, dok su na Zen 3 sustavima postignuta na 6 od 10. Istraživači su također analizirali mogućnost napada na AMD Zen 4 sustave s DDR5 memorijom, ali metoda napada razvijena za DDR4 uspješno je reprodukovana samo na 1 od 10 testiranih DDR5 čipova, pri čemu sama mogućnost napada nije isključena, ali zahtijeva razvoj učinkovitijih obrazaca čitanja pogodnih za DDR5 uređaje.

Za rad s AMD čipovima, ranije razvijeni eksploit koji mijenja sadržaj zapisa u tablici stranica memorije (PTE, page table entry) prilagođen je za stjecanje privilegija jezgre, zaobilazeći provjeru lozinke/punomoći putem modifikacije memorije sudo procesa i oštećujući pohranjeni otvoreni RSA-2048 ključ u OpenSSH za rekonstrukciju privatnog ključa. Napad na memorijske stranice reproduciran je na 7 od 10 testiranih DDR4 čipova, napad na RSA ključ na 6 čipova, a napad na sudo na 4 čipa, pri čemu je vrijeme napada iznosilo 164, 267 i 209 sekundi, redom.

ZenHammer - metoda napada za iskrivljavanje sadržaja memorije na AMD Zen platformama

Metoda se također može primijeniti za napad na sustav putem preglednika, radi unošenja izmjena iz virtualnih mašina ili za organizaciju napada na mreži. Na GitHubu pod MIT licencom objavljen je izvorni kod alata DARE za obrnutu inženjering rasporeda adresa u memoriji DRAM, kao i dva seta alata za fuzzing testiranje iskrivljenja bitova u memoriji — ddr4_zen2_zen3_pub za DDR4 čipove (Zen 2 i Zen 3) i ddr5_zen4_pub za DDR5 čipove (Zen 4), koji se mogu koristiti za provjeru vlastitih sustava na podložnost napadu.

ZenHammer - metoda napada za iskrivljavanje sadržaja memorije na AMD Zen platformama

Za iskrivljenje bitova primjenjuje se metoda RowHammer, koja se temelji na tome da u DRAM memoriji, koja predstavlja dvodimenzionalnu mrežu ćelija sastavljenih od kondenzatora i tranzistora, neprekidno čitanje istog područja memorije dovodi do fluktuacije napona i anomalija, uzrokujući malu izgubljenost naboja susjednih ćelija. Ako je intenzitet čitanja velik, susjedna ćelija može izgubiti dovoljno velike količine naboja i sljedeći ciklus regeneracije ne uspijevaju vratiti njezino prvotno stanje, što dovodi do promjene vrijednosti spremljenog u toj ćeliji. U istraživanju su otkrivene osobitosti mehanizama mapiranja fizičke memorije i sinkronizacije s ažuriranjem memorije koje se koriste u AMD procesorima, omogućivši rekonstrukciju niskonivoe adresacije DRAM-a, određivanje adresa susjednih ćelija, razvoj metoda za zaobilaženje keširanja, kao i izračun obrazaca i frekvencije operacija koje dovode do gubitka naboja.

Za zaštitu od RowHammer proizvođači čipova primjenjuju mehanizam TRR (Target Row Refresh), koji blokira iskrivljenje ćelija u posebnim slučajevima, ali ne štiti od svih mogućih varijanti napada. Najefikasnija metoda zaštite ostaje korištenje memorije s kodovima korekcije grešaka (ECC), koja značajno otežava, ali potpuno ne isključuje provođenje napada klase RowHammer. Smanjenje vjerojatnosti uspješnog napada također omogućuje povećanje frekvencije regeneracije memorije.

Tvrtka AMD objavila je izvješće o problemu u kojem se navodi da procesori AMD koriste kontrolere memorije koji su u skladu s DDR specifikacijama. Budući da uspješnost napada ovisi prvenstveno o postavkama sustava i DRAM memoriji, za pitanja u vezi s rješavanjem problema obratite se proizvođačima memorije i sustava. Među postojećim metodama za otežavanje provođenja Rowhammer napada spominje se korištenje ECC memorije, povećanje frekvencije regeneracije memorije, isključivanje modea odgođene regeneracije i korištenje procesora s kontrolerima koji podržavaju MAC (Maximum Activate Count) način za DDR4 (1., 2. i 3. generacija AMD EPYC „Naple“, „Rome“ i „Milan“) i RFM (Refresh Management) za DDR5 (4. generacija AMD EPYC).

Izvor: opennet.ru

Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere | ProHoster