Platbox
UEFI- und SMM-Bewertungstool
Funktionen
Platbox ist ein Werkzeug, das bei der Bewertung der Plattformsicherheit hilft:
- Gibt die Plattformregister aus, die aus Sicherheitssicht interessant sind
- Flash-Sperren
- MMIO- und Remapping-Sperren
- SMM-Basis und -Sperren
- MSRs
- RW-Zugriff auf den PCI-Konfigurationsraum von Geräten.
- RW auf physischen und virtuellen Speicher.
- Ermöglicht die Zuweisung von physischem Speicher und das Mapping von Speicher in den Benutzermodus.
- Lesen und Schreiben von MSRs.
- SPI-Flash-Inhalt (BIOS) in eine Datei ausgeben.
- Einfacher dummer SMI-Fuzzer.
- S3-Startskript (aus SMM-Lockbox) in eine Datei ausgeben.
- EFI-Speicherkarte ausgeben (derzeit nur Linux).
- UEFI-Variablen auflisten.
- Unterstützt Linux und Windows.
- Unterstützt Intel und AMD.

Projektstruktur
Das Projekt ist wie folgt unterteilt:
- PlatboxDrv: Kernel-Treiber für Linux und Windows.
- PlatboxLib: die Benutzermodus-Komponente, die den Kernel-Treiber lädt und Zugriff auf alle zuvor aufgeführten Funktionen bietet.
- PlatboxCli: ein Konsolen-Client, der die Bibliothek verwendet.
- Pocs: ein Beispiel für ein Programm, das Funktionen der libary nutzt.
Kompilierungsschritte
Windows
mkdir build
cd build
cmake -G "Visual Studio 17 2022" -A x64 -S .. -B "build64"
cmake --build build64/ --target platbox_cli
Release Build
cmake -G "Visual Studio 17 2022" -A x64 -S .. -B "build64"
cmake --build build64/ --target platbox_cli --config Release