Schwerpunkte

Secure Elements für IoT-Anwendungen

Sicherheit einfach handhaben

25. Februar 2021, 07:34 Uhr   |  Von Xavier Bignalet

Sicherheit einfach handhaben
© Natali _ Mis | Shutterstock

Secure Elements schützen Daten und Geräte vor Angriffen und vor Manipulationen. Ihr bisheriger Nachteil: eine komplexe Implementierung. Deshalb werden sie meist nur in Massenprodukten eingesetzt. Mit der Trust-Plattform vereinfacht Microchip nun die Anwendung von Sicherheits-ICs deutlich.

Mit der Einführung des Internets der Dinge (IoT, Internet of Things) hat sich die Bedrohungslage im Bereich Cybersicherheit in allen Marktsegmenten dramatisch verschärft. Jedes dem Internet hinzugefügte IoT-Gerät/-System stellt gleichzeitig einen neuen Angriffspunkt dar – nicht nur auf das Gerät selbst, sondern auch auf die lokalen und in der Cloud befindlichen Systeme, mit denen es verwaltet wird.

Angriffe können schwerwiegende Folgen haben, da durch das erfolgreiche Eindringen in ein IoT-Gerät neue Firmware geladen werden kann, mit der Angreifer das Gerät böswillig verwenden können. Einige Angriffe stören dabei einfach nur den Betrieb des Geräts, sodass es auf eine neue Art und Weise verwendet wird, z.B. als Knoten in einem Botnet zum Ausführen von Denial-of-Service-Angriffen. Andere Attacken hingegen können das kompromittierte System nutzen, um in das Netzwerk eines Diensteanbieters einzudringen.

Ein Eindringen wird durch reine Software-Anmeldeinformationen wie Passwörter erleichtert. Mit diesen grundlegenden Zugangsdaten kann ein Angreifer, der ein Gerät erfolgreich kompromittiert hat, diese Informationen verwenden, um Zugriff auf Dienste zur Steuerung und Verwaltung aus der Ferne zu erhalten und leichter Angriffe auf diese ausführen. Mit Hardware erzwungene Sicherheit verhindert zusammen mit einer sicheren Identität, dass Geräte ausgenutzt werden. Die Wahrscheinlichkeit, dass die ersten Angriffe erfolgreich sind, verringert sich damit erheblich.

Sicherheit durch Hardware

Mit per Hardware erzwungener Sicherheit lassen sich eine gültige Identität und Zugangscodes für das Gerät nur während der Herstellung mithilfe von PKI-Mechanismen (Public Key Infrastructure) erstellen. Bei einer PKI verfügt jedes Gerät über einen eindeutigen geheimen Schlüssel (Private Key), der mathematisch mit einem bekanntermaßen zuverlässigen digitalen Zertifikat verknüpft ist, das vom Hersteller sicher aufbewahrt wird. Dieser geheime Schlüssel wird verwendet, um eine Abfrage (Challenge) zu signieren, um das Gerät gegenüber jedem Server, der Zugriff auf den entsprechenden öffentlichen Schlüssel (Public Key) hat, eindeutig zu identifizieren.

Der öffentliche Schlüssel ist ein einsehbarer Satz an Informationen und stellt daher kein Risiko dar, wenn er an nicht autorisierte Benutzer verteilt wird. Im Zusammenhang mit einem IoT-Gerät wird die Identität des Geräts durch Verwendung eines geheimen Schlüssels nachgewiesen. Der zugehörige öffentliche Schlüssel wird in Protokollen verwendet, die feststellen, ob die beanspruchte Identität gültig ist. Diese Identität kann während des gesamten Lebenszyklus des Geräts verwendet werden, um etwaige Firmware-Updates sowie die Identität des Geräts beim Zugriff auf Dienste zu authentifizieren.

Das Sicherheitsmodul der Trust-Plattform von Microchip speichert sensible Daten wie Schlüssel und Zertifikate, ie während der Herstellung in den gesicherten Fertigungsstätten des Unternehmens generiert
© Microchip

