Viņi atklāja spekulatīvas izpildes ievainojamību, kas ietekmē AMD

Projekts nesen Grsecurity tika darīts zināms, izmantojot publikāciju detaļas un demonstrācija uzbrukuma metode jaunai ievainojamībai (jau uzskaitīts kā CVE-2021-26341) AMD procesoros, kas saistīti ar spekulatīvu instrukciju izpildi pēc beznosacījuma pārslēgšanās uz priekšu operācijām.

Neaizsargātība ļauj procesoram spekulatīvi apstrādāt instrukcija uzreiz pēc lēciena (SLS) instrukcijas atmiņā spekulatīvas izpildes laikā. Tajā pašā laikā šāda optimizācija darbojas ne tikai nosacījuma lēciena operatoriem, bet arī instrukcijām, kas ietver tiešu beznosacījuma lēcienu, piemēram, JMP, RET un CALL.

Beznosacījuma zaru instrukcijām var sekot patvaļīgi dati, kas nav paredzēti izpildei. Pēc tam, kad ir noteikts, ka filiāle neietver nākamā paziņojuma izpildi, procesors vienkārši atceļ stāvokli un ignorē spekulatīvo izpildi, bet instrukciju izpildes izsekošana paliek vispārējā kešatmiņā un ir pieejama analīzei, izmantojot sānu kanālu izguves metodes.

AMD nodrošina atjauninājumu ieteicamajai mazināšanai, G-5 mazināšanai, dokumentā "Programmatūras metodes spekulāciju pārvaldībai AMD procesoros". G-5 mazināšana palīdz novērst iespējamās ievainojamības, kas saistītas ar filiāļu instrukciju spekulatīvo uzvedību.

AMD procesori var īslaicīgi izpildīt instrukcijas, sekojot beznosacījuma virzienam, kas var izraisīt kešatmiņas darbību

Tāpat kā ar Spectre izmantošanu,v1 uzbrukumam ir nepieciešama noteiktu secību klātbūtne instrukcijas (sīkrīki) kodolā, kas noved pie spekulatīvas izpildes.

Šajā gadījumā ievainojamības bloķēšana nozīmē šādu ierīču identificēšanu kodā un papildu instrukciju pievienošanu, kas bloķē spekulatīvu izpildi. Spekulatīvas izpildes nosacījumus var izveidot arī, izmantojot eBPF virtuālajā mašīnā esošās programmas, kas nav priviliģētas.

Šīs izmeklēšanas rezultātā tika atklāta jauna ievainojamība CVE-2021-26341. [1] , ko mēs detalizēti apspriedīsim šajā rakstā. Kā parasti, mēs koncentrēsimies uz ievainojamības tehniskajiem aspektiem, AMD ieteiktajiem mazināšanas pasākumiem un ekspluatācijas aspektiem.

Lai bloķētu iespēju izveidot ierīces, izmantojot eBPF, ieteicams atspējot nepievilcīgu piekļuvi eBPF sistēmā ("sysctl -w kernel.unprivileged_bpf_disabled=1").

Ievainojamība ietekmē procesorus, kuru pamatā ir Zen1 un Zen2 mikroarhitektūra:

Rakstāmgalds

  • AMD Athlon™ X4 procesors
  • AMD Ryzen™ Threadripper™ PRO procesors
  • Otrās paaudzes AMD Ryzen™ Threadripper™ procesori
  • XNUMX. paaudzes AMD Ryzen™ Threadripper™ procesori
  • XNUMX. paaudzes AMD A sērijas APU
  • AMD Ryzen™ 2000. sērijas galddatoru procesori
  • AMD Ryzen™ 3000. sērijas galddatoru procesori
  • AMD Ryzen™ 4000 sērijas galddatoru procesori ar Radeon™ grafiku

Mobils

  • AMD Ryzen™ 2000. sērijas mobilais procesors
  • AMD Athlon™ 3000 sērijas mobilie procesori ar Radeon™ grafiku
  • AMD Ryzen™ 3000 sērijas mobilie procesori vai XNUMX. paaudzes AMD Ryzen™ mobilie procesori ar Radeon™ grafiku
  • AMD Ryzen™ 4000 sērijas mobilie procesori ar Radeon™ grafiku
  • AMD Ryzen™ 5000 sērijas mobilie procesori ar Radeon™ grafiku

Chromebook

  • AMD Athlon™ mobilie procesori ar Radeon™ grafiku

Serveris

  • Pirmās paaudzes AMD EPYC™ procesori
  • Otrās paaudzes AMD EPYC™ procesori

Tiek minēts, ka, ja uzbrukums ir veiksmīgs, ievainojamība ļauj noteikt patvaļīgu atmiņas apgabalu saturu.

Šīs ievainojamības dēļ var būt iespējams identificēt labdabīgas koda konstrukcijas, kas veido ierobežotas, bet potenciāli izmantojamas SLS ierīces ietekmētajos CPU. Kā parādīts eBPF piemērā, ievainojamību ir iespējams izmantot arī ar rokām veidotām, pašinjicējamām ierīcēm. Iesniegto metodi var izmantot, piemēram, lai pārtrauktu Linux kodola KASLR mazināšanu.

Piemēram, pētnieki ir sagatavojuši ekspluatāciju, kas ļauj noteikt adreses izkārtojumu un apiet KASLR (kodola atmiņas nejaušināšanas) aizsardzības mehānismu, izpildot kodu bez privilēģijām eBPF kodola apakšsistēmā, papildus citiem uzbrukuma scenārijiem, kas varētu nopludināt kodola atmiņas saturs nav izslēgts.

Beidzot ja jūs interesē uzzināt mazliet vairāk par to, varat pārbaudīt informāciju Šajā saitē.


Raksta saturs atbilst mūsu principiem redakcijas ētika. Lai ziņotu par kļūdu, noklikšķiniet uz šeit.

Esi pirmais, kas komentārus

Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta.

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.