Kritieke kwetsbaarheid in de GRUB2 bootloader, die het mogelijk maakt om UEFI Secure Boot te omzeilen

In de GRUB2-loader gevonden 8 kwetsbaarheden. De meest gevaarlijke een probleem (CVE-2020-10713), die de codenaam BootHole heeft gekregen, biedt de mogelijkheid om het UEFI Secure Boot-mechanisme te omzeilen en ongetoetste kwaadaardige software te installeren. Een kenmerk van deze kwetsbaarheid is dat het niet voldoende is om GRUB2 bij te werken om deze te verhelpen, aangezien de aanvaller een opstartmedium met een oudere kwetsbare versie kan gebruiken, ondertekend met een digitale handtekening. De aanvaller kan het verificatieproces niet alleen voor Linux, maar ook voor andere besturingssystemen compromitteren, waaronder Windows.

Het probleem wordt alleen opgelost door het bijwerken in het systeem van de lijst met ingetrokken certificaten (dbx, UEFI Revocation List), maar in dit geval gaat de mogelijkheid verloren om oude installatie-media met Linux te gebruiken. Sommige hardwarefabrikanten hebben al een bijgewerkte lijst met ingetrokken certificaten in hun firmware opgenomen, op dergelijke systemen kan alleen een bijgewerkte versie van Linux-distros worden opgestart in de UEFI Secure Boot-modus.

Om de kwetsbaarheid in de distributies te verhelpen, is ook het bijwerken van installateurs, loaders, kernelpakketten, fwupd-firmware en de shim-laag vereist, waarbij nieuwe digitale handtekeningen voor hen moeten worden gegenereerd. Gebruikers moeten hun installatie-images en andere opstartmedia bijwerken en de lijst met ingetrokken certificaten (dbx) naar de UEFI-firmware uploaden. Totdat dbx in UEFI is bijgewerkt, blijft het systeem kwetsbaar, ongeacht of updates zijn geïnstalleerd in het besturingssysteem.

Kwetsbaarheid is caused by bufferoverloop, dat kan worden misbruikt om willekeurige code uit te voeren tijdens het opstartproces.
De kwetsbaarheid doet zich voor wanneer de inhoud van het configuratiebestand grub.cfg wordt geanalyseerd, dat meestal in de ESP (EFI System Partition) staat en door een aanvaller met beheerdersrechten kan worden bewerkt zonder de integriteit van de ondertekende uitvoerbare bestanden van shim en GRUB2 te schenden. Vanwege fouten een fout in de parsercode, gaf de foutafhandelaar YY_FATAL_ERROR alleen een waarschuwing weer, maar beëindigde het programma niet. Het gevaar van de kwetsbaarheid wordt verminderd door de noodzaak voor verhoogde rechten tot het systeem, desondanks kan het probleem gewild zijn voor het implementeren van verborgen rootkits bij fysieke toegang tot de hardware (als het mogelijk is om vanaf hun eigen medium op te starten).

In de meeste Linux-distributies wordt een kleine shim-laag, die digitaal is ondertekend door Microsoft, gebruikt voor veilige opstart. Deze laag verifieert GRUB2 met zijn eigen certificaat, waardoor ontwikkelaars van distributies niet elk kernel- en GRUB-update bij Microsoft hoeven te ondertekenen. De kwetsbaarheid stelt een aanvaller in staat om via wijziging van de inhoud van grub.cfg hun eigen code uit te voeren na succesvolle verificatie van de shim, maar vóór het opstarten van het besturingssysteem, waardoor de vertrouwensketen in het actieve Secure Boot-modus kan worden binnengedrongen en volledige controle over het verdere opstartproces kan worden verkregen, inclusief het opstarten van een ander besturingssysteem, het wijzigen van besturingssysteemcomponenten en het omzeilen van beveiliging. Lockdown.

Kritieke kwetsbaarheid in de GRUB2 bootloader, die het mogelijk maakt om UEFI Secure Boot te omzeilen

Andere kwetsbaarheden in GRUB2:

  • CVE-2020-14308 — buffer overflow door gebrek aan groottecontrole van het toegewezen geheugengebied in grub_malloc;
  • CVE-2020-14309 — integer overflow in grub_squash_read_symlink, wat kan leiden tot schrijven van gegevens buiten het toegewezen buffer;
  • CVE-2020-14310 — integer overflow in read_section_from_string, wat kan leiden tot schrijven van gegevens buiten het toegewezen buffer;
  • CVE-2020-14311 — integer overflow in grub_ext2_read_link, wat kan leiden tot schrijven van gegevens buiten het toegewezen buffer;
  • CVE-2020-15705 — staat toe om niet-ondertekende kernels te laden bij directe opstart in Secure Boot-modus zonder shim-laag;
  • CVE-2020-15706 — toegang tot al eerder vrijgegeven geheugen (use-after-free) bij het overschrijven van een functie tijdens uitvoering;
  • CVE-2020-15707 — integer overflow in de handler voor initrd-grootte.

Pakketten met patches zijn uitgebracht voor Debian, Ubuntu, RHEL en SUSE. Voor GRUB2 is een is er een patchset.

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers 🔥 Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster