Vulnerabili difficiuli di risolve in GRUB2 chì permettenu di scaccià UEFI Secure Boot

L'infurmazione hè stata divulgata nantu à e vulnerabilità 8 in u bootloader GRUB2, chì permettenu di scaccià u mecanismu UEFI Secure Boot è eseguisce un codice micca verificatu, per esempiu, implementà malware in esecuzione à u nivellu di bootloader o kernel.

Ricurdemu chì in a maiò parte di e distribuzioni Linux, per l'avviamentu verificatu in u modu UEFI Secure Boot, hè utilizatu un picculu stratu shim, firmatu digitale da Microsoft. Questa strata verifica GRUB2 cù u so propiu certificatu, chì permette à i sviluppatori di distribuzione ùn avè micca ogni kernel è aghjurnamentu GRUB certificatu da Microsoft. Vulnerabilità in GRUB2 permettenu di ottene l'esekzione di u vostru còdice in u stadiu dopu a verificazione di shim successu, ma prima di carricà u sistema operatore, cunghjuntà in a catena di fiducia quandu u modu Secure Boot hè attivu è ottene u cuntrollu tutale di u prucessu di boot, cumpresu. Caricà un altru OS, mudificà u sistema di cumpunenti di u sistema operatore è bypassa a prutezzione Lockdown.

Cum'è cù a vulnerabilità BootHole di l'annu passatu, l'aghjurnamentu di u bootloader ùn hè micca abbastanza per bluccà u prublema, postu chì un attaccu, indipendentemente da u sistema upirativu utilizatu, pò aduprà media bootable cù una vechja, firmata digitale, versione vulnerabile di GRUB2 per cumprumette UEFI Secure Boot. U prublema pò esse solu solu aghjurnendu a lista di revocazione di certificati (dbx, UEFI Revocation List), ma in questu casu l'abilità di utilizà vechji media di installazione cù Linux serà persa.

In i sistemi cù firmware chì hà una lista di revocazione di certificati aghjurnata, solu e custruzzioni aghjurnate di distribuzioni Linux ponu esse caricate in u modu UEFI Secure Boot. I distribuzioni anu da aghjurnà l'installatori, i bootloaders, i pacchetti di kernel, fwupd firmware è shim layer, generendu novi firme digitali per elli. L'utilizatori seranu richiesti d'aghjurnà l'imaghjini di l'installazione è altri media bootable, è ancu di carica una lista di revocazione di certificati (dbx) in u firmware UEFI. Prima di aghjurnà dbx à UEFI, u sistema resta vulnerabile indipendentemente da a stallazione di l'aghjurnamenti in u SO. U statutu di e vulnerabilità pò esse valutatu in queste pagine: Ubuntu, SUSE, RHEL, Debian.

Per risolve i prublemi chì sorgenu quandu si distribuiscenu certificati revocati, in u futuru hè previstu di utilizà u mecanismu SBAT (UEFI Secure Boot Advanced Targeting), supportu per quale hè statu implementatu per GRUB2, shim è fwupd, è partendu da e prossime aghjornamenti seranu. utilizatu invece di a funziunalità furnita da u pacchettu dbxtool. SBAT hè statu sviluppatu in cunjunzione cù Microsoft è implica l'aghjunzione di novi metadati à i fugliali eseguibili di cumpunenti UEFI, chì includenu infurmazioni nantu à u fabricatore, u pruduttu, u cumpunente è a versione. I metadati specificati sò certificati cù una firma digitale è ponu ancu esse inclusi in a lista di cumpunenti permessi o pruibiti per UEFI Secure Boot. Cusì, SBAT vi permetterà di manipulà i numeri di versione di cumpunenti durante a revocazione senza a necessità di rigenerate e chjave per Secure Boot è senza generà novi firme per u kernel, shim, grub2 è fwupd.

Vulnerabilità identificate:

  • CVE-2020-14372 - Utilizendu u cumandamentu acpi in GRUB2, un utilizatore privilegiatu nantu à u sistema lucale pò carricà e tabelle ACPI modificate mettendu una SSDT (Tabella di Descrizzione di Sistema Secundaria) in u cartulare /boot/efi è cambiendu i paràmetri in grub.cfg. Ancu se u Modu Secure Boot hè attivu, a SSDT pruposta serà eseguita da u kernel è pò esse usata per disattivà a prutezzione LockDown chì blucca i percorsi di bypass UEFI Secure Boot. In u risultatu, un attaccu pò ottene u caricamentu di u so modulu di u kernel o u codice in esecuzione attraversu u mecanismu kexec, senza verificà a firma digitale.
  • CVE-2020-25632 hè un accessu à a memoria senza usu dopu in l'implementazione di u cumandamentu rmmod, chì si verifica quandu un tentativu di scaricamentu di qualsiasi modulu senza piglià in contu e dipendenze assuciate cun ellu. A vulnerabilità ùn esclude micca a creazione di un sfruttamentu chì puderia guidà à l'esekzione di codice bypassendu a verificazione Secure Boot.
  • CVE-2020-25647 Una scrittura fora di i limiti in a funzione grub_usb_device_initialize() chjamata quandu inizializza i dispositi USB. U prublema pò esse sfruttatu cunnessu un dispositivu USB preparatu apposta chì pruduce paràmetri chì a dimensione ùn currisponde micca à a dimensione di u buffer attribuita à strutture USB. Un attaccu pò ottene l'esekzione di codice chì ùn hè micca verificatu in Secure Boot manipulendu i dispositi USB.
  • CVE-2020-27749 hè un overflow di buffer in a funzione grub_parser_split_cmdline (), chì pò esse causatu da specificà variabili più grande di 2 KB in a linea di cumanda GRUB1. A vulnerabilità permette l'esekzione di codice per bypassà Secure Boot.
  • CVE-2020-27779 - U cumandamentu cutmem permette à un attaccu di caccià una serie di indirizzi da a memoria per bypassà Secure Boot.
  • CVE-2021-3418 - I cambiamenti à shim_lock anu creatu un vettore supplementu per sfruttà a vulnerabilità CVE-2020-15705 di l'annu passatu. Installendu u certificatu utilizatu per firmà GRUB2 in dbx, GRUB2 hà permessu di carica direttamente qualsiasi kernel senza verificà a firma.
  • CVE-2021-20225 - Possibilità di scrive dati fora di i limiti quandu eseguite cumandamenti cù un gran numaru d'opzioni.
  • CVE-2021-20233 - Possibilità di scrive dati fora di i limiti per via di un calculu incorrectu di a dimensione di u buffer quandu si usanu virgolette. Quandu hà calculatu a dimensione, era presumitu chì trè caratteri eranu necessarii per scappà una sola citazione, quandu in fattu quattru eranu necessarii.

Source: opennet.ru

Add a comment