Bild 1. Das Sicherheitsmodul der Trust-Plattform von Microchip speichert sensible Daten wie Schlüssel und Zertifikate, die während der Herstellung in den gesicherten Fertigungsstätten des Unternehmens generiert und während des gesamten sicheren Bereitstellungsprozesses niemals offengelegt werden

Aufgrund ihrer zentralen Rolle dürfen die geheimen Schlüssel des Geräts weder für physische Angriffe noch für Angriffe über das Netzwerk anfällig sein. Im Idealfall werden die kryptografischen Schlüssel in einem Sicherheits-IC (Secure Element) gespeichert, das eine isolierte sichere Grenze auferlegt, sodass die Schlüssel niemals offengelegt werden (Bild 1). Dies ist nicht ganz einfach. Die Schaltung erfordert

Manipulationssicherheit und Schutz vor Lauschangriffen wie z.B. Seitenkanalanalyse. Um den Schlüssel auf diese Weise angemessen zu schützen, ist ein hohes Maß an Sicherheits-Know-how erforderlich. Außerdem verlängert sich dadurch die Entwicklungsdauer der IoT-Anwendung. Verzichten sollte ein Entwickler darauf jedoch nicht. Der Schutz des Schlüssels ist ein äußerst wichtiger Sicherheitsaspekt. Für Hersteller von IoT-Geräten sind daher Sicherheits-ICs wie der ATECC608 von Microchip mit den erforderlichen Schutzstufen erhältlich.

Sicherer Umgang mit Sicherheits-ICs

Obwohl es solche Bauelemente gibt, bleiben Herausforderungen beim hardwareerzwungenen Identitätsmanagement bestehen. Die Notwendigkeit, die sichere Identität so anzuwenden, dass sie von einem gut ausgestatteten Angreifer nicht kompromittiert werden kann, war für die meisten Gerätehersteller, Systemintegratoren und Dienste- anbieter nur schwer zu erreichen.

Der herkömmliche Ansatz besteht darin, ein Sicherheits-IC in der Schaltung während der Herstellung mit den entsprechenden geheimen Schlüsseln zu konfigurieren. Überlegungen rund um die Logistik in der Lieferkette haben diesen Ansatz jedoch auf große Stückzahlen beschränkt. Um jedem Gerät eine sichere Identität zu verleihen, muss der Herstellungsprozess angepasst werden, was sehr kostspielig sein kann – es sei denn, die Anpassung wird über hohe Stückzahlen amortisiert, was die Kosten pro Gerät minimiert.

Heute ist es jedoch möglich, die erforderliche Konfiguration des Sicherheits-ICs selbst bei einer Mindestbestellmenge von nur zehn Stück kostengünstig bereitzustellen, indem die Bauelemente für IoT-Geräte vorkonfiguriert bzw. vorinstalliert werden. Mit diesem Modell, das über die Trust-Plattform von Microchip unterstützt wird, lassen sich sogar einfache IoT-Überwachungskameras, Gateways, Klimaanlagen oder ähnliche Anwendungen durch vorgenerierte, gerätespezifische Zertifikate schützen.

Die Gesamtkosten pro Gerät für die Bereitstellung dieses hardwarebasierten sicheren Schlüsselspeichers mit einem spezifischen Zertifikat sind geringer als die Kosten, die PKI-Diensteanbieter und Zertifizierungsstellen von Drittanbietern bieten können – und der Ansatz verringert die Komplexität und die Zeit bis zur Markteinführung erheblich.

Anpassung an Herstelleranforderungen

Da IoT-Geräte, die in kleinen bis mittleren Stückzahlen hergestellt werden, mit Sicherheits-ICs ebenfalls kostengünstig mit einem sicheren Identitätsmanagement ausgestattet werden können, ist der nächste Schritt, das Sicherheits-IC so zu konfigurieren, dass es für die jeweilige Anwendung am besten geeignet ist. Dem Sicherheits-IC müssen die Anmeldeinformationen und andere Verschlüsselungsgrundlagen bereitgestellt werden, die für das jeweilige Authentifizierungsmodell zum Einsatz kommen. Neben der Identität des Kerngeräts lassen sich zusätzliche geheime Schlüssel und sensible Informationen in das Sicherheits-IC einfügen, z.B. solche, die nicht vom Root-Schlüssel abgeleitet sind, um Zubehör, Peripherie, Inhalte von Drittanbietern und Hosts zu authentifizieren, damit deren Anmeldeinformationen separat verwaltet werden können.

