Retbleed: uus spekulatiivne täideviimise rünnak, mis tabab Inteli ja AMD-d

Hiljuti avaldas see uudisETH Zürichi teadlaste rühm on tuvastanud uue rünnaku CPU kaudsete hüpete spekulatiivsele täitmismehhanismile, mis võimaldab kerneli mälust teavet ammutada või virtuaalmasinatest hostsüsteemi vastu rünnakut korraldada.

Turvaaukud kandsid koodnime Retbleed (juba kataloogitud CVE-2022-29900, CVE-2022-29901 all) ja on oma olemuselt sarnased Spectre-v2 rünnakutega.

Erinevus taandub suvalise koodi spekulatiivse täitmise korraldamisele, töödeldes käsku "ret" (return), mis otsib aadressi, mille abil virnast hüpata, selle asemel, et hüpata kaudselt käsku "jmp", laadides aadressi mälust või protsessori register.

Uue rünnaku kohta mainitakse seda ründaja saab luua tingimused kahvli ennustamiseks vale ja korraldada tahtlik spekulatiivne hüpe koodiplokile, mis pole programmi täitmisloogikaga ette nähtud.

Lõppkokkuvõttes protsessor teeb kindlaks, et haru ennustus ei olnud õigustatud, ja tühistab toimingu algsesse olekusse, vaid töödeldud andmed Spekulatiivse hukkamise ajal nad istuvad vahemälus ja mikroarhitektuursed puhvrid. Kui valesti käivitatud plokk teostab juurdepääsu mälule, viib selle spekulatiivne täitmine üldisesse vahemällu installimiseni ja andmete lugemiseni mälust.

Pärast spekulatiivset toimingute sooritamist vahemällu jäänud andmete kindlakstegemiseks saab ründaja kasutada meetodeid jääkandmete kindlakstegemiseks kolmanda osapoole kanalite kaudu, näiteks analüüsides vahemällu salvestatud andmete juurdepääsuaja muutusi ja mitte vahemällu.

Teabe tahtlikuks eraldamiseks erineval privileegtasemel aladelt (näiteks tuumamälust) kasutatakse "seadmeid": tuumas olevad skriptid, mis sobivad andmete spekulatiivseks lugemiseks mälust, olenevalt välistingimustest saab seda mõjutada. ründaja poolt.

Et kaitsta klassikaliste Spectre klassi rünnakute eest, mis kasutavad kaudseid ja tingimuslikke harukäske, kasutab enamik operatsioonisüsteeme "retpoline" tehnikat, mis põhineb kaudsete haruoperatsioonide asendamisel käsuga "ret", mille jaoks on vaja eraldi pinu oleku ennustamist. ühikut kasutatakse protsessorites, ei kasuta haru ennustamise plokki.

Retpoliini kasutuselevõtul 2018. aastal arvati, et Spectre'i-laadne aadressiga manipuleerimine on "ret"-juhisega spekulatiivse hargnemise jaoks ebapraktiline.

Rünnakumeetodi välja töötanud teadlased Retbleed demonstreeris mikroarhitektuursete tingimuste loomise võimalust algatada spekulatiivne üleminek, kasutades käsku "ret" ja andis välja valmis tööriistakomplekti sobivate käsujadade (vidinate) tuvastamiseks, et kasutada ära Linuxi tuuma haavatavust, milles sellised tingimused ilmnevad.

Uuringu käigus valmistati ette töötav ärakasutamine mis võimaldab Inteli protsessoritega süsteemides kasutajaruumis privilegeerimata protsessi kaudu kerneli mälust suvalisi andmeid eraldada kiirusega 219 baiti sekundis ja 98% täpsusega.

En töötlejad AMD, ärakasutamise efektiivsus on palju suurem, kuna lekkekiirus on 3,9 KB sekundis. Praktilise näitena on näidatud, kuidas kasutada pakutud soodustust faili /etc/shadow sisu määramiseks. Inteli protsessoritega süsteemides viidi juurparooli räsi määramine läbi 28 minutiga ja AMD protsessoritega süsteemides 6 minutiga.

Rünnak leidis kinnitust 6-8 põlvkonna Inteli protsessorite puhul mis anti välja enne 2019. aasta kolmandat kvartalit (sh Skylake) ning Zen 1, Zen 1+ ja Zen 2 mikroarhitektuuridel põhinevad AMD protsessorid, mis anti välja enne 2021. aasta teist kvartalit. Uuematel protsessorimudelitel, nagu AMD Zen3 ja Intel Alder Lake, samuti ARM-protsessorid, probleemi blokeerivad olemasolevad kaitsemehhanismid. Näiteks IBRS-i (Indirect Branch Restricted Speculation) juhiste kasutamine aitab kaitsta rünnaku eest.

Valmistas ette muudatuste komplekti Linuxi tuuma ja Xeni hüpervisori jaoks, mis blokeerivad probleemi programmiliselt vanemates CPU-des. Kavandatav Linuxi tuumaparandus muudab 68 faili, lisab 1783 rida ja eemaldab 387 rida.

Kahjuks toob kaitse kaasa märkimisväärseid üldkulusid: AMD ja Inteli protsessoritel tehtud tekstide puhul on jõudluse halvenemine hinnanguliselt 14–39%. Eelistatavam on kasutada kaitset, mis põhineb IBRS-i juhistel, mis on saadaval Inteli uuemates CPU-des ja mida toetatakse alates Linuxi kernelist 4.19.

Lõpuks, kui olete huvitatud selle kohta lisateabest, võite pöörduda üksikasjad järgmisel lingil.


Jäta oma kommentaar

Sinu e-postiaadressi ei avaldata. Kohustuslikud väljad on tähistatud *

*

*

  1. Andmete eest vastutav: AB Internet Networks 2008 SL
  2. Andmete eesmärk: Rämpsposti kontrollimine, kommentaaride haldamine.
  3. Seadustamine: teie nõusolek
  4. Andmete edastamine: andmeid ei edastata kolmandatele isikutele, välja arvatud juriidilise kohustuse alusel.
  5. Andmete salvestamine: andmebaas, mida haldab Occentus Networks (EL)
  6. Õigused: igal ajal saate oma teavet piirata, taastada ja kustutada.