A UEFI System with SPDM to Protect Against Unauthorized Device Connections
Dieser Beitrag stellt ein Open-Source-UEFI-System vor und bewertet dieses, das das Security Protocol and Data Model (SPDM) zur Authentifizierung von PCIe- und USB-Geräten nutzt, um unbefugte Peripherieverbindungen erfolgreich zu verhindern, wobei ein akzeptabler Boot-Zeit-Overhead von etwa 13 % bei Anweisungen und 8 % bei CPU-Zyklen entsteht.
Originalarbeit lizenziert unter CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dies ist eine KI-generierte Erklärung des untenstehenden Papers. Sie wurde nicht von den Autoren verfasst oder gebilligt. Für technische Genauigkeit konsultieren Sie das Originalpaper. Vollständigen Haftungsausschluss lesen
Stellen Sie sich Ihren Computer als eine hochsichere Burg vor. Seit Jahren war der Burghüter (das BIOS) etwas altmodisch und inkonsistent; jedes Mal, wenn eine neue Art von Schloss auftauchte, benötigte der Hüter ein Update, um sie zu verstehen. Um dies zu beheben, wechselte die Burg zu einem modernen, standardisierten Burghüter namens UEFI. Dieser neue Hüter ist schneller und intelligenter, hat aber immer noch eine Schwachstelle: Er vertraut jedem, der mit einem gut aussehenden Ausweis durch die Tür geht, selbst wenn dieser Ausweis einem Spion gehört.
Dieser Artikel schlägt ein neues, ultra-sicheres System vor, bei dem der Hüter nicht nur Ausweise prüft, sondern eine rigorose, Echtzeit-Hintergrundüberprüfung bei jedem einzelnen Gerät durchführt, das versucht, sich mit der Burg zu verbinden – von USB-Flash-Laufwerken bis hin zu internen Festplatten.
Hier ist, wie die Autoren dieses System entwickelt und getestet haben, einfach erklärt:
1. Das Problem: Der „Trojanische Pferd"-USB-Stick
Angreifer können sich in einen Computer einschleusen, indem sie einen bösartigen USB-Stick oder eine manipulierte interne Komponente anschließen. Sobald diese Geräte verbunden sind, können sie Viren installieren, Daten stehlen oder das System übernehmen, noch bevor das Betriebssystem (wie Windows oder Linux) überhaupt startet. Die Autoren wollten dies verhindern, indem sie den Computer dazu bringen, die Identität jedes Geräts zu verifizieren, bevor er ihm erlaubt, irgendetwas zu tun.
2. Die Lösung: Der „Geheime Handschlag" (SPDM)
Die Autoren verwendeten ein Protokoll namens SPDM (Security Protocol and Data Model). Stellen Sie sich SPDM als einen komplexen, unknackbaren geheimen Handschlag vor.
- Der alte Weg: Der Computer sagt: „Hallo", und das Gerät sagt: „Hi, ich bin eine Maus." Der Computer glaubt es.
- Der neue Weg: Der Computer sagt: „Hallo." Das Gerät muss mit einem kryptografischen Nachweis (einem digitalen Zertifikat) antworten, der besagt: „Ich bin eine Maus, und hier ist mein vom Hersteller unterzeichneter Ausweis." Der Computer prüft diesen Ausweis gegen eine Liste vertrauenswürdiger Aussteller. Ist der Ausweis gefälscht, abgelaufen oder fehlt er, sagt der Computer: „Kein Zutritt", und das Gerät wird sofort ausgesperrt.
3. Der Test: Ein digitaler Sandkasten
Da sie noch nicht leicht echte Hardware finden konnten, die diesen neuen Sicherheitsstandard unterstützte, bauten die Autoren einen virtuellen Computer (mit einem Tool namens QEMU), um ihre Idee zu testen.
- Sie schufen einen „Proof-of-Concept" (einen funktionierenden Prototyp), bei dem der Burghüter des virtuellen Computers (UEFI) mit virtuellen USB-Laufwerken und virtuellen Festplatten unter Verwendung dieses geheimen Handschlags kommunizieren konnte.
- Sie richteten auch ein „Trusted Platform Module" (TPM) ein, das wie ein sicherer Tresor im Inneren des Computers fungiert, der die Hauptschlüssel speichert und die Ergebnisse dieser Prüfungen protokolliert.
4. Die Regeln des Spiels
Die Autoren definierten, wer die „Bösen" sein könnten:
- Der heimtückische Mitarbeiter: Jemand mit physischem Zugang zum Computer, der einen bösartigen USB-Stick anschließt.
- Der Lieferketten-Saboteur: Jemand, der eine legitime Festplatte durch eine gefälschte austauscht, bevor der Computer überhaupt zum Kunden geliefert wird.
- Der Insider: Ein Werksmitarbeiter, der während der Montage einen versteckten Spionagechip installiert.
Ihr System ist darauf ausgelegt, all dies zu stoppen. Selbst wenn ein Bösewicht eine Komponente austauscht, wird die neue Komponente nicht die richtige digitale Signatur haben, sodass der Computer sich weigert, mit ihr zu sprechen.
5. Die Ergebnisse: Lohnt sich das Warten?
Sicherheit geht oft mit Kosten einher: Geschwindigkeit. Die Autoren wollten wissen: „Wie viel langsamer startet der Computer aufgrund all dieser Prüfungen?"
Sie ließen den virtuellen Computer 10.000 Mal laufen, um genaue Daten zu erhalten.
- Die Kosten: Der Computer brauchte etwa 8 % länger zum Starten (Booten) und verbrauchte etwa 13 % mehr Rechenleistung (Anweisungen), um diese Prüfungen durchzuführen.
- Das Urteil: Die Autoren argumentieren, dass dies ein sehr kleiner Preis für den enormen Sicherheitsgewinn ist. Es ist wie das Warten auf ein paar zusätzliche Sekunden an der Sicherheitskontrolle am Flughafen, um sicherzustellen, dass niemand eine Waffe schmuggelt. Die Verzögerung tritt nur einmal beim Einschalten des Computers auf, nicht jedes Mal, wenn Sie ihn verwenden.
6. Was passiert, wenn etwas schiefgeht?
Die Autoren testeten vier Szenarien:
- Perfekte Welt: Alles ist autorisiert. Der Computer startet normal.
- Manipulierte Firmware: Der Code des eigenen Burghüters des Computers wurde geändert. Das System stoppt sofort und weigert sich zu starten.
- Fälschliche Signatur: Der Code des Burghüters ist in Ordnung, aber die digitale Signatur ist falsch. Das System stoppt.
- Bösartiges Gerät: Der Computer versucht, sich mit einem USB-Laufwerk zu verbinden, das nicht die richtige ID hat. Das System blockiert dieses spezifische Gerät und weigert sich, es zu laden, wodurch die Bedrohung effektiv neutralisiert wird.
Zusammenfassung
Kurz gesagt haben die Autoren einen Prototyp entwickelt, der den Startvorgang eines Computers in einen strengen Sicherheitskontrollpunkt verwandelt. Unter Verwendung eines neuen Standards namens SPDM zwingt der Computer jedes verbundene Gerät, seine Identität nachzuweisen, bevor es arbeiten darf. Obwohl dies dem Bootvorgang ein wenig Zeit hinzufügt (etwa 8 %), schafft es einen starken Schild gegen Hacker, die versuchen, sich über USB-Laufwerke oder manipulierte Hardware einzuschleichen. Die Autoren haben ihren Code quelloffen gemacht, damit andere Sicherheitsexperten ihn nutzen können, um noch stärkere Systeme zu entwickeln.
Ertrinken Sie in Arbeiten in Ihrem Fachgebiet?
Erhalten Sie tägliche Digests der neuesten Arbeiten passend zu Ihren Forschungsbegriffen — mit technischen Zusammenfassungen, in Ihrer Sprache.