Hardware Security Module (HSM)
Ein Hardware Security Module speichert Schlüssel und rechnet Kryptografie in einer geschützten Einheit, die Schlüssel nie verlassen. Varianten, Normen, typische Fehler.
Aktualisiert Diese Seite als Markdown
Kurz gesagt
Ein Hardware Security Module (HSM) ist eine dedizierte, gehärtete Hardware, die kryptografische Schlüssel erzeugt, speichert und benutzt, sodass die Schlüssel sie nie im Klartext verlassen. Im Rechenzentrum ist es eine Appliance oder Karte für PKI und Zahlungssysteme; in Fahrzeugen und Geräten ein eigener Kern im Mikrocontroller, der Secure Boot, authentisierte Botschaften und den Diagnosezugriff verankert. Ein HSM schützt Schlüssel; ob das Produkt sicher ist, hängt davon ab, wie die Firmware drumherum sie nutzt.
Was ist ein Hardware Security Module?
Ein Hardware Security Module ist Hardware mit einem Zweck: kryptografische Schlüssel geheim zu halten und sie trotzdem nutzbar zu machen. Schlüssel werden innen erzeugt, innen gespeichert und innen für Signieren, Prüfen, Verschlüsseln und Schlüsselableitung benutzt; heraus kommt das Ergebnis, nie der Schlüssel. Gute HSMs schützen zusätzlich gegen physische Manipulation, Seitenkanäle und Fehlerinjektion und setzen durch, wer welchen Schlüssel wofür verwenden darf.
Zwei sehr unterschiedliche Produkte teilen sich den Namen. Das Enterprise-HSM ist eine Netzwerk-Appliance oder PCIe-Karte, die Schlüssel von Zertifizierungsstellen, Code-Signing-Schlüssel, Zahlungsschlüssel und Datenbankschlüssel schützt. Das Embedded- oder Automotive-HSM ist ein Security-Subsystem im Mikrocontroller: ein eigener CPU-Kern mit eigenem RAM, Flash und Kryptobeschleunigern, per Hardware von den Anwendungskernen isoliert. Die Anwendung spricht über eine definierte Schnittstelle mit ihm und bekommt Dienste wie: prüfe diese Signatur, berechne diesen Message Authentication Code, leite diesen Sitzungsschlüssel ab.
Wo ist es definiert?
Eine einzelne Norm für das HSM als solches gibt es nicht. FIPS 140-3, das auf ISO/IEC 19790 basiert, definiert Sicherheitsanforderungen an kryptografische Module in vier Stufen und ist die Referenz für die Bewertung von Enterprise-HSMs. NIST SP 800-57 beschreibt, wie Schlüssel erzeugt, verteilt, benutzt und ausgemustert werden sollen, also das, was ein HSM unterstützen soll. Für Fahrzeuge hat das EU-Forschungsprojekt EVITA die Referenzarchitektur für Automotive-HSMs mit den Varianten Full, Medium und Light definiert, der die meisten Hersteller von Automotive-Mikrocontrollern folgen, und die Spezifikation Secure Hardware Extension (SHE) hat einen minimalen Schlüsselspeicher mit AES-Einheit festgelegt, der weiterhin breit implementiert ist. AUTOSAR bindet das über seinen Crypto Stack ein; ISO/SAE 21434 schreibt kein HSM vor, erwartet aber, dass die TARA die Anforderungen an den Schlüsselschutz liefert, die ein HSM dann erfüllt.
Was es in der Praxis bedeutet
Im Fahrzeug ist ein HSM die Vertrauenswurzel für Secure Boot, der Hüter der Schlüssel für die SecOC-Botschaftsauthentifizierung, die Rechenheinheit hinter UDS SecurityAccess und Authentication und der Halter der TLS-Schlüssel zum Backend. In IoT und Haushaltsgeräten übernehmen ein Secure Element oder ein On-Chip-Security-Subsystem dieselben Rollen. Die Hardware zu haben ist inzwischen üblich. Die Hardware richtig zu nutzen ist es nicht, und genau dort verbringen unsere Hardware- und Steuergeräte-Penetrationstests ihre Zeit:
- HSM vorhanden, Schlüssel woanders. Der Mikrocontroller hat einen Security-Kern, aber der Schlüssel, der zählt, liegt als Konstante im Anwendungs-Flash, weil die Bereitstellung im HSM für ein späteres Release geplant war.
- Die Schnittstelle hat keine Zugriffskontrolle. Jeder Code auf dem Anwendungskern kann das HSM einen MAC berechnen oder einen Blob entschlüsseln lassen. Ein einzelner Bug in einem netzwerkseitigen Parser gibt dem Angreifer dann das HSM als Orakel.
- Debug-Zugang offen gelassen. JTAG oder SWD auf Seriengeräten weiter aktiv, oder die eFuses, die sie sperren, nie programmiert. Das HSM hält den Schlüssel, der Debugger liest das Ergebnis, wo immer die Anwendung es ablegt.
- Ein Schlüssel für die Flotte. Aus einem Gerät extrahiert, per Firmware-Analyse oder Hardware-Angriff, kompromittiert er jedes Gerät.
- Bereitstellung in der Fertigung mit Schlüsseln, die im Klartext transportiert oder von einem Werkzeug eingespielt werden, das sie protokolliert.
Unsere Analysen von Leistungselektronik- und Licht-Steuergeräten auf 32-Bit-Automotive-Mikrocontrollern haben Firmware-Reverse-Engineering mit Tests der HSM-Schnittstelle kombiniert, um zu zeigen, welche dieser Punkte zutrafen und wie der Fix in der Bootkette oder im Schlüsselmanagement aussehen musste. Für Gerätehersteller ist die entsprechende Arbeit die Härtung von Debug-Ports und eFuses rund um ein Secure Element.
Häufige Missverständnisse
Ein HSM ist keine Sicherheitsstrategie, sondern eine Komponente davon. Ein zertifiziertes HSM sagt nichts über die Firmware, die es aufruft. Und ein HSM verhindert weder Firmware-Extraktion noch Reverse Engineering: Es bewahrt die Schlüssel, nicht den Code. Steckt die Schwachstelle im Code, signiert das HSM brav, was der ausgenutzte Code verlangt.
FAQ
Häufig gestellte Fragen
Was ist der Unterschied zwischen HSM, TPM und Secure Element?
Alle drei halten Schlüssel in geschützter Hardware. Ein TPM ist ein standardisierter Chip für PCs und Server mit festem Befehlssatz der Trusted Computing Group. Ein Secure Element ist ein kleiner manipulationsresistenter Chip, typisch in Telefonen und Zahlungskarten. HSM ist der allgemeinere Begriff: eine Netzwerk-Appliance im Rechenzentrum oder, in Embedded-Systemen, ein dedizierter Security-Kern im Hauptmikrocontroller mit eigenem Speicher und eigener Peripherie.
Macht ein HSM mein Steuergerät oder Gerät sicher?
Es gibt dir einen Ort, an dem Schlüssel nicht durch Firmware-Bugs oder Debug-Zugang auslesbar sind. Das ist notwendig, aber nicht hinreichend. Wenn die Anwendung das HSM ohne Prüfung alles signieren oder entschlüsseln lassen kann, wird das HSM zum Dienst für den Angreifer, der die Anwendung kontrolliert. Secure Boot, Zugriffskontrolle an der HSM-Schnittstelle und gute Schlüsselbereitstellung entscheiden.
Ist eine FIPS-140-3-Zertifizierung Pflicht?
Nicht nach EU-Produktrecht. FIPS 140-3 ist eine Anforderung der US-Regierung und ein nützliches Qualitätssignal für Enterprise-HSMs. Bei Automotive- und Industriecontrollern ist das HSM meist gar nicht zertifiziert; der Nachweis kommt aus dem Security Case des Produkts, der TARA und dem Test der Integration.
Quellen
Passende Seiten
- GlossarSecure BootSecure Boot prüft die Signatur jeder Firmware-Stufe, bevor sie läuft. Wie die Kette funktioniert, wo sie spezifiziert ist und wo sie in echten Geräten scheitert.
- GlossarFirmware-ExtraktionFirmware-Extraktion heißt, Code und Daten aus einem Gerät herauszuholen. Methoden von Update-Datei bis Chip-off, was Angreifer finden, wie du es ihnen schwer machst.
- GlossarDebug-Schnittstellen (JTAG, SWD, UART)JTAG, SWD und UART sind die Debug- und Konsolenschnittstellen fast jeder Embedded-Platine. Was sie Angreifern geben, wie du sie sperrst und was wir in Gerätetests finden.
- InsightsSecure Boot: Acht Fehler, die wir immer wieder in Geräten findenSecure Boot scheitert öfter an Konfiguration als an Kryptografie: ungebrannte eFuses, offene Debug-Ports, lückenhafte Ketten, kein Anti-Rollback. Acht Fehler mit Fix.
- LeistungenWir öffnen das Gehäuse. Dann die Firmware.Hardware-Pentest für Embedded-Geräte: Debug-Schnittstellen, Firmware-Extraktion, Secure Boot, Fault Injection und Reverse Engineering im eigenen Labor.
- LeistungenFinde die Schwachstellen in deinem Fahrzeug, bevor Angreifer es tun.Penetrationstests für Steuergeräte und Fahrzeuge, Fuzzing, TARA und ISO/SAE 21434-Beratung für UN R155/R156. Automotive Security aus Deutschland.
