Ja šīs nepilnības tiek izmantotas, uzbrucēji var iegūt nesankcionētu piekļuvi sensitīvai informācijai vai vispār radīt problēmas.
Sīkāka informācija par divām GRUB2 sāknēšanas ielādētāja ievainojamībām ir atklāta, ka pvar izraisīt koda izpildi izmantojot īpaši izstrādātus fontus un apstrādājot noteiktas unikoda secības.
Tiek minēts, ka atklātās ievainojamības ire var izmantot, lai apietu UEFI Secure Boot verificēto sāknēšanas mehānismu. GRUB2 ievainojamības ļauj izpildīt kodu posmā pēc veiksmīgas starplikšanas pārbaudes, bet pirms operētājsistēmas ielādes, pārraujot uzticības ķēdi ar aktīvu drošās sāknēšanas režīmu un iegūstot pilnīgu kontroli pār pēcsāknēšanas procesu, piemēram, lai palaistu citu operētājsistēmu, modificētu operētājsistēmas komponentus un apietu bloķēšanas aizsardzību.
Attiecībā uz konstatētajām ievainojamībām tiek minēts:
- CVE-2022-2601: bufera pārpilde funkcijā grub_font_construct_glyph(), apstrādājot īpaši izveidotus fontus pf2 formātā, kas rodas nepareiza parametra max_glyph_size aprēķināšanas un atmiņas apgabala piešķiršanas dēļ, kas acīmredzami ir mazāks nekā nepieciešams glifu ievietošanai.
- CVE-2022-3775: Ārpus robežām rakstīšana, renderējot dažas unikoda virknes pielāgotā fontā. Problēma ir saistīta ar fontu apstrādes kodu, un to izraisa atbilstošu vadīklu trūkums, lai nodrošinātu, ka glifa platums un augstums atbilst pieejamajam bitkartes izmēram. Uzbrucējs var ievākt ievadi tā, lai no piešķirtā bufera tiktu izrakstīta datu rinda. Tiek atzīmēts, ka, neskatoties uz ievainojamības izmantošanas sarežģītību, nav izslēgta problēmas pakļaušana koda izpildei.
Lai pilnībā mazinātu visus CVE, būs nepieciešami labojumi, kas atjaunināti ar jaunāko SBAT (Secure Boot Advanced Targeting) un izplatītāju un piegādātāju nodrošinātie dati.
Šoreiz UEFI atsaukumu saraksts (dbx) netiks izmantots un bojāto atsaukšana
artefakti tiks izgatavoti tikai ar SBAT. Lai iegūtu informāciju par to, kā pieteikties
jaunākos SBAT atsaukumus, skatiet mokutil(1). Pārdevēja labojumi var skaidri ļauj palaist vecākus zināmos sāknēšanas artefaktus.Tiks atjaunināti GRUB2, starplikas un citi sāknēšanas artefakti no visiem ietekmētajiem piegādātājiem. tas būs pieejams pēc embargo atcelšanas vai kādu laiku pēc tam.
Tiek minēts, ka vairums Linux izplatījumu izmanto nelielu ielāpu slāni, ko ciparparakstījis Microsoft, pārbaudītai sāknēšanai UEFI drošās sāknēšanas režīmā. Šis slānis pārbauda GRUB2 ar savu sertifikātu, kas ļauj izplatīšanas izstrādātājiem nesertificēt katru kodolu un GRUB atjauninājumu ar Microsoft.
Lai bloķētu ievainojamību bez ciparparaksta atsaukšanas, sadales var izmantot SBAT mehānismu (UEFI Secure Boot Advanced Targeting), ko atbalsta GRUB2, shim un fwupd populārākajos Linux izplatījumos.
SBAT tika izstrādāts sadarbībā ar Microsoft, un tas ietver papildu metadatu pievienošanu UEFI komponenta izpildāmajiem failiem, tostarp informāciju par ražotāju, produktu, komponentu un versiju. Norādītie metadati ir digitāli parakstīti, un tos var iekļaut atsevišķos atļauto vai aizliegto komponentu sarakstos UEFI drošai sāknēšanai.
SBAT ļauj bloķēt digitālā paraksta lietošanu atsevišķu komponentu versiju numuriem bez nepieciešamības atsaukt drošas sāknēšanas atslēgas. Lai bloķētu ievainojamības, izmantojot SBAT, nav jāizmanto UEFI CRL (dbx), bet gan tiek darīts iekšējās atslēgas aizstāšanas līmenī, lai ģenerētu parakstus un atjauninātu GRUB2, shim un citus izplatījumu nodrošinātos sāknēšanas artefaktus.
Pirms SBAT ieviešanas sertifikātu atsaukšanas saraksta atjaunināšana (dbx, UEFI atsaukšanas saraksts) bija priekšnoteikums, lai pilnībā bloķētu ievainojamību, jo uzbrucējs neatkarīgi no izmantotās operētājsistēmas varēja izmantot sāknēšanas datu nesēju. ar ievainojamu vecāku versiju GRUB2 sertificēts ar ciparparakstu, lai apdraudētu UEFI Secure Boot.
Beidzot Ir vērts pieminēt, ka labojums ir izlaists kā ielāps., lai novērstu problēmas GRUB2, nepietiek tikai ar pakotnes atjaunināšanu, jums būs arī jāizveido jauni iekšējie ciparparaksti un jāatjaunina instalētāji, sāknēšanas ielādētāji, kodola pakotnes, fwupd-firmware un shim-layer.
Ievainojamības novēršanas statusu izplatījumos var novērtēt šajās lapās: Ubuntu, SUSE, RHEL, Fedora y Debian.
Vairāk par to varat pārbaudīt sadaļā šī saite.