Ata gjetën një dobësi spekulative të ekzekutimit që prek AMD

Projekti së fundmi Grsecurity ka bërë të ditur përmes një publikimi detaje dhe një demo një metodë sulmi për një cenueshmëri të re (të listuara tashmë si CVE-2021-26341) në procesorët AMD që lidhen me ekzekutimin e udhëzimeve spekulative pas operacioneve të pakushtëzuara të kërcimit përpara.

Prekshmëria i lejon procesorit të përpunojë në mënyrë spekulative instruksioni menjëherë pas instruksionit të kërcimit (SLS) në memorie gjatë ekzekutimit spekulativ. Në të njëjtën kohë, një optimizim i tillë funksionon jo vetëm për operatorët e kërcimit të kushtëzuar, por edhe për udhëzimet që përfshijnë një kërcim të drejtpërdrejtë të pakushtëzuar, si JMP, RET dhe CALL.

Udhëzimet e degëve të pakushtëzuara mund të ndiqen nga të dhëna arbitrare që nuk janë të destinuara për ekzekutim. Pasi të përcaktohet se dega nuk përfshin ekzekutimin e deklaratës së radhës, procesori thjesht e kthen prapa gjendjen dhe injoron ekzekutimin spekulativ, por gjurma e ekzekutimit të instruksionit mbetet në cache-në e përgjithshme dhe është e disponueshme për analizë duke përdorur metodat e rikthimit të kanalit anësor.

AMD ofron një përditësim për një zbutje të rekomanduar, zbutjen e G-5, në letrën e bardhë "Teknikat Softuerike për Menaxhimin e Spekulimeve në Përpunuesit AMD". Zbutja e G-5 ndihmon në adresimin e dobësive të mundshme që lidhen me sjelljen spekulative të udhëzimeve të degës.

Procesorët AMD mund të ekzekutojnë në mënyrë të përkohshme udhëzime duke ndjekur një degë të pakushtëzuar përpara e cila mund të rezultojë në aktivitetin e cache-it

Ashtu si me shfrytëzimin e Spectre-v1, një sulm kërkon praninë e sekuencave të caktuara të instruksioneve (gadgets) në kernel, gjë që çon në ekzekutimin spekulativ.

Në këtë rast, bllokimi i një cenueshmërie zbret në identifikimin e pajisjeve të tilla në kod dhe shtimin e udhëzimeve shtesë për to që bllokojnë ekzekutimin spekulativ. Kushtet për ekzekutimin spekulativ mund të krijohen gjithashtu duke përdorur programe jo të privilegjuara që funksionojnë në makinën virtuale eBPF.

Ky hetim rezultoi në zbulimin e një cenueshmërie të re, CVE-2021-26341 [1] , për të cilën do të diskutojmë në detaje në këtë artikull. Si zakonisht, ne do të fokusohemi në aspektet teknike të cenueshmërisë, zbutjet e sugjeruara nga AMD dhe aspektet e shfrytëzimit.

Për të bllokuar aftësinë për të ndërtuar pajisje duke përdorur eBPF, rekomandohet të çaktivizoni aksesin e paprivilegjuar në eBPF në sistem ("sysctl -w kernel.unprivileged_bpf_disabled=1").

Dobësia prek procesorët e bazuar në mikroarkitekturën Zen1 dhe Zen2:

Tavolinë

  • Procesori AMD Athlon™ X4
  • Procesori AMD Ryzen™ Threadripper™ PRO
  • Procesorët e gjeneratës së dytë AMD Ryzen™ Threadripper™
  • Procesorët e gjeneratës së tretë AMD Ryzen™ Threadripper™
  • APU e gjeneratës së XNUMX-të të serisë AMD A
  • Procesorët e desktopit AMD Ryzen™ 2000 Series
  • Procesorët e desktopit AMD Ryzen™ 3000 Series
  • Procesorë desktopi AMD Ryzen™ 4000 Series me Grafika Radeon™

I lëvizshëm

  • Procesor celular AMD Ryzen™ 2000 Series
  • Procesorë celularë AMD Athlon™ 3000 Series me Grafika Radeon™
  • Procesorë celularë të serisë AMD Ryzen™ 3000 ose procesorë celularë të gjeneratës së dytë AMD Ryzen™ me grafikë Radeon™
  • Procesorë celularë të serisë AMD Ryzen™ 4000 me grafikë Radeon™
  • Procesorë celularë të serisë AMD Ryzen™ 5000 me grafikë Radeon™

Chromebook

  • Procesorë celularë AMD Athlon™ me grafikë Radeon™

server

  • Procesorët AMD EPYC™ të gjeneratës së parë
  • Procesorët AMD EPYC™ të gjeneratës së dytë

Përmendet se nëse sulmi është i suksesshëm, vulnerabiliteti lejon që të përcaktohet përmbajtja e zonave arbitrare të memories.

Për shkak të kësaj dobësie, mund të jetë e mundur të identifikohen konstruktet e kodit beninje që formojnë pajisje SLS të kufizuara, por potencialisht të shfrytëzueshme në CPU-të e prekura. Siç tregohet me shembullin eBPF, është gjithashtu e mundur të shfrytëzohet cenueshmëria me pajisje të ndërtuara me dorë, të vetë-injektuara. Metoda e paraqitur mund të përdoret, për shembull, për të thyer zbutjen KASLR të kernelit Linux.

Për shembull, studiuesit kanë përgatitur një shfrytëzim që ju lejon të përcaktoni paraqitjen e adresës dhe të anashkaloni mekanizmin e mbrojtjes KASLR (randomizimi i memories së kernelit) duke ekzekutuar kodin pa privilegje në nënsistemin e kernelit eBPF, përveç skenarëve të tjerë të sulmit që mund të rrjedhin Përmbajtja e kujtesës së kernelit nuk përjashtohet.

Më në fund nëse jeni të interesuar të dini pak më shumë për të, ju mund të kontrolloni detajet Në lidhjen vijuese.


Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: Miguel Ángel Gatón
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.