
Toolkit per decodificare, ispezionare e modificare volumi del firmware UEFI e archivi di variabili. Supporta la registrazione dei certificati Secure Boot, l'analisi delle firme dei binari PE e la gestione delle variabili EFI per ambienti virtualizzati.
Questa è una piccola raccolta di strumenti per immagini firmware edk2. Supportano la decodifica e la stampa del contenuto dei volumi firmware. Gli archivi di variabili (OVMF_VARS.fd) possono essere modificati, ad esempio per registrare certificati secure boot.
Decodifica e stampa il contenuto dei volumi firmware.
Utilizzo: virt-fw-dump -i <file>.
Prova virt-fw-dump --help per maggiori informazioni; ci sono alcune opzioni per
filtrare l'output.
Stampa e modifica gli archivi di variabili. Attualmente è focalizzato sulla registrazione di certificati e sull'abilitazione del secure boot.
Stampare le variabili: virt-fw-vars -i <file> --print.
Registrare certificati:
virt-fw-vars \
--input <template> \
--output <vars> \
--enroll-redhat \
--secure-boot
Prova virt-fw-vars --help per ulteriori informazioni sull'utilizzo.
virt-fw-vars può gestire archivi di variabili edk2 (che sono volumi firmware flash) e archivi di variabili uefi AWS. Il formato di input viene rilevato automaticamente e lo stesso formato viene utilizzato per l'output.
Lavorare con gli archivi di variabili edk2 richiede un volume firmware come input. In genere si usa il file OVMF_VARS.fd creato durante la compilazione di OVMF (si tratta di un archivio di variabili vuoto).
Gli archivi di variabili AWS possono anche essere creati da zero e scritti in un
file utilizzando l'opzione --output-aws.
Stampa e modifica file di database firme efi, esempio:
virt-fw-sigdb -i /etc/pki/ca-trust/extracted/edk2/cacerts.bin --print
Prova virt-fw-sigdb --help per ulteriori informazioni sull'utilizzo.
Legge le variabili efi da linux efivarfs e le decodifica/le stampa.
Gestisce la configurazione di boot efi per UKI (immagini kernel unificate) quando si utilizza l'avvio diretto (senza boot loader come grub o systemd-boot).
Dump informativo per binari pe (il formato utilizzato da efi).
Elenca firme e catena di certificati per binari pe. Può anche estrarre certificati e firme.
Non c'è ancora molta documentazione, mi dispiace. Le migliori letture di codice per
iniziare sono probabilmente i casi di test (vedi tests/tests.py) e il
codice dell'utility virt-fw-vars (vedi virt/firmware/vars.py).
Release: pip3 install virt-firmware
Snapshot: pip3 install git+https://gitlab.com/kraxel/virt-firmware.git
Accetto MR.
C'è un bot di revisione AI attivo sul repo che commenta le MR. È bravo nel controllo ortografico. A volte offre suggerimenti utili o rileva incongruenze nelle patch. A volte chiede cose stupide come un'attenta verifica degli errori nei casi di test. A volte suggerisce di verificare condizioni di errore che non possono verificarsi, ma il bot apparentemente non è abbastanza intelligente da capirlo. A volte suggerisce riorganizzazioni del codice dove è più una questione di gusto o preferenza personale se si sceglie una strada piuttosto che l'altra.
Quindi, non prendere il bot troppo sul serio.