Für viele Problemstellungen aus dem Bereich der Informationssicherheit für Eingebettete Systeme existieren bereits Lösungen, die technisch elegant und teilweise von bestechender Einfachheit sind. Spannend wird es jedoch, wenn diese Lösungen mit der Realität kollidieren. Zusätzliche Anforderungen, die das Umfeld und den Einsatz dieser Lösungen betreffen, können Aufwände generieren, die weit über den Einsatz der Techniken "nach Lehrbuch" hinausgehen.
So sind Verfahren für Secure Boot und Secure Update (SBSU) im Kontext von IoT im Grunde nichts Neues, werden von allen nennenswerten Controller-Herstellern unterstützt und auch von einschlägigen Richtlinien wie z.B. der aktualisierten Radio Equipment Directive (RED) gefordert.
Der Teufel liegt aber auch hier im Detal, wie die ungeplante Offenlegung der Signaturschlüssel für Intel Boot Guard infolge des Informationslecks bei MSI im Frühjahr 2023 deutlich machte: Signaturschlüssel SBSU müssen besonders geschützt werden. In der Praxis ist hier aber oft noch ein mangelndes Risikobewusstsein zu beobachten. Oft wird Firmware mit Schlusselmaterial signiert, das auf Laptops der Entwickler oder auf einem CI-Server abgelegt ist. Teilweise ist nicht nachvollziehbar, wie viele Kopien des Schlüsselmaterials existieren und wer darauf Zugriff hat. Gerade diese Punkte sind aber essentielle Voraussetzungen für eine Vertrauenskette (Chain of Trust), wie sie für SBSU benötigt wird.
Bereits für den Aufbau der Vertrauenskette und die initiale Generierung von Schlüsselmaterial müssen daher sauber dokumentierte und nachvollziehbare Prozesse vorhanden sein. Transparenz, Usability- (auch und besonders im Sinne von Usable Security) und Reproduzierbarkeit sind dabei besonders wichtige Aspekte. Signing Infrastruktur und darauf abgestimmter Prozess müssen Hand in Hand gehen; eines ohne das andere ergibt keinen Sinn.
Der Vortrag zeigt den State-of-the-Art für den Aufbau und die Nutzung einer Signing-Infrastruktur, wie sie parallel zu einer Firmware-Entwicklung für den Kunden konzipiert und eingeführt wurde. Dabei wird auch auf die versteckten Herausforderungen bei der Realisierung eines solchen Konzeptes eingegangen, darunter insbesondere folgende drei:
- Sowohl herstellerspezifische als auch generische Werkzeuge zur Erstellung von Signaturen unterstützen von Haus aus oft nur dateibasiertes Schlüsselmaterial; im Sinne der Security ein Anti-Pattern
- Die sichere Erstellung von Schlüsselmaterial mithilfe von Zeremonien, um sicherzustellen, dass das Schlüsselmaterial nicht kompromittiert wird und nur von berechtigten Personen genutzt werden kann
- Wenn das Anforderungs- und Bedrohungspotential nicht sauber definiert wird, können insbesondere durch die Hard- und Software exorbitant hohe Kosten entstehen
Art der Vermittlung
Vortrag mit Projektbeispiel
Vorkenntnisse
Projekt- und Entwicklungserfahrung
Zielgruppe
Entwickler*innen, Architekt*innen, Projektmanagement
Nutzen
Die Teilnehmer erhalten Einblick in die Realisierung einer Code-Signing-Infrastruktur für Secure Boot/Update nach aktuellem Stand der Technik sowie in die Notwendigkeit, diese mit einem geeigneten Prozess zu kombinieren. Die vorgestellte Lösung kann ihnen als wertvolle Anregung für eine eigene Umsetzung dienen, besonders für KMUs.