Gwendidau anodd eu trwsio yn GRUB2 sy'n eich galluogi i osgoi UEFI Secure Boot

Datgelwyd gwybodaeth am wendidau 8 yn y cychwynnwr GRUB2, sy'n eich galluogi i osgoi mecanwaith Boot Diogel UEFI a rhedeg cod heb ei wirio, er enghraifft, gweithredu malware sy'n rhedeg ar lefel y cychwynnwr neu'r cnewyllyn.

Gadewch inni gofio, yn y rhan fwyaf o ddosbarthiadau Linux, ar gyfer cychwyn wedi'i ddilysu ym modd Cist Diogel UEFI, bod haen shim fach yn cael ei defnyddio, wedi'i llofnodi'n ddigidol gan Microsoft. Mae'r haen hon yn gwirio GRUB2 gyda'i dystysgrif ei hun, sy'n caniatΓ‘u i ddatblygwyr dosbarthu beidio Γ’ chael pob diweddariad cnewyllyn a GRUB wedi'i ardystio gan Microsoft. Mae gwendidau yn GRUB2 yn caniatΓ‘u ichi gyflawni gweithrediad eich cod ar y cam ar Γ΄l dilysu shim llwyddiannus, ond cyn llwytho'r system weithredu, gan ymuno Γ’'r gadwyn ymddiriedaeth pan fydd modd Secure Boot yn weithredol ac ennill rheolaeth lawn dros y broses gychwyn bellach, gan gynnwys llwytho OS arall, addasu system cydrannau system weithredu a ffordd osgoi amddiffyniad Lockdown.

Yn yr un modd Γ’ bregusrwydd BootHole y llynedd, nid yw diweddaru'r cychwynnwr yn ddigon i rwystro'r broblem, gan y gall ymosodwr, waeth beth fo'r system weithredu a ddefnyddir, ddefnyddio cyfryngau cychwynadwy gyda hen fersiwn fregus wedi'i llofnodi'n ddigidol o GRUB2 i gyfaddawdu UEFI Secure Boot. Dim ond trwy ddiweddaru'r rhestr dirymu tystysgrif (dbx, Rhestr Diddymu UEFI) y gellir datrys y broblem, ond yn yr achos hwn bydd y gallu i ddefnyddio hen gyfryngau gosod gyda Linux yn cael ei golli.

Ar systemau gyda firmware sydd Γ’ rhestr diddymu tystysgrif wedi'i diweddaru, dim ond adeiladau wedi'u diweddaru o ddosbarthiadau Linux y gellir eu llwytho yn y modd Boot Diogel UEFI. Bydd angen i ddosbarthiadau ddiweddaru gosodwyr, llwythwyr cychwyn, pecynnau cnewyllyn, firmware fwupd a haen shim, gan gynhyrchu llofnodion digidol newydd ar eu cyfer. Bydd yn ofynnol i ddefnyddwyr ddiweddaru delweddau gosod a chyfryngau bootable eraill, yn ogystal Γ’ llwytho rhestr diddymu tystysgrif (dbx) i mewn i firmware UEFI. Cyn diweddaru dbx i UEFI, mae'r system yn parhau i fod yn agored i niwed waeth beth yw gosod diweddariadau yn yr OS. Gellir asesu statws gwendidau ar y tudalennau hyn: Ubuntu, SUSE, RHEL, Debian.

Er mwyn datrys problemau sy'n codi wrth ddosbarthu tystysgrifau wedi'u dirymu, yn y dyfodol bwriedir defnyddio'r mecanwaith SBAT (Targedu Uwch Boot Diogel UEFI), y mae cefnogaeth ar ei gyfer wedi'i roi ar waith ar gyfer GRUB2, shim a fwupd, a bydd yn dechrau o'r diweddariadau nesaf. a ddefnyddir yn lle'r swyddogaeth a ddarperir gan y pecyn dbxtool. Datblygwyd SBAT ar y cyd Γ’ Microsoft ac mae'n golygu ychwanegu metadata newydd at ffeiliau gweithredadwy cydrannau UEFI, sy'n cynnwys gwybodaeth am y gwneuthurwr, y cynnyrch, y gydran a'r fersiwn. Mae'r metadata penodedig wedi'i ardystio Γ’ llofnod digidol a gellir ei gynnwys hefyd yn y rhestrau o gydrannau a ganiateir neu a waherddir ar gyfer UEFI Secure Boot. Felly, bydd SBAT yn caniatΓ‘u ichi drin rhifau fersiynau cydran yn ystod y dirymiad heb yr angen i adfywio allweddi ar gyfer Secure Boot a heb gynhyrchu llofnodion newydd ar gyfer y cnewyllyn, shim, grub2 a fwupd.

Gwendidau a nodwyd:

  • CVE-2020-14372 - Gan ddefnyddio'r gorchymyn acpi yn GRUB2, gall defnyddiwr breintiedig ar y system leol lwytho tablau ACPI wedi'u haddasu trwy osod SSDT (Tabl Disgrifiad System Eilaidd) yn y cyfeiriadur /boot/efi a newid gosodiadau yn grub.cfg. Er bod modd Secure Boot yn weithredol, bydd yr SSDT arfaethedig yn cael ei weithredu gan y cnewyllyn a gellir ei ddefnyddio i analluogi amddiffyniad LockDown sy'n blocio llwybrau osgoi Boot Secure UEFI. O ganlyniad, gall ymosodwr gyflawni llwytho ei fodiwl cnewyllyn neu god rhedeg trwy'r mecanwaith kexec, heb wirio'r llofnod digidol.
  • Mae CVE-2020-25632 yn fynediad cof di-ddefnydd wrth weithredu'r gorchymyn rmmod, sy'n digwydd pan wneir ymgais i ddadlwytho unrhyw fodiwl heb ystyried y dibyniaethau sy'n gysylltiedig ag ef. Nid yw'r bregusrwydd yn eithrio creu camfanteisio a allai arwain at weithredu cod sy'n osgoi dilysiad Secure Boot.
  • CVE-2020-25647 Mae all-fynediad yn ysgrifennu yn y swyddogaeth grub_usb_device_initialize() a elwir wrth gychwyn dyfeisiau USB. Gellir manteisio ar y broblem trwy gysylltu dyfais USB a baratowyd yn arbennig sy'n cynhyrchu paramedrau nad yw eu maint yn cyfateb i faint y byffer a ddyrennir ar gyfer strwythurau USB. Gall ymosodwr gyflawni gweithrediad cod nad yw wedi'i wirio yn Secure Boot trwy drin dyfeisiau USB.
  • Mae CVE-2020-27749 yn orlif byffer yn y swyddogaeth grub_parser_split_cmdline(), a all gael ei achosi trwy nodi newidynnau sy'n fwy nag 2 KB ar linell orchymyn GRUB1. Mae'r bregusrwydd yn caniatΓ‘u gweithredu cod i osgoi Secure Boot.
  • CVE-2020-27779 - Mae'r gorchymyn cutmem yn caniatΓ‘u i ymosodwr dynnu ystod o gyfeiriadau o'r cof i osgoi Secure Boot.
  • CVE-2021-3418 - Creodd newidiadau i shim_lock fector ychwanegol i fanteisio ar fregusrwydd y llynedd CVE-2020-15705. Trwy osod y dystysgrif a ddefnyddiwyd i lofnodi GRUB2 mewn dbx, roedd GRUB2 yn caniatΓ‘u i unrhyw gnewyllyn gael ei lwytho'n uniongyrchol heb wirio'r llofnod.
  • CVE-2021-20225 - Posibilrwydd ysgrifennu data y tu allan i ffiniau wrth redeg gorchmynion gyda nifer fawr iawn o opsiynau.
  • CVE-2021-20233 - Posibilrwydd ysgrifennu data y tu allan i ffiniau oherwydd cyfrifiad maint byffer anghywir wrth ddefnyddio dyfynbrisiau. Wrth gyfrifo'r maint, tybiwyd bod angen tri nod i ddianc rhag un dyfyniad, pan oedd angen pedwar mewn gwirionedd.

Ffynhonnell: opennet.ru

Ychwanegu sylw