Teilen über


Azure IoT Edge-Sicherheits-Manager

Gilt für: yes icon IoT Edge 1.1

Wichtig

IoT Edge 1.1: Datum für das Supportende war der 13. Dezember 2022. Informationen zur Unterstützung für dieses Produkt, diesen Dienst, diese Technologie oder diese API finden Sie in der Microsoft Lifecycle-Richtlinie. Weitere Informationen zum Aktualisieren auf die neueste Version von IoT Edge finden Sie unter Update IoT Edge.

Der Azure IoT Edge-Sicherheits-Manager wird ein streng abgegrenzter Sicherheitskern für den Schutz der IoT Edge-Geräte und aller zugehörigen Komponenten durch das Abstrahieren der sicheren Hardware. Der Sicherheits-Manager fungiert als zentraler Punkt zur Erhöhung der Sicherheit und stellt den Integrationspunkt für Technologie durch Gerätehersteller (Original Equipment Manufacturer, OEM) dar.

Der Sicherheits-Manager abstrahiert die sichere Hardware (Secure Silicon) eines IoT Edge-Geräts.

Azure IoT Edge-Sicherheits-Manager Der IoT Edge Security Manager zielt darauf ab, die Integrität des IoT Edge-Geräts und alle inhärenten Softwarevorgänge zu verteidigen. Der Sicherheits-Manager überträgt die Vertrauensstellung von der zugrunde liegenden Hardware des Hardware-Vertrauensankers (falls verfügbar), um das Bootstrapping der IoT Edge-Runtime auszuführen und laufende Vorgänge zu überwachen. Der IoT Edge-Sicherheits-Manager ist eine Software, die mit sicherer Hardware (sofern verfügbar und aktiviert) zusammenarbeitet, um die höchstmögliche Sicherheit zu bieten.

Zu den Aufgaben des IoT Edge-Sicherheits-Managers gehören unter anderem:

  • Durchführen von Bootstraps für das Azure IoT Edge-Gerät
  • Steuern des Zugriffs auf den Vertrauensanker der Gerätehardware über Notardienste
  • Überwachen der Integrität der IoT Edge-Vorgänge zur Laufzeit
  • Empfang der Vertrauensdelegierung vom Hardwaresicherheitsmodul (HSM)
  • Bereitstellen der Geräteidentität und Verwalten des Vertrauensstellungsübergangs bei Bedarf
  • Hosten und Schützen von Gerätekomponenten von Clouddiensten wie dem Device Provisioning-Dienst
  • Bereitstellen von IoT Edge-Modulen mit eindeutigen Identitäten

Der IoT Edge-Sicherheits-Manager besteht aus drei Komponenten:

  • Der IoT Edge-Sicherheits-Daemon
  • Die HSM-PAL (Plattformabstraktionsschicht für Hardwaresicherheitsmodule)
  • Hardwarevertrauensanker oder HSM (optional, aber dringend empfohlen)

Der IoT Edge-Sicherheits-Daemon

Der IoT Edge-Sicherheitsdaemon ist für die logischen Sicherheitsvorgänge des Sicherheits-Managers verantwortlich. Er stellt einen großen Teil der vertrauenswürdigen Rechenbasis des IoT Edge-Geräts dar.

Entwurfsprinzipien

IoT Edge folgt zwei Kernprinzipien: Maximieren der betrieblichen Integrität und Minimieren von Überfrachtung und Churn.

Maximieren der operativen Integrität

Der IoT Edge-Sicherheits-Daemon wird mit der höchsten Integrität ausgeführt, die im Rahmen der Abwehrfunktionalität eines Hardware-Vertrauensankers möglich ist. Mit einer angemessenen Integration misst und überwacht der Hardware-Vertrauensanker den Sicherheits-Daemon statisch und zur Laufzeit, um Manipulationen zu verhindern. Böswilliger physischer Zugriff auf Geräte ist in IoT grundsätzlich eine Bedrohung. Der Hardwarevertrauensanker spielt eine wichtige Rolle beim Schutz der Integrität des IoT Edge-Geräts. Es gibt zwei Arten von Hardware-Vertrauensankern:

  • Secure Elements für den Schutz vertraulicher Informationen wie Geheimnissen und kryptografischen Schlüsseln
  • Secure Enclaves für den Schutz von Geheimnissen wie Schlüsseln sowie von sensiblen Workloads wie vertraulichen Machine Learning-Modellen und Messvorgängen

