Avalikustatud on 21 haavatavuse detailid GRUB2 laadijas, millest enamikud põhjustavad puhverülevoolu ja võivad olla kasutatud UEFI Secure Boot'i allkirjastatud käivitamise mehhanismi möödumiseks. Probleemid on praegu lahendatud ainult plaastri kujul. Haavatavuste lahendamise staatust erinevates distributsioonides saab hinnata järgmistelt lehtedelt: Debian, Ubuntu, SUSE, RHEL, Fedora. GRUB2 probleemide lahendamiseks ei piisa lihtsalt paketi uuendamisest, vaid tuleb ka genereerida uusi sisemisi digitaalseid allkirju ja uuendada installerid, laadijad, tuumapaketid, fwupd-firmware ja shim-kiht.
Tuletatud haavatavused:
- CVE-2024-45774: puhverpiiri ületamine spetsiaalselt vormindatud JPEG-piltide analüüsimisel.
- CVE-2024-45776, CVE-2024-45777: täisarvude ülevoolud spetsiaalselt vormindatud mo-failide lugemisel, mis viivad puhverpiiri ületamiseni.
- CVE-2024-45778, CVE-2024-45779: täisarvude ülevoolud kahjustatud BFS failisüsteemiga töötamisel, mis põhjustavad puhverülevoolu.
- CVE-2024-45780: täisarvude ülevool puhverpiiri ületamisel spetsiaalselt vormindatud tar-arhiveerimisel.
- CVE-2024-45781, CVE-2025-0677: puhverülevoolud kahjustatud UFS failisüsteemiga töötamisel.
- CVE-2024-45782, CVE-2025-1125: puhverülevoolud valikuliselt vormindatud HFS partitsiooni mountimisel.
- CVE-2025-0622: mälu juurde pääsemine pärast selle vabastamist moodulite haldamisel, võib viia ründaja koodi täitmiseni.
- CVE-2025-0624: puhverülevoolandmine võrgu kaudu laadimise ajal.
- CVE-2025-0678: puhverülevoolud kahjustatud Squash4 failisüsteemiga töötamisel.
- CVE-2025-0684: puhverülevoolud sümboolsetega sidemehaldust Reiserfs failisüsteemis.
- CVE-2025-0685: puhverülevoolud sümboolsetega sidemehaldust JFS failisüsteemis.
- CVE-2025-0685: puhverülevoolud sümboolsetega sidemehaldust ROMFS failisüsteemis.
- CVE-2025-0689: puhverülevoolud spetsiaalselt modifitseeritud UDF partitsiooniga töötamisel.
- CVE-2025-0690: puhverülevoolud spetsiaalselt vormindatud andmete saamisel klaviatuurilt.
- CVE-2025-1118: Lockdown režiimi möödumine ja juhuslike mäluandmete väljavõtmine dump-käsu täitmise kaudu.
- CVE-2024-45775: veakoodi kontrollimise puudumine mälu eraldamisel edastatud argumentide analüüsi käigus võib põhjustada IVT (Interrupt Vector Table) andmete kahjustumist.
- CVE-2024-45783: null pointer access when mounting an incorrect HFS+ filesystem.
In most Linux distributions, a small shim layer, signed by Microsoft, is used for verified boot in UEFI Secure Boot mode. This shim verifies GRUB2 with its own certificate, allowing distribution developers to avoid signing every kernel and GRUB update with Microsoft. Vulnerabilities in GRUB2 can enable code execution after the successful verification of the shim, but before the operating system is loaded, infiltrating the trust chain while Secure Boot is active and gaining full control over the boot process, allowing for loading another OS, modifying operating system components, and bypassing Lockdown protection.
Kuna digitaalallkirja tühistamiseta haavatavuste blokeerimiseks võivad jaotised kasutada mehhanismi SBAT (UEFI Secure Boot Advanced Targeting), mille tugi on rakendatud GRUB2, shim ja fwupd enamikes tuntud Linuxi jaotustes. SBAT on välja töötatud koostöös Microsoftiga ja hõlmab UEFI komponente sisaldavate esitamisfailide täiendavate metaandmete lisamist, mis sisaldavad teavet tootja, toote, komponendi ja versiooni kohta. Loomulikult alla kirjutatud metaandmed võivad eraldi kuuluda lubatud või keelatud komponentide loenditesse UEFI Secure Boot jaoks.
SBAT võimaldab blokeerida digitaalallkirja kasutamise üksikute komponentide versioonide numbrite jaoks ilma Secure Booti võtmete tühistamise vajaduseta. Haavatavuste blokeerimine SBAT kaudu ei nõua UEFI tühistatud sertifikaatide (dbx) loendi kasutamist, vaid toimub sisemise võtme vahetuse tasemel allkirjade genereerimise ja GRUB2, shim ning teiste jaotustelt tarnitud laadimisartefaktide uuendamise jaoks. Enne SBAT'i rakendamist oli tühistatud sertifikaatide (dbx, UEFI Revocation List) loendi uuendamine täieliku haavatavuse blokeerimise kohustuslik tingimus, kuna ründaja võis, olenemata kasutatavast operatsioonisüsteemist, UEFI Secure Booti kompromiteerida vanade haavatavate GRUB2 versioonidega, mis olid digitaalse allkirjaga allkirjastatud.
Allikas: opennet.ru
