Kriitiline haavatavus GRUB2 alglaaduris, mis võimaldab teil UEFI turvalisest alglaadimisest mööda minna

GRUB2 alglaaduris paljastatud 8 haavatavust. Kõige ohtlikum probleem (CVE-2020-10713), mille koodnimetus on BootHole, anna võimalus UEFI Secure Boot mehhanismist mööda hiilima ja kontrollimata pahavara installima. Selle haavatavuse eripära on see, et selle kõrvaldamiseks ei piisa GRUB2 värskendamisest, kuna ründaja saab kasutada buutivat meediumit vana haavatava versiooniga, mis on sertifitseeritud digitaalallkirjaga. Ründaja võib rikkuda mitte ainult Linuxi, vaid ka teiste operatsioonisüsteemide, sh Windows.

Probleemi saab lahendada ainult süsteemi värskendamisega sertifikaadi kehtetuks tunnistamise loend (dbx, UEFI tühistamisloend), kuid sel juhul kaob võimalus kasutada Linuxiga vanu installikandjaid. Mõned seadmete tootjad on juba lisanud oma püsivarasse tühistamissertifikaatide uuendatud loendi; sellistes süsteemides saab UEFI Secure Boot režiimis laadida ainult Linuxi distributsioonide värskendatud versioone.

Distributsioonide haavatavuse kõrvaldamiseks peate värskendama ka installijaid, alglaadureid, kerneli pakette, fwupd püsivara ja vahekihti, luues neile uued digitaalallkirjad. Kasutajad peavad värskendama installikujutisi ja muid buutivaid meediume ning laadima UEFI püsivarasse sertifikaatide tühistamise loendi (dbx). Enne dbx-i värskendamist UEFI-le jääb süsteem haavatavaks sõltumata OS-i värskenduste installimisest.

Haavatavus põhjustanud puhvri ületäitumine, mida saab kasutada alglaadimisprotsessi ajal suvalise koodi käivitamiseks.
Haavatavus ilmneb konfiguratsioonifaili grub.cfg sisu sõelumisel, mis tavaliselt asub ESP-s (EFI System Partition) ja mida administraatoriõigustega ründaja saab redigeerida, ilma et see rikuks allkirjastatud vahekaardi ja GRUB2 täitmisfailide terviklikkust. Sest Vead konfiguratsiooniparseri koodis kuvas saatuslike sõelumisvigade YY_FATAL_ERROR käitleja ainult hoiatuse, kuid ei lõpetanud programmi. Haavatavuse ohtu vähendab vajadus omada süsteemile privilegeeritud juurdepääsu, kuid kui teil on seadmele füüsiline juurdepääs (kui teil on võimalik käivitada oma meediumilt), võib probleem olla vajalik peidetud juurkomplektide kasutuselevõtuks.

Enamik Linuxi distributsioone kasutab väikest vahekiht, Microsofti digitaalselt allkirjastatud. See kiht kinnitab GRUB2 oma sertifikaadiga, mis võimaldab levitajate arendajatel mitte olla Microsofti poolt sertifitseeritud iga kerneli ja GRUB-värskendusega. Haavatavus võimaldab faili grub.cfg sisu muutmisega saavutada teie koodi käivitamise etapis pärast edukat vahekontrolli, kuid enne operatsioonisüsteemi laadimist kiiluda usaldusahelasse, kui turvalise alglaadimise režiim on aktiivne ja saavutades täieliku kontrolli edasise alglaadimisprotsessi käigus, sealhulgas teise OS-i laadimine, operatsioonisüsteemi komponentide muutmine ja kaitsest möödaminek Lockdown.

Kriitiline haavatavus GRUB2 alglaaduris, mis võimaldab teil UEFI turvalisest alglaadimisest mööda minna

Muud GRUB2 haavatavused:

  • CVE-2020-14308 — puhvri ületäitumine, kuna failis grub_malloc eraldatud mäluala suurust ei kontrollita;
  • CVE-2020-14309 - täisarvu ületäitumine grub_squash_read_symlinkis, mis võib viia andmete kirjutamiseni eraldatud puhvrist kaugemale;
  • CVE-2020-14310 - täisarvude ületäitumine jaotises read_section_from_string, mis võib viia andmete kirjutamiseni eraldatud puhvrist kaugemale;
  • CVE-2020-14311 - täisarvu ületäitumine failis grub_ext2_read_link, mis võib põhjustada andmete kirjutamise väljaspool eraldatud puhvrit;
  • CVE-2020-15705 — võimaldab laadida allkirjastamata kerneleid otsese alglaadimise ajal turvalises alglaadimisrežiimis ilma vahekihita;
  • CVE-2020-15706 — juurdepääs juba vabastatud mälualale (kasutus pärast vaba kasutust), kui funktsiooni käitamise ajal uuesti määratletakse;
  • CVE-2020-15707 — täisarvude ületäitumine initrd suuruse töötlejas.

Kiirparanduspaketi värskendused on välja antud Debian, Ubuntu, RHEL и SUSE. GRUB2 jaoks pakutud plaastrite komplekt.

Allikas: opennet.ru

Lisa kommentaar