Erfitt að gera við GRUB2 veikleika sem gera kleift að komast framhjá UEFI Secure Boot

Upplýsingar hafa verið birtar um 8 veikleika í GRUB2 ræsiforritinu, sem gerir þér kleift að komast framhjá UEFI Secure Boot vélbúnaðinum og keyra óstaðfestan kóða, til dæmis, innleiða spilliforrit sem keyrir á ræsiforritinu eða kjarnastigi.

Við skulum muna að í flestum Linux dreifingum, fyrir staðfesta ræsingu í UEFI Secure Boot ham, er lítið shim lag notað, stafrænt undirritað af Microsoft. Þetta lag staðfestir GRUB2 með sínu eigin vottorði, sem gerir dreifingarhönnuðum kleift að hafa ekki hverja kjarna og GRUB uppfærslu vottaða af Microsoft. Veikleikar í GRUB2 gera þér kleift að ná fram keyrslu kóðans þíns á stigi eftir árangursríka shim sannprófun, en áður en stýrikerfið er hlaðið, fleygast inn í traustakeðjuna þegar Secure Boot mode er virkt og öðlast fulla stjórn á frekari ræsingarferlinu, þ.m.t. að hlaða öðru stýrikerfi, breyta stýrikerfishlutakerfi og framhjá læsingarvörn.

Eins og með BootHole varnarleysi síðasta árs, er uppfærsla ræsiforritsins ekki nóg til að loka á vandamálið, þar sem árásarmaður, óháð því hvaða stýrikerfi er notað, getur notað ræsanlegan miðil með gamalli, stafrænt undirritaður, viðkvæmri útgáfu af GRUB2 til að skerða UEFI Secure Boot. Vandamálið er aðeins hægt að leysa með því að uppfæra afturköllunarlistann fyrir skírteini (dbx, UEFI afturköllunarlista), en í þessu tilviki tapast hæfileikinn til að nota gamla uppsetningarmiðla með Linux.

Í kerfum með fastbúnað sem er með uppfærðan lista yfir afturköllun vottorða er aðeins hægt að hlaða uppfærðum smíðum af Linux dreifingum í UEFI Secure Boot ham. Dreifingar þurfa að uppfæra uppsetningarforrit, ræsiforrita, kjarnapakka, fwupd fastbúnað og shim-lag og búa til nýjar stafrænar undirskriftir fyrir þau. Notendur verða krafðir um að uppfæra uppsetningarmyndir og aðra ræsanlega miðla, auk þess að hlaða afturköllunarlista (dbx) inn í UEFI vélbúnaðinn. Áður en dbx er uppfært í UEFI er kerfið áfram viðkvæmt óháð uppsetningu uppfærslur í stýrikerfinu. Hægt er að meta stöðu veikleika á þessum síðum: Ubuntu, SUSE, RHEL, Debian.

Til að leysa vandamál sem koma upp við dreifingu afturkallaðra skírteina er í framtíðinni fyrirhugað að nota SBAT (UEFI Secure Boot Advanced Targeting) vélbúnaðinn, sem stuðningur hefur verið innleiddur fyrir GRUB2, shim og fwupd, og frá og með næstu uppfærslum verða notað í stað virkni dbxtool pakkans. SBAT var þróað í samvinnu við Microsoft og felur í sér að bæta nýjum lýsigögnum við keyrsluskrár UEFI íhluta, sem innihalda upplýsingar um framleiðanda, vöru, íhlut og útgáfu. Tilgreind lýsigögn eru vottuð með stafrænni undirskrift og geta auk þess verið innifalin í listum yfir leyfilega eða bannaða íhluti fyrir UEFI Secure Boot. Þannig mun SBAT leyfa þér að vinna með útgáfunúmer íhluta meðan á afturköllun stendur án þess að þurfa að endurskapa lykla fyrir Secure Boot og án þess að búa til nýjar undirskriftir fyrir kjarnann, shim, grub2 og fwupd.

Greind veikleika:

  • CVE-2020-14372 – Með því að nota acpi skipunina í GRUB2 getur forréttindanotandi á staðbundnu kerfi hlaðið breyttum ACPI töflum með því að setja SSDT (Secondary System Description Table) í /boot/efi skrána og breyta stillingum í grub.cfg. Þó að öruggur ræsihamur sé virk, verður fyrirhugað SSDT keyrt af kjarnanum og hægt að nota til að slökkva á LockDown vörn sem lokar UEFI Secure Boot framhjáleiðum. Fyrir vikið getur árásarmaður náð að hlaða kjarnaeiningunni sinni eða keyra kóða í gegnum kexec vélbúnaðinn, án þess að athuga stafrænu undirskriftina.
  • CVE-2020-25632 er notkun eftir-frjáls minnisaðgangur í útfærslu rmmod skipunarinnar, sem á sér stað þegar reynt er að afferma hvaða einingu sem er án þess að taka tillit til ósjálfstæðis sem tengjast henni. Varnarleysið útilokar ekki að búið sé til hagnýtingu sem gæti leitt til þess að keyrsla kóða framhjá öruggri ræsistaðfestingu.
  • CVE-2020-25647 Skrif utan marka í grub_usb_device_initialize() fallinu sem kallað er á þegar USB-tæki eru frumstillt. Vandamálið er hægt að nýta með því að tengja sérútbúið USB tæki sem framleiðir færibreytur sem stærð þeirra samsvarar ekki stærð biðminni sem úthlutað er fyrir USB mannvirki. Árásarmaður getur náð fram keyrslu kóða sem er ekki staðfestur í Secure Boot með því að vinna með USB tæki.
  • CVE-2020-27749 er biðminni yfirflæði í grub_parser_split_cmdline() fallinu, sem getur stafað af því að tilgreina breytur stærri en 2 KB á GRUB1 skipanalínunni. Varnarleysið gerir keyrslu kóða kleift að komast framhjá öruggri ræsingu.
  • CVE-2020-27779 – Cumem skipunin gerir árásarmanni kleift að fjarlægja fjölda vistfönga úr minni til að komast framhjá öruggri ræsingu.
  • CVE-2021-3418 - Breytingar á shim_lock bjuggu til viðbótar vektor til að nýta varnarleysi síðasta árs CVE-2020-15705. Með því að setja upp vottorðið sem notað var til að undirrita GRUB2 í dbx, gerði GRUB2 kleift að hlaða hvaða kjarna sem er beint án þess að staðfesta undirskriftina.
  • CVE-2021-20225 - Möguleiki á að skrifa gögn utan marka þegar skipanir eru keyrðar með mjög miklum fjölda valkosta.
  • CVE-2021-20233 - Möguleiki á að skrifa gögn utan marka vegna rangrar útreiknings á biðminni þegar gæsalappir eru notaðar. Við útreikning á stærðinni var gert ráð fyrir að þrír stafir þyrftu til að sleppa við einni gæsalappa, þegar í raun þurfti fjóra.

Heimild: opennet.ru

Bæta við athugasemd