Release of Coreboot 4.17

È stato pubblicato il rilascio del progetto CoreBoot 4.17, che mira a sviluppare un'alternativa open source ai firmware proprietari e BIOS. Il codice del progetto è distribuito sotto licenza GPLv2. Nella creazione della nuova versione hanno partecipato 150 sviluppatori, che hanno preparato oltre 1300 modifiche.

Principali modifiche:

  • È stata risolta una vulnerabilità (CVE-2022-29264) presente nelle versioni di CoreBoot da 4.13 a 4.16, che consente, su sistemi con AP (Application Processor), di eseguire codice a livello di SMM (System Management Mode), prioritario (Ring -2) rispetto alla regia hypervisor e alla protezione di livello zero, con accesso illimitato a tutta la memoria. Il problema è stato causato da una chiamata errata al gestore SMI nel modulo smm_module_loader.
  • È stato aggiunto il supporto per 12 schede madri, 5 delle quali sono utilizzate su dispositivi con Chrome OS o su server Google. Tra le schede non collegate a Google ci sono:
    • Clevo L140MU / L141MU / L142MU
    • Dell Precision T1650
    • HP Z220 CMT Workstation
    • Star Labs LabTop Mk III (i7-8550u), LabTop Mk IV (i3-10110U, i7-10710U), Lite Mk III (N5000) e Lite Mk IV (N5030).
  • È stata interrotta la supporto per le schede madri Google Deltan e Deltaur.
  • È stato aggiunto un nuovo payload coreDOOM, che consente di avviare il gioco DOOM da Coreboot. Nel progetto è stato utilizzato il codice doomgeneric, portato su libpayload. Per l'output viene utilizzato il framebuffer lineare di Coreboot, e i file WAD con le risorse di gioco vengono caricati da CBFS.
  • Sono stati aggiornati i componenti payload SeaBIOS 1.16.0 e iPXE 2022.1.
  • È stata aggiunta la modalità SeaGRUB (GRUB2 sopra SeaBIOS), che consente a GRUB2 di utilizzare le chiamate di callback fornite da SeaBIOS, ad esempio, per accedere all'hardware che non è accessibile dal payload GRUB2.
  • È stata aggiunta una protezione contro l'attacco SinkHole, che permette di eseguire codice a livello di SMM (System Management Mode).
  • È stata implementata una funzione integrata per generare tabelle statiche delle pagine di memoria da file in assembly, senza la necessità di chiamare utilità esterne.
  • È stata consentita la scrittura di informazioni di debug nella console CBMEMC dai gestori SMI quando si utilizza DEBUG_SMI.
  • È stato modificato il sistema dei gestori di inizializzazione CBMEM, sostituendo i gestori collegati alle fasi con due gestori CBMEM_CREATION_HOOK (utilizzato nella fase iniziale che crea cbmem) e CBMEM_READY_HOOK (utilizzato in fase già creata cbmem).
  • È stato aggiunto il supporto per il PSB (Platform Secure Boot), attivato dal processore PSP (Platform Security Processor) per la verifica dell'integrità del BIOS tramite firma digitale.
  • È stata aggiunta un'implementazione propria del gestore dei dati di debug trasmessi da FSP (FSP Debug Handler).
  • Aggiunte funzioni specifiche per i fornitori TIS (TPM Interface Specification) per la lettura e la scrittura direttamente dai registri TPM (Trusted Platform Module) — tis_vendor_read() e tis_vendor_write().
  • È stato aggiunto il supporto per l'intercettazione della dereferenziazione dei puntatori nulli attraverso i registri di debug.
  • È stata implementata la rilevazione dei dispositivi i2c, semplificando il lavoro con schede dotate di touchpad o schermi touch di vari produttori.
  • È stata aggiunta la possibilità di salvare i dati temporali in un formato adatto per la generazione di grafici FlameGraph, che mostrano chiaramente quanto tempo viene speso in diverse fasi di avvio.
  • Nell'utilità cbmem è stata aggiunta l'opzione per inserire nella tabella cbmem un 'timestamp' del tempo dallo spazio utente, consentendo di riflettere in cbmem gli eventi nelle fasi eseguite dopo CoreBoot.

Si segnala anche la pubblicazione da parte della fondazione OSFF (Open-Source Firmware Foundation) di una lettera aperta a Intel, in cui si propone di rendere i set di supporto firmware (FSP, Firmware Support Package) più modulari e di iniziare a pubblicare la documentazione relativa all'inizializzazione dei SoC Intel. L'assenza di codice FSP rende significativamente difficile la creazione di firmware open source e ostacola la promozione dei progetti Coreboot, U-Boot e LinuxBoot su hardware Intel. In precedenza, un'iniziativa simile ha avuto successo e Intel ha aperto il codice dei firmware del blocco PSE (Programmable Services Engine) richiesti dalla comunità.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS 🔥 Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS | ProHoster