6 haavatavust GRUB2 laadimise süsteemis, mis võimaldavad UEFI Secure Boot'i ületada

Avaldatud on komplekt patše, mis kõrvaldab 6 haavatavust GRUB2 laadimise süsteemis, millest enamik viib mälu juurde pääsemiseni pärast selle vabastamist (use-after-free). Potentsiaalselt avastatud probleemid võivad olla kasutatud UEFI Secure Boot'i kinnitamise mehhanismi ületamiseks. Haavatavuste kõrvaldamise staatust erinevates distributiivides saab hinnata nende lehtede kaudu: Debian, Ubuntu, SUSE, RHEL, Arch ja Fedora. GRUB2 probleemide kõrvaldamiseks ei piisa lihtsalt paketi uuendamisest; samuti tuleb luua uusi sisemisi digitaalallkirju ning uuendada paigaldajaid, laadureid, kerneli pakette, fwupd-firmware ja shim-kihti.

Tuvastatud haavatavused:

  • CVE-2025-61661 — virheellisesti osoitetun puskurin kirjoittaminen funktiossa grub_usb_get_string(), jota voidaan hyödyntää käsiteltäessä UTF-8- ja UTF-16-koodauksilla lähetettyjä merkkijonoja USB-laitteiden liittämisen yhteydessä. Ongelma johtuu siitä, että puskuri varattiin sen mukaan, kuinka suuri merkkijono ilmoitettiin ensimmäisessä USB-laitteen viestissä, ja koodausmuunnoksen yhteydessä laskettu koko perustui myöhempiin lukuoperaatioihin USB-laitteelta. Hyökkäykseen voidaan käyttää muokattua USB-laitetta, joka alun perin palauttaa alhaisemman koon arvon.
  • CVE-2025-61663, CVE-2025-61664, CVE-2025-54770, CVE-2025-61662 — puutteellinen käsittely normal-, normal_exit-, net_set_vlan- ja gettext-komentojen poistamisessa moduuleista normal, net ja gettext, mikä luo olosuhteita muistin käyttöön vapauttamisen jälkeen (use-after-free), jos merkittyjä komentoja suoritetaan vastaavien moduulien poistamisen jälkeen. Vastaavia haavoittuvuuksia on havaittu myös functional_test- ja all_functional_test-komentojen kohdalla, mutta niille ei ole myönnetty CVE-tunnuksia, koska nämä komennot kuuluvat testauskirjastoon ja niitä ei tulisi sisällyttää tuotantokokoelmiin.
  • CVE-2025-54771 — viga, mis tekib «fs» struktuuride linkide loendamisel funktsioonis grub_file_close(), viies mälu kasutamiseni pärast selle vabastamist (use-after-free).

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

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster