
Werkzeugkasten zum Dekodieren, Inspizieren und Modifizieren von UEFI-Firmware-Volumes und Variablenspeichern. Unterstützt die Zertifikatsregistrierung für Secure Boot, PE-Binärsignatur-Analyse und EFI-Variablenverwaltung für virtualisierte Umgebungen.
Dies ist eine kleine Sammlung von Werkzeugen für edk2-Firmware-Images. Sie unterstützen das Dekodieren und Anzeigen des Inhalts von Firmware-Volumes. Variablenspeicher (OVMF_VARS.fd) können modifiziert werden, um beispielsweise Secure-Boot-Zertifikate zu registrieren.
Dekodiert und zeigt den Inhalt von Firmware-Volumes an.
Verwendung: virt-fw-dump -i <file>.
Versuchen Sie virt-fw-dump --help für weitere Informationen, es gibt einige Optionen zum
Filtern der Ausgabe.
Druckt und bearbeitet Variablenspeicher-Volumes. Derzeit konzentriert auf das Registrieren von Zertifikaten und das Aktivieren von Secure Boot.
Variablen drucken: virt-fw-vars -i <file> --print.
Zertifikate registrieren:
virt-fw-vars \
--input <template> \
--output <vars> \
--enroll-redhat \
--secure-boot
Versuchen Sie virt-fw-vars --help für weitere Nutzungsinformationen.
virt-fw-vars kann edk2-Variablenspeicher (die Flash-Firmware-Volumes sind) und AWS-UEFI-Variablenspeicher verarbeiten. Das Eingabeformat wird automatisch erkannt und das gleiche Format wird für die Ausgabe verwendet.
Die Arbeit mit edk2-Variablenspeichern erfordert ein Firmware-Volume als Eingabe. Typischerweise wird die beim Erstellen von OVMF erstellte Datei OVMF_VARS.fd dafür verwendet (es ist ein leerer Variablenspeicher).
AWS-Variablenspeicher können auch von Grund auf neu erstellt und mit der Option
--output-aws in eine Datei geschrieben werden.
Druckt und bearbeitet EFI-Signaturdatenbank-Dateien, Beispiel:
virt-fw-sigdb -i /etc/pki/ca-trust/extracted/edk2/cacerts.bin --print
Versuchen Sie virt-fw-sigdb --help für weitere Nutzungsinformationen.
Liest EFI-Variablen aus linux efivarfs und dekodiert/zeigt sie an.
Verwaltet die EFI-Boot-Konfiguration für UKIs (Unified Kernel Images) bei Verwendung des direkten Bootens (ohne Bootloader wie GRUB oder systemd-boot).
Informationsauszug für PE-Binärdateien (das von EFI verwendete Format).
Listet Signaturen und Zertifikatskette für PE-Binärdateien auf. Kann auch Zertifikate & Signaturen extrahieren.
Es gibt noch nicht viel Dokumentation, sorry. Die besten Code-Beispiele für den
Einstieg sind wahrscheinlich die Testfälle (siehe tests/tests.py) und der Code
für das Dienstprogramm virt-fw-vars (siehe virt/firmware/vars.py).
Release: pip3 install virt-firmware
Snapshot: pip3 install git+https://gitlab.com/kraxel/virt-firmware.git
Ich nehme MRs an.
Auf dem Repository ist ein KI-Review-Bot aktiv, der MRs kommentiert. Er ist gut in der Rechtschreibprüfung. Manchmal bietet er nützliche Vorschläge oder deckt Inkonsistenzen in den Patches auf. Manchmal fordert er dumme Dinge wie sorgfältige Fehlerüberprüfung in Testfällen. Manchmal schlägt er vor, Fehlerbedingungen zu prüfen, die nicht auftreten können, aber der Bot ist offenbar nicht klug genug, das zu erkennen. Manchmal schlägt er Code-Umstrukturierungen vor, bei denen es eher eine Frage des Geschmacks oder der persönlichen Vorliebe ist, ob man den einen oder anderen Weg nimmt.
Also, nehmen Sie den Bot nicht zu ernst.