Neskatoties uz papildu aizsardzību, DDR4 atmiņas mikroshēmas joprojām ir neaizsargātas pret RowHammer uzbrukumiem

Pētnieku komanda no Vrije Universiteit Amsterdam, ETH Cīrihes un Qualcomm notika pētījums par aizsardzības efektivitāti pret klases uzbrukumiem, ko izmanto mūsdienu DDR4 atmiņas mikroshēmās RowHammer, ļaujot mainīt dinamiskās brīvpiekļuves atmiņas (DRAM) atsevišķu bitu saturu. Rezultāti bija neapmierinoši, un lielāko ražotāju DDR4 mikroshēmas joprojām ir paliek neaizsargāts (CVE-2020-10255).

RowHammer ievainojamība ļauj sabojāt atsevišķu atmiņas bitu saturu, cikliski nolasot datus no blakus esošajām atmiņas šūnām. Tā kā DRAM atmiņa ir divdimensiju šūnu masīvs, katrs sastāv no kondensatora un tranzistora, viena un tā paša atmiņas apgabala nepārtrauktas nolasīšanas rezultātā rodas sprieguma svārstības un anomālijas, kas rada nelielu lādiņa zudumu blakus esošajās šūnās. Ja nolasīšanas intensitāte ir pietiekami augsta, tad šūna var zaudēt pietiekami lielu lādiņa daudzumu un nākamajā reģenerācijas ciklā nebūs laika atjaunot sākotnējo stāvokli, kas novedīs pie šūnā saglabāto datu vērtības izmaiņām. .

Lai bloķētu šo efektu, mūsdienu DDR4 mikroshēmās tiek izmantota TRR (Target Row Refresh) tehnoloģija, kas paredzēta, lai novērstu šūnu bojājumus RowHammer uzbrukuma laikā. Problēma ir tā, ka nav vienotas pieejas TRR ieviešanai, un katrs CPU un atmiņas ražotājs interpretē TRR savā veidā, piemēro savas aizsardzības iespējas un neatklāj ieviešanas detaļas.
Izpētot ražotāju izmantotās RowHammer bloķēšanas metodes, bija viegli atrast veidus, kā apiet aizsardzību. Pārbaudot, izrādījās, ka ražotāju praktizētais princips “drošība caur neskaidrību (drošība ar tumsu), ieviešot TRR, palīdz tikai aizsardzībai īpašos gadījumos, aptverot tipiskus uzbrukumus, manipulējot ar šūnu lādiņa izmaiņām vienā vai divās blakus rindās.

Pētnieku izstrādātā utilīta ļauj pārbaudīt mikroshēmu jutīgumu pret RowHammer uzbrukuma daudzpusējiem variantiem, kuros vienlaikus tiek mēģināts ietekmēt lādiņu vairākām atmiņas šūnu rindām. Šādi uzbrukumi var apiet dažu ražotāju ieviesto TRR aizsardzību un izraisīt atmiņas bitu bojājumus pat jaunai aparatūrai ar DDR4 atmiņu.
No 42 pētītajiem DIMM moduļiem 13 moduļi izrādījās neaizsargāti pret nestandarta RowHammer uzbrukuma variantiem, neskatoties uz deklarēto aizsardzību. Problēmu moduļus ražoja SK Hynix, Micron un Samsung, kuru produkti vāki 95% no DRAM tirgus.

Papildus DDR4 tika pētītas arī mobilajās ierīcēs izmantotās LPDDR4 mikroshēmas, kuras arī izrādījās jutīgas pret RowHammer uzbrukuma uzlabotajiem variantiem. Problēma jo īpaši ietekmēja viedtālruņos Google Pixel, Google Pixel 3, LG G7, OnePlus 7 un Samsung Galaxy S10 izmantoto atmiņu.

Pētnieki spēja reproducēt vairākas ekspluatācijas metodes problemātiskajās DDR4 mikroshēmās. Piemēram, izmantojot RowHammer-ekspluatēt PTE (Page Table Entries) kodola privilēģiju iegūšanai vajadzēja no 2.3 sekundēm līdz trim stundām un piecpadsmit sekundēm atkarībā no pārbaudītajām mikroshēmām. Uzbrukums par atmiņā saglabātās publiskās atslēgas bojājumiem RSA-2048 aizņēma no 74.6 sekundēm līdz 39 minūtēm 28 sekundēm. Uzbrukums bija nepieciešamas 54 minūtes un 16 sekundes, lai apietu akreditācijas datu pārbaudi, izmantojot sudo procesa atmiņas modifikāciju.

Ir publicēta utilīta, lai pārbaudītu lietotāju izmantotās DDR4 atmiņas mikroshēmas TRRespass. Lai veiksmīgi veiktu uzbrukumu, ir nepieciešama informācija par atmiņas kontrollerī izmantoto fizisko adrešu izkārtojumu attiecībā pret bankām un atmiņas šūnu rindām. Papildus ir izstrādāta utilīta, lai noteiktu izkārtojumu drāma, kas prasa darboties kā root. Tuvākajā laikā arī ir plānots publicēt aplikāciju viedtālruņa atmiņas testēšanai.

Uzņēmumi Intel и AMD Aizsardzības nolūkos viņi ieteica izmantot kļūdu labošanas atmiņu (ECC), atmiņas kontrollerus ar maksimālo aktivitāšu skaitu (MAC) un izmantot palielinātu atsvaidzes intensitāti. Pētnieki uzskata, ka jau izlaistajām mikroshēmām nav risinājuma garantētai aizsardzībai pret Rowhammer, un ECC izmantošana un atmiņas atjaunošanas biežuma palielināšana izrādījās neefektīva. Piemēram, tas tika ierosināts iepriekš process uzbrukumi DRAM atmiņai, apejot ECC aizsardzību, kā arī parāda iespēju uzbrukt DRAM vietējais tīkls, no viesu sistēma и ar pārlūkprogrammā darbojas JavaScript.

Avots: opennet.ru

Pievieno komentāru