Das Sicherheits-IC kontrolliert den Zugriff auf wichtige Ressourcen und überwacht das IoT-Gerät, um nicht autorisierte Aktivitäten zu verhindern, z.B. Versuche, die vom Hersteller zugelassene Firmware durch bösartigen Code zu ersetzen, der möglicherweise versucht, die sensiblen Informationen des Geräts für weitere Angriffe zu verwenden.

Eine wichtige Voraussetzung, um sicherzustellen, dass Angreifer nicht in ein Gerät eindringen und es umprogrammieren können, ist eine Strategie für sicheres Booten (Secure Boot), die wiederum durch ein Sicherheits-IC geschützt ist. Durch das sichere Booten wird garantiert, dass sich auf dem IoT-Gerät nur autorisierter Code ausführen lässt. Unter diesen Bedingungen kann das Gerät nur Codeblöcke laden, die gehasht und mit einem privaten Schlüssel des Herstellers signiert sind.

Muss der Mikrocontroller Code aus dem Boot-ROM laden, fordert er eine Überprüfung durch den unveränderlichen öffentlichen Schlüssel an, der im Sicherheits-IC gehalten wird. Nur wenn diese Überprüfung erfolgreich ist, wird der Mikrocontroller beginnen, den Code zu laden. Stößt der Baustein auf einen falsch signierten Codeblock, wird die kompromittierte Software nicht mehr geladen und versucht, in den werkseitig programmierten Zustand zurückzukehren oder, falls dies nicht möglich ist, das Gerät zu deaktivieren. Solange der Bootloader-Code nicht geändert werden kann, indem er im ROM oder geschützten Flash abgelegt wird, kann die Überprüfung selbst nicht umgangen werden.

Sicherheit erweitern

Ist die Kernsicherheit garantiert, lassen sich andere Anwendungen einfach hinzufügen, z.B. die zertifikatbasierte Authentifizierung auf Servern – ein wichtiger Aspekt bei IoT-Geräten. Diese Fernauthentifizierung verwendet Standardprotokolle wie TLS (Transport Layer Security) für die verschlüsselte Kommunikation sowie X.509, mit dem sich digitale Zertifikate verwalten lassen, die belegen, dass ein Gerät oder ein Dienst echt ist.

Nach dem X.509-Standard beziehen sich alle digitalen Zertifikate über eine Hierarchie von untergeordneten Zertifikaten auf ein OEM-Kernzertifikat. Die von den Zertifikaten übertragenen Informationen bieten die Möglichkeit, den rechtmäßigen Eigentümer jedes Zertifikats zu identifizieren und daraus den öffentlichen Schlüssel des Zertifikats weiter oben in der Hierarchie zu erhalten, damit die Signatur des abhängigen Zertifikats überprüft werden kann.

Kommuniziert ein entsprechend gesichertes IoT-Gerät mit einem Server, verwendet es die Informationen in den darin enthaltenen Zertifikaten, um zu demonstrieren, dass es ein gültiger Nutzer des Dienstes ist. Umgekehrt verwendet der Server seine eigenen Zertifikate, um dem Gerät zu bestätigen, dass er auch echt ist. Solange das Gerät über die erforderlichen Zertifikate verfügt, ist die bidirektionale Authentifizierung sichergestellt.

Seite 1 von 3

1. Sicherheit einfach handhaben
2. Gesicherte Inbetriebnahme
3. Gewinnen Sie ein CryptoAuth-Trust-Platform-Entwicklungskit!

Auf Facebook teilen Auf Twitter teilen Auf Linkedin teilen Via Mail teilen

Verwandte Artikel

Microchip Technology GmbH