Es gibt zwei Arten von Ausführungsumgebungen, die Hardware-Vertrauensanker verwenden:

  • Die Standardumgebung oder Rich Execution Environment (REE) basiert auf der Verwendung von Secure Elements zum Schutz vertraulicher Informationen.
  • Die vertrauenswürdige Ausführungsumgebung (Trusted Execution Environment, TEE) basiert auf der Verwendung der Secure Enclave-Technologie zum Schutz vertraulicher Informationen und der Ausführung von Software.

Bei Geräten, die Secure Enclaves als Hardwarevertrauensanker verwenden, sollte sich sensible Logik im IoT Edge-Sicherheitsdaemon innerhalb der Enclave befinden. Nicht sensible Bereiche des Sicherheits-Daemons können sich auch außerhalb der TEE befinden. In jedem Fall sollten ODMs (Original Design Manufacturer) und OEMs (Original Equipment Manufacturer) unbedingt die Vertrauensstellung aus ihrem HSM erweitern, um die Integrität des IoT Edge-Sicherheitsdaemons beim Start und zur Laufzeit zu überwachen und zu schützen.

Minimale Überfrachtung und Änderung

Eine weiteres Kernprinzip der IoT Edge-Sicherheits-Daemons ist die Minimierung von Änderungen. Für die höchste Vertrauensstufe kann der IoT Edge-Sicherheits-Daemon eng mit dem Hardware-Vertrauensanker des Geräts verknüpft und als nativer Code ausgeführt werden. In diesen Fällen ist es üblich, die IoT Edge-Software über die sicheren Updatepfade des Hardwarevertrauensankers statt über die Updatemechanismen des Betriebssystems zu aktualisieren, was schwierig sein kann. Die Sicherheitsaktualisierung wird für IoT-Geräte empfohlen, aber übermäßige Updateanforderungen oder umfangreiche Updatepayloads können die Angriffsfläche auf vielfältige Weise vergrößern. Beispielsweise werden Sie möglicherweise dazu verleitet, einige Updates zu überspringen, um die Geräteverfügbarkeit zu maximieren. Daher ist das Design des IoT Edge-Sicherheitsdaemons recht kompakt, um die gut isolierte, vertrauenswürdige Rechenbasis klein zu halten und häufige Updates zu fördern.

Aufbau

Der IoT Edge-Sicherheits-Daemon nutzt die gesamte verfügbare Technologie der Hardware-Vertrauensanker für die Erhöhung der Sicherheit. Sie ermöglicht auch den Betrieb in unterschiedlichen Umgebungen mit einer Standardausführungsumgebung (bzw. Rich Execution Environment, REE) und einer vertrauenswürdigen Ausführungsumgebung (Trusted Execution Environment, TEE), wenn Hardwaretechnologien TEEs bieten. Rollenspezifische Schnittstellen ermöglichen es den Hauptkomponenten von IoT Edge, die Integrität des IoT Edge-Geräts und seiner Vorgänge zu gewährleisten.

Architektur des Azure IoT Edge-Sicherheitsdaemons

Cloudschnittstelle

Die Cloudschnittstelle ermöglicht den Zugriff auf Clouddienste, die die Gerätesicherheit ergänzen. Beispielsweise erlaubt diese Schnittstelle den Zugriff auf den Device Provisioning Service für das Identity Lifecycle Management des Geräts.

Verwaltungs-API

Die Verwaltungs-API wird vom IoT Edge-Agent beim Erstellen, Starten, Beenden und Entfernen eines IoT Edge-Moduls aufgerufen. Der Sicherheitsdaemon speichert „Registrierungen“ für alle aktiven Module. Diese Registrierungen ordnen die Modulidentität einigen Eigenschaften des Moduls zu. Zu diesen Moduleigenschaften gehören beispielsweise die Prozess-ID (pid) des Prozesses, der im Container ausgeführt wird, und der Hash des Docker-Containerinhalts.

Mithilfe dieser Eigenschaften überprüft die Workload-API (siehe unten), ob der Aufrufer für eine Aktion autorisiert ist.

Die Verwaltungs-API ist eine privilegierte API, die nur vom IoT Edge-Agent aufgerufen werden kann. Da der IoT Edge-Sicherheits-Daemon das Bootstrapping für den IoT Edge-Agent ausführt und ihn startet, überprüft er, ob der Agent nicht manipuliert wurde, und kann dann eine implizite Registrierung für den Agent erstellen. Derselbe Nachweisprozess, den die Workload-API verwendet, beschränkt auch den Zugriff auf die Verwaltungs-API auf ausschließlich den IoT Edge-Agent.

Container-API

Die Container-API interagiert mit dem Containersystem, das für die Modulverwaltung verwendet wird, wie z.B. Moby oder Docker.

Workload-API

Die Workload-API ist für alle Module zugänglich. Sie ermöglicht einen Identitätsnachweis – entweder als vom HSM signiertes Token oder ein X.509-Zertifikat – und die zugehörige Vertrauenssammlung für ein Modul. Die Vertrauenssammlung enthält ZS-Zertifikate für alle anderen Server, denen die Module vertrauen sollen.

Der IoT Edge-Sicherheits-Daemon verwendet einen Nachweisprozess zum Schutz dieser API. Wenn ein Modul diese API aufruft, versucht der Sicherheits-Daemon, eine Registrierung für die Identität zu finden. Ist er erfolgreich, verwendet er die Eigenschaften der Registrierung, um das Modul zu bewerten. Wenn das Ergebnis des Messprozesses mit der Registrierung übereinstimmt, wird ein neuer Identitätsnachweis generiert. Die zugehörigen ZS-Zertifikate (Vertrauenssammlung) werden an das Modul zurückgegeben. Das Modul verwendet dieses Zertifikat zum Verbinden mit IoT Hub oder anderen Modulen oder zum Starten eines Servers. Wenn das signierte Token oder das Zertifikat demnächst abläuft, muss das Modul ein neues Zertifikat anfordern.

Integration und Wartung

Microsoft verwaltet die Hauptcodebasis für den IoT Edge-Sicherheits-Daemon auf GitHub.

Installation und Updates

Installation und Updates des IoT Edge-Sicherheits-Daemons werden über das Paketverwaltungssystem des Betriebssystems verwaltet. IoT Edge-Geräte mit einem Hardware-Vertrauensanker sollten zusätzliche Sicherheitsmaßnahmen für die Integrität des Daemons bereitstellen, indem sie den Lebenszyklus über sichere Start- und Updateverwaltungssysteme verwalten. Geräteersteller sollten diese Möglichkeiten basierend auf den jeweiligen Gerätefunktionen durchsuchen.

Versionsverwaltung

Die IoT Edge-Runtime verfolgt und meldet die Version des IoT Edge-Sicherheits-Daemons. Die Version wird als das runtime.platform.version-Attribut der gemeldeten Eigenschaft des IoT Edge-Agent-Moduls gemeldet.

Hardwaresicherheitsmodul

Die PAL (Platform Abstraction Layer) des Hardwaresicherheitsmoduls (HSM) abstrahiert die gesamte Vertrauensankerhardware, damit der Entwickler oder Benutzer sich nicht mit der Komplexität von IoT Edge befassen muss. Sie enthält eine Kombination aus Anwendungsprogrammierschnittstelle (API) und domänenübergreifenden Kommunikationsverfahren (beispielsweise die Kommunikation zwischen einer Standardausführungsumgebung und einer Secure Enclave-Instanz). Die eigentliche Implementierung der HSM-PAL hängt von der verwendeten Sicherheitshardware ab. Ihr Vorhandensein ermöglicht die Verwendung praktisch jeder Sicherheitshardware.

Sicherer Hardware-Vertrauensanker

Sichere Hardware ist erforderlich, um innerhalb der IoT Edge-Geräthardware einen Vertrauensanker zu schaffen. Es gibt verschiedene Arten von Sicherheitshardware, z. B. Trusted Platform Module (TPM), eingebettete Secure Elements (eSE), ARM TrustZone, Intel SGX oder benutzerdefinierte sichere Hardwaretechnologien. Die Verwendung eines sicheren Vertrauensankers in Geräten wird aufgrund der Bedrohungen durch den physischen Zugriff auf IoT-Geräte empfohlen.

Der IoT Edge-Sicherheits-Manager versucht, die Komponenten, die bei benutzerdefinierten Sicherheitsmaßnahmen zum Schutz der Sicherheit und Integrität der Azure IoT Edge-Plattform beitragen, zu identifizieren und zu isolieren. Drittanbieter wie Gerätehersteller sollten die ihnen zur Verfügung stehenden benutzerdefinierten Sicherheitsfeatures für ihre Gerätehardware nutzen.

Informieren Sie sich, wie Sie den Azure IoT-Sicherheits-Manager mit dem Trusted Platform Module (TPM) mithilfe von Software oder virtuellen TPMs härten können:

Erstellen und Bereitstellen eines IoT Edge-Geräts mit einem virtuellen TPM unter Linux oder Linux unter Windows.

Nächste Schritte

Weitere Informationen zum Schützen Ihrer IoT Edge-Geräte finden Sie in den folgenden Blogbeiträgen: