Forskare frÄn Toronto University har presenterat den första Rowhammer-attacken som anvÀnds för att förvrÀnga innehÄllet i grafiskt minne. Möjligheten att genomföra en attack som leder till ersÀttning av upp till 8 bitar data har demonstrerats pÄ det diskreta GPU-kortet NVIDIA A6000 med GDDR6-minne. Ett praktiskt exempel visar hur man kan utnyttja en sÄdan förvrÀngning för att pÄverka genomförandet av maskininlÀrningsmodeller och dÀrigenom uppnÄ en betydande (frÄn 80% till 0.1%) minskning av noggrannheten i resultaten, genom att Àndra vÀrdet av bara en bit.

Hitintills har skapandet av Rowhammer-attacker för grafiskt minne varit komplicerat pÄ grund av svÄrigheten att faststÀlla den fysiska layouten av minnet i GDDR-chip, stora fördröjningar vid minnesÄtkomst (4 gÄnger lÄngsammare) och högre uppdateringsfrekvenser för minnet. Dessutom har forskning hindrats av anvÀndningen av proprietÀra skyddsmekanismer mot manipulation i GDDR-chip, vilket krÀvde att specialiserade hÄrdvarutestbÀnkar baserat pÄ FPGA skapades för analys.
För att studera grafiskt minne har forskarna utvecklat en ny teknik för omvÀnd ingenjörskonst av GDDR DRAM, och i attacken har tekniker för att optimera minnesÄtkomst som anvÀnds vid parallell berÀkning anvÀnts som intensitetsförstÀrkare för Ätkomst till individuella celler. En lÄg-nivÄ CUDA-kod anvÀndes för att genomföra attacken mot NVIDIA GPU.
I anvÀndarkoden för CUDA görs inga anrop till fysiska minnesadresser, men i NVIDIA-drivrutinen Äterspeglades virtuell minne i samma fysiska minne, vilket forskarna utnyttjade för att berÀkna förskjutningen av det virtuella minnet och faststÀlla layouten av minnesbankerna. Identifieringen av Ätkomsten till olika minnesbanker genomfördes genom att analysera fördröjningar, som varierade vid Ätkomst till en eller flera bankar.
I system som gemensamt anvĂ€nder GPU, sĂ„som servrar För att utföra modeller av maskininlĂ€rning tillĂ„ter attacken en anvĂ€ndare att Ă€ndra innehĂ„llet i videominnet med data frĂ„n en annan anvĂ€ndare. Som skyddsĂ„tgĂ€rd rekommenderar företaget NVIDIA att aktivera felkorrigeringskoder (ECC, Error Correction Codes) med kommandot ânvidia-smi -e 1â eller anvĂ€nda serier av grafikkort som stöder OD-ECC (On-Die ECC), sĂ„som GeForce RTX 50, RTX PRO, GB200, B200, B100, H100, H200, H20 och GH200.
Enligt forskare leder aktivering av ECC pÄ system med GPU A6000 till en minskning av prestandan vid utförande av modeller för maskininlÀrning pÄ ungefÀr 10% och en minskning av minneskapaciteten pÄ 6,25%. Verktygen för att utföra attacken och genomföra omvÀnd ingenjörskonst av lÄg nivÄ av videominne pÄ system med NVIDIA GPU har publicerats pÄ GitHub.
RowHammer-attacken möjliggör förvrÀngning av innehÄllet i enskilda bitar av DRAM-minne genom cykliskt lÀsande av data frÄn angrÀnsande minnesceller. Eftersom DRAM-minnet utgörs av en tvÄdimensionell matris av celler, dÀr varje cell bestÄr av en kondensator och en transistor, leder kontinuerligt lÀsande av samma minnesomrÄde till spÀnningsfluktuationer och anomalier som orsakar en liten laddningsförlust i angrÀnsande celler. Om lÀsintensiteten Àr hög kan den angrÀnsande cellen förlora en tillrÀckligt stor mÀngd laddning sÄ att den efterföljande regenereringscykeln inte hinner ÄterstÀlla dess ursprungliga tillstÄnd, vilket leder till en förÀndring av det lagrade datavÀrdet i cellen.
Rowhammer-attackmetoden föreslogs 2014, varefter en katt-och-rĂ„tta-lek började mellan sĂ€kerhetsforskare och hĂ„rdvarutillverkare â minneschipstillverkare försökte blockera sĂ„rbarheten medan forskare hittade nya sĂ€tt att kringgĂ„ denna. För att skydda mot Rowhammer har chipstillverkare lagt till TRR-mekanismen (Target Row Refresh), men det har visat sig att den blockerar utstĂ„ende cellförĂ€ndringar endast i vissa fall och inte skyddar mot alla möjliga angrepp. Attackmetoder har utvecklats för DDR3-, DDR4- och DDR5-chips pĂ„ system med Intel-, AMD- och ARM-processorer. Det har ocksĂ„ hittats sĂ€tt att kringgĂ„ ECC-felkorrigeringar, samt förslag pĂ„ angripsmetoder via nĂ€tverk och genom att köra JavaScript-kod i webblĂ€saren.
KĂ€lla: opennet.ru
