GDDRHammer at GeForge: dalawang bagong pag-atake ng Rowhammer sa mga GPU

Pangunahing puntos:
  • Bumuo ang mga mananaliksik ng mga pamamaraan upang palakasin ang mga pag-atake ng Rowhammer sa memorya ng GDDR6, na nakakamit ng libu-libong pagbabago sa bit.
  • Minamanipula ng mga pag-atake ng GDDRHammer at GeForge ang memory allocator upang ilagay ang mga page table sa mga vulnerable sector.
  • Ang pagbabago ng kaunti sa page table ay nagbibigay-daan sa attacker na i-redirect ang mga memory pointer sa mga istrukturang kinokontrol ng attacker.
  • Sa pamamagitan ng pagbabago sa field ng pagbubukas ng sistema sa entry ng talahanayan, ang GPU ay makakakuha ng direktang read at write access sa pisikal na memorya ng host.
  • Ang kahinaan ay nakakaapekto sa mga modelong tulad ng RTX 3060 at RTX A6000, na nangangailangan ng pag-activate ng IOMMU bilang pangunahing hakbang sa depensa.

Mga pag-atake ng Rowhammer GPU

Ipinakita ng mga mananaliksik sa seguridad na Ang pisikal na kahinaan ni Rowhammer ay nagdudulot ng matinding banta para sa mga modernong graphics processing unit, na nagtatampok ng dalawang kumpletong attack chain na tinatawag na GeForce at GDDRHammerHindi tulad ng paunang pananaliksik na halos hindi nakapagdulot ng kaunting pagbabago sa bit upang pababain ang hinuha ng mga neural network, ang mga bagong uri ng pag-atakeng ito ay nakakamit ng ganap na kompromiso sa antas ng sistema.

Kapag nagpapatakbo ng standard, unprivileged code sa isang NVIDIA GPU, isang Maaaring sirain ng isang attacker ang mga istruktura ng internal memory ng device para makakuha ng arbitraryong read at write access. sa buong pisikal na memorya ng host CPU. Ang cross-manipulation na ito ay nagbibigay-daan sa attacker na dagdagan ang mga pribilehiyo at makakuha ng superuser console sa core operating system.

Pag-iwas sa mga pagpapagaan at mga pattern

Ang tagumpay ng mga pag-atakeng ito ay nakasalalay sa mga walang kapantay na pamamaraan. upang maiwasan ang mga mitigasyon ng target row refresh (TRR) na ipinatupad sa memorya ng GDDR6. Ang pananaliksik ng GeForge nagpapakilala ng mga hindi pare-parehong pattern na sumasaklaw sa maraming agwat ng pag-update, na binabago ang intensidad at pagkakasunud-sunod ng mga pag-activate ng mga hanay ng memorya upang maiwasan ang pagtukoy ng hardware.

Upang ilapat ang mga pisikal na mapa ng address na nakuha sa pamamagitan ng offline profiling sa mga dynamic na alokasyon ng memorya, Bumuo sila ng isang pamamaraan ng page anchoring na gumagamit ng nonlinear assignment mula sa mga pisikal na address hanggang sa mga set ng L2 cache.

Sabay-sabay, Natuklasan ng pangkat ng GDDRHammer na ang mga hanay ng memorya ng DRAM sa mga graphics card Sinusundan nila ang isang hindi monotonous na geometric arrangementDahil dito, nakabuo sila ng lubos na epektibong mga double-sided pattern kahit na tila malayo ang mga pisikal na address. Sa pamamagitan ng pagtatalaga ng mga indibidwal na gawain sa memory bank sa iba't ibang streaming multiprocessor at bahagyang pag-synchronize ng pagpapatupad, nagawa nilang ma-maximize ang pagganap ng activation habang iniiwasan ang safety sampling.

Ang mga pamamaraang ito ay nagbunga ng napakalaking resulta; Ang pamamaraang GeForge ay nagdulot ng 1,171 bit na pagbabago sa isang consumer RTX 3060 at 202 sa isang propesyonal na RTX A6000., habang ang GDDRHammer ay umabot sa average na 1,032 na pagbabago bawat gigabyte, na kumakatawan sa 64 na beses na pagtaas kumpara sa mga nakaraang pagtatangka.

Pagmamanipula ng mga talahanayan ng pahina at memory massage

Upang gawing armas ang mga kaguluhang elektrikal na ito, ang Tinatarget ng mga umaatake ang mga hierarchical page table na pinamamahalaan ng memory management unit ng GPU.Dahil karaniwang inilalaan ng controller ang mga istrukturang ito sa mga protektado o hindi mahuhulaang rehiyon, ang mga exploit ay umaasa sa mga pamamaraan ng memory massaging upang pilitin ang paglalagay ng mga entry sa page table sa mga pisikal na lokasyon na alam ng attacker na mahina.

Ang pag-atake Gumagamit ang GDDRHammer ng mga shared memory mapping upang punan ang allocator, pinapaikli ang agwat sa pagitan ng mga rehiyon ng talahanayan ng pahina at memoryang kontrolado ng gumagamit. Ang GeForge ay partikular na nakatuon sa pagsira ng mga entry sa Direktoryo ng Mga Pahina 0 (PD0).

Sa pamamagitan ng maingat na paglalaan at pagpapalaya ng mga fragment ng Unified Virtual Memory, direktang idinidirekta ng attacker ang paglikha ng mga bagong istruktura ng PD0 sa isang partikular na 4-kilobyte na subpage. Kapag nasa posisyon na, bahagyang magbabago ang proseso sa loob ng pisikal na address pointer ng entry, na ire-redirect ito sa isang pekeng page table na ganap na kinokontrol ng malisyosong code.

Pagpapataas ng pribilehiyo sa pamamagitan ng PCIe bus

El Ang kontrol sa page table ng graphics card ay direktang isinasalin sa kontrol sa central processor ng computer.Ang mga entry sa talahanayan ng pahina ng NVIDIA ay naglalaman ng isang partikular na patlang na nagdidikta kung ang nauugnay na pisikal na address ay nasa lokal na memorya ng device o sa memorya ng host system. Sa pamamagitan ng pagbabago sa field na ito sa forged entry, anumang operasyon pagbabasa o pagsusulat sa ibang pagkakataon Ang datos na nabuo ng GPU ay direktang ipinapadala sa pamamagitan ng PCIe bus patungo sa pisikal na RAM. ng host.

Ang direktang pag-access na ito sa memorya ay lumalampas sa sariling memory management unit ng CPU at sa mga proteksyon sa write copy ng operating system. Sa praktikal na demonstrasyon nito, ang mga mananaliksik Ginamit nila ang kakayahang ito upang i-overwrite ang C standard library code segment nang direkta sa memorya ng host. Partikular, nagpasok sila ng machine code sa log closing function, na kalaunan ay isinagawa ng isang lehitimong programa na may mas mataas na pribilehiyo, na agad na nagbigay sa attacker ng ganap na access sa system.

Paglaganap ng hardware at mga hakbang sa pagpapagaan

LaKinumpirma ng malawakang pagsusuri na laganap ang kahinaang ito sa kasalukuyang hardware.Sinuri ng pag-aaral ng GDDRHammer ang 25 high-end graphics card, at natuklasan na 16 sa 17 modelo ng RTX A6000 na nakabatay sa arkitektura ng Ampere ang madaling kapitan ng mga pag-atakeng ito. Bagama't maaaring mabawasan ng error-correcting code (ECC) memory ang pagiging maaasahan ng pag-atake sa pamamagitan ng pagwawasto ng mga single-bit error, ang feature na ito ay hindi pinagana bilang default sa maraming workstation card dahil sa performance penalty at ganap na wala sa mga modelong pangmaramihang merkado.

Ang pinakamabisang agarang depensa laban sa kompromiso ng host ay ang aplikasyon ng isang Input-Output Memory Management Unit (IOMMU). Kapag pinagana, nililimitahan ng IOMMU ang direktang pag-access ng GPU sa mga hayagang awtorisadong host page frame, na nagpapawalang-bisa sa forged open mapping. Gayunpaman, binanggit ng parehong research team na ang IOMMU ay madalas na hindi pinagana bilang default sa mga komersyal na sistema ng Linux para sa mga kadahilanang compatibility, na nag-iiwan ng malaking bilang ng mga makina na mahina laban sa attack vector na ito.

Panghuli, kung interesado kang matuto nang higit pa tungkol dito, maaari mong konsultahin ang mga detalye sa sumusunod na link.