Avaldatud teave 21 GRUB2 nurgas esineva haavatavuse kohta, millest enamik põhjustab mälupuhvri ületäitumise ja mille abil on võimalik ületada UEFI Secure Booti allkirjastamise mehhanismi. Probleemid on seni lahendatud ainult plaastrina. Haavatavuste parandamise staatus jaotustes on saadaval järgmistel lehtedel: Debian, Ubuntu, SUSE, RHEL, Fedora. GRUB2 probleemide lahendamiseks ei piisa lihtsalt paketi uuendamisest, vajalik on ka uute sisemiste digitaalsete allkirjade koostamine ja installijate, laadijate, kernelipaketi, fwupd-firmware'i ja shim-kihiga kaasajamine.
Tuvastatud haavatavused:
- CVE-2024-45774: mäluülekanne läheduses, kui analüüsitakse spetsiaalselt loodud JPEG-pilte.
- CVE-2024-45776, CVE-2024-45777: täisarvude ületäitumine spetsiaalselt loodud mo-failide lugemisel, mis viib mälupuhvri ületäitumiseni.
- CVE-2024-45778, CVE-2024-45779: täisarvude ületäitumine rikutud BFS failisüsteemiga töötamisel, mis põhjustab mälupuhvri ületäitumise.
- CVE-2024-45780: täisarvude ületäitumine spetsiaalselt loodud tar-archive'ide töötlemisel, mis viib mälupuhvri ületäitumiseni.
- CVE-2024-45781, CVE-2025-0677: puhver ületamine, kui töötatakse kahjustatud UFS failisüsteemiga.
- CVE-2024-45782, CVE-2025-1125: puhver ületamine, kui monteeritakse spetsiaalselt kujundatud HFS partitsioon.
- CVE-2025-0622: mälu juurde pääsemine pärast selle vabastamist moodulitega tegelemisel, mis võib viia ründaja koodi täitmiseni.
- CVE-2025-0624: puhver ületamine võrgu kaudu käivitamisel.
- CVE-2025-0678: puhver ületamine kahjustatud Squash4 failisüsteemiga töötamisel.
- CVE-2025-0684: puhver ületamine sümboolsete linkide haldamisel Reiserfs failisüsteemis.
- CVE-2025-0685: puhver ületamine sümboolsete linkide haldamisel JFS failisüsteemis.
- CVE-2025-0685: puhver ületamine sümboolsete linkide haldamisel ROMFS failisüsteemis.
- CVE-2025-0689: puhver ületamine, kui töötatakse spetsiaalselt muudetud UDF partitsiooniga.
- CVE-2025-0690: puhver ületamine, kui saadakse spetsiaalselt kujundatud andmeid klaviatuurilt.
- CVE-2025-1118: Lockdown isolatsioonirežiimi vältimine ja juhuslikest mäluandmetest sisu väljavõtmine dump-käsku täites.
- CVE-2024-45775: mälu eraldamise vigakoodi kontrollimise puudumine edastatud argumendide parsimisel võib kahjustada IVT (Interrupt Vector Table) andmeid.
- CVE-2024-45783: nullviitadele pääsemine vigase HFS+ failisüsteemi montaaži korral.
Enamikus Linuxi distributsioonides kasutatakse UEFI Secure Booti kinnitatud laadimise jaoks väikest shim-kihti, mille on digitaalallkirjastanud Microsoft. See kiht kontrollib GRUB2 oma sertifikaadiga, võimaldades distributsioonide arendajatel mitte allkirjastada iga kernelit ja GRUB-i Microsoftis. GRUB2 haavatavused võimaldavad koodi käivitamist pärast shim-i edukat kontrollimist, kuid enne operatsioonisüsteemi laadimist, sekkudes usaldusketti aktiivse Secure Booti režiimis ja saavutades täieliku kontrolli edasise laadimisprotsessi üle, näiteks teise operatsioonisüsteemi laadimise, operatsioonisüsteemi komponentide modifitseerimise ja Lockdown kaitse ümbersuunamise jaoks.
Digitaalallkirja tagasi võtmata haavatavuse blokeerimiseks võivad distributsioonid kasutada SBAT (UEFI Secure Boot Advanced Targeting) mehhanismi, mille toetust on rakendatud GRUB2, shim ja fwupd enamikus populaarsetes Linuxi distributsioonides. SBAT on välja töötatud koostöös Microsoftiga ning see hõlmab täiendavate metainformatsioonide lisamist UEFI komponente sisaldavatesse täiturfailidesse, sealhulgas tootja, toote, komponendi ja versiooni teavet. Mainitud metainformatsioon on digitaalallkirjaga allkirjastatud ja seda saab eraldi lisada lubatud või keelatud komponentide loetellu UEFI Secure Boot jaoks.
SBAT võimaldab blokeerida digitaalallkirja kasutamise konkreetsete komponentide versiooninumbrite jaoks ilma Secure Booti võtmete tagasivõtmiseta. SBAT kaudu haavatavuste blokeerimine ei vaja UEFI (dbx) tagasivõetud sertifikaatide loetelu kasutamist, vaid toimub sisemise võtme asendamise tasemel allkirjade genereerimiseks ja GRUB2, shim ja muude tarnitud distributsioonide käivitamisartefaktide uuendamiseks. Enne SBAT rakendamist oli tagasivõetud sertifikaatide loetelu (dbx, UEFI tagasivõetud loend) uuendamine hädavajalik, et haavatavus täielikult blokeerida, kuna ründaja, sõltumata kasutatavast operatsioonisüsteemist, sai UEFI Secure Booti kompromiteerimiseks kasutada vananemistootes haavatavat GRUB2 versiooni, mille digitaalallkiri oli kinnitatud.
Allikas: opennet.ru
