Was ist Azure Sphere?

Azure Sphere ist eine sichere, allgemeine Anwendungsplattform mit integrierten Kommunikations- und Sicherheitsfeatures für Geräte, die mit dem Internet verbunden sind. Es umfasst eine gesicherte, verbundene Crossover-Mikrocontroller-Einheit (MCU), ein benutzerdefiniertes allgemeines Linux-basiertes Betriebssystem (Os) und einen cloudbasierten Sicherheitsdienst, der kontinuierliche, erneuerbare Sicherheit bietet.

Die Azure Sphere-MCU integriert Echtzeitverarbeitungsfunktionen mit der Möglichkeit, ein allgemeines Betriebssystem auszuführen. Eine Azure Sphere-MCU ermöglicht zusammen mit ihrem Betriebssystem und ihrer Anwendungsplattform die Erstellung von geschützten, mit dem Internet verbundenen Geräten, die per Remotezugriff aktualisiert, gesteuert, überwacht und verwaltet werden können. Ein verbundenes Gerät, das eine Azure Sphere-MCU neben oder anstelle einer vorhandenen MCUs enthält, bietet mehr Sicherheit, Produktivität und Möglichkeiten. Zum Beispiel:

  • Eine geschützte Anwendungsumgebung, authentifizierte Verbindungen und die aktivierungsbasierte Verwendung von Peripheriegeräten minimieren sicherheitsrelevante Risiken, unter anderem durch Spoofing, bösartige Software oder Denial-of-Service-Angriffe.
  • Softwareupdates können automatisch aus der Cloud auf jedem verbundenen Gerät bereitgestellt werden, um Probleme zu beheben, neue Funktionen bereitzustellen oder neuen Angriffsmethoden entgegenzuwirken und so die Produktivität des Supportpersonals zu steigern.
  • Produktnutzungsdaten können über eine gesicherte Verbindung an die Cloud gemeldet werden, um Probleme zu diagnostizieren und neue Produkte zu entwerfen und so die Chancen für Produktservice, positive Kundeninteraktionen und zukünftige Entwicklung zu erhöhen.

Der Azure Sphere-Sicherheitsdienst ist ein integraler Aspekt von Azure Sphere. Mithilfe dieses Diensts stellen Azure Sphere-MCUs sicher und sicher eine Verbindung mit der Cloud und dem Web her. Der Dienst stellt sicher, dass das Gerät nur mit einer autorisierten Version der originalen, genehmigten Software gestartet wird. Darüber hinaus bietet es einen geschützten Kanal, über den Microsoft Betriebssystemupdates automatisch herunterladen und auf vor Ort bereitgestellte Geräte installieren kann, um Sicherheitsprobleme zu beheben. Es ist weder ein Eingreifen des Herstellers noch des Endbenutzers erforderlich, wodurch eine gemeinsame Sicherheitslücke geschlossen wird.

Hinweis

Azure Sphere bezieht sich auf die PAPI-basierte Schnittstelle als Azure Sphere (Legacy) und die integrierte Öffentliche Vorschau-Azure Resource Manager-Schnittstelle als Azure Sphere (integriert).

Während der öffentlichen Vorschau wird empfohlen, Azure Sphere (integriert) nur zu Entwicklungs- und Testzwecken zu verwenden. Als bewährte Methode sollten Produktionsanwendungsfälle kein Vorschauprodukt verwenden. Daher wird für Anwendungsfälle in der Produktion empfohlen, weiterhin die vorhandene Azure Sphere-Sicherheitsdienstschnittstelle zu verwenden, die jetzt als Azure Sphere (Legacy) bezeichnet wird und weiterhin vollständig unterstützt und allgemein verfügbar ist.

Azure Sphere-Szenario

Um zu verstehen, wie Azure Sphere in einer realen Umgebung funktioniert, betrachten Sie dieses Szenario.

Contoso, Ltd. ist ein Hersteller von Weißwarenprodukten, der eine Azure Sphere-MCU in seine Geschirrspüler einbettet. Der DW100-Geschirrspüler koppelt die MCU mit mehreren Sensoren und einer integrierten allgemeinen Anwendung, die auf der Azure Sphere-MCU ausgeführt wird. Die Anwendung kommuniziert mit dem Azure Sphere-Sicherheitsdienst und den Clouddiensten von Contoso. Das folgende Diagramm veranschaulicht dieses Szenario:

Stellt eine Verbindung mit dem IoT-, Sicherheitsdienst- und Hersteller-Cloudkatalogmit netzwerkverbundenen Geschirrspülern von Contoso

Von oben links ausgehend und im Uhrzeigersinn:

  • Microsoft veröffentlicht Updates für das Azure Sphere-Betriebssystem über den Azure Sphere-Sicherheitsdienst.

  • Contoso-Produktentwicklung veröffentlicht Updates für seine DW100-Anwendung über den Azure Sphere-Sicherheitsdienst.

  • Der Azure Sphere-Sicherheitsdienst stellt das aktualisierte Betriebssystem und die Contoso DW100-Anwendungssoftware sicher für die Geschirrspüler an Endbenutzerstandorten bereit.

  • Der Contoso-Geschirrspüler-Support kommuniziert mit dem Azure Sphere-Sicherheitsdienst, um zu bestimmen, welche Version der Azure Sphere-Software und der DW100-Anwendungssoftware auf jedem Endbenutzergerät ausgeführt werden soll, und um alle Fehlerberichtsdaten zu ermitteln, die an den Dienst gemeldet wurden. Der Contoso-Geschirrspülersupport kommuniziert auch mit dem Contoso-Clouddienst, um weitere Informationen zu erfahren.

  • Contoso Cloud Services unterstützen Anwendungen für die Problembehandlung, Datenanalyse und Kundeninteraktion. Die Clouddienste von Contoso können von Microsoft Azure, vom Clouddienst eines anderen Anbieters oder von der eigenen Cloud von Contoso gehostet werden.

  • Contoso DW100-Modelle an Endbenutzerstandorten laden aktualisierte Betriebssystem- und Anwendungssoftware über ihre Verbindung mit dem Azure Sphere-Sicherheitsdienst herunter. Sie können auch mit der Clouddienstanwendung von Contoso kommunizieren, um zusätzliche Daten zu melden.

Sensoren am Geschirrspüler können beispielsweise die Wassertemperatur, die Trocknungstemperatur und den Füllstand des Spülmittels überwachen und diese Daten in die Clouddienste von Contoso hochladen, wo sie von einer Clouddienstanwendung auf potenzielle Probleme analysiert werden. Wenn die Trocknungstemperatur ungewöhnlich heiß oder kalt erscheint – was auf einen fehlerhaften Teil hindeuten kann – führt Contoso Diagnose remote aus und benachrichtigt den Kunden darüber, dass Reparaturen erforderlich sind. Wenn die Geschirrspüler garantiepflichtig ist, kann die Clouddienstanwendung auch sicherstellen, dass die lokale Reparaturwerkstatt des Kunden über das Ersatzteil verfügt, wodurch Wartungsbesuche und Bestandsanforderungen reduziert werden. Wenn das Spülmittel niedrig ist, kann der Geschirrspüler dem Kunden signalisieren, mehr Spülmittel direkt vom Hersteller zu kaufen.

Die gesamte Kommunikation erfolgt über gesicherte, authentifizierte Verbindungen. Das Support- und Entwicklungspersonal von Contoso kann Daten mithilfe des Azure Sphere-Sicherheitsdiensts, microsoft Azure-Features oder einer Contoso-spezifischen Clouddienstanwendung visualisieren. Contoso kann auch kundenorientierte Web- und mobile Anwendungen bereitstellen, mit denen Besitzer von Geschirrspülern Service anfordern, die Nutzung von Geschirrspülerressourcen überwachen oder auf andere Weise mit dem Unternehmen interagieren können.

Mithilfe von Azure Sphere-Bereitstellungstools zielt Contoso auf jedes Anwendungssoftwareupdate auf das entsprechende Geschirrspülermodell ab, und der Azure Sphere-Sicherheitsdienst verteilt die Softwareupdates auf die richtigen Geräte. Nur signierte und verifizierte Softwareupdates können auf den Geschirrspülern installiert werden.

Azure Sphere und die sieben Eigenschaften von hoch gesicherten Geräten

Ein primäres Ziel der Azure Sphere-Plattform besteht darin, hochwertige Sicherheit zu geringen Kosten bereitzustellen, sodass preissensible, mikrocontrollergestützte Geräte sicher und zuverlässig eine Verbindung mit dem Internet herstellen können. Da mit dem Netzwerk verbundene Spielzeuge, Geräte und andere Consumergeräte alltäglich werden, ist Sicherheit von größter Bedeutung. Nicht nur die Gerätehardware selbst muss gesichert werden, auch die Software und die Cloudverbindungen müssen gesichert werden. Ein Sicherheitsablauf an einer beliebigen Stelle in der Betriebsumgebung bedroht das gesamte Produkt und potenziell alles in der Nähe.

Basierend auf der jahrzehntelangen Erfahrung von Microsoft mit Internetsicherheit hat das Azure Sphere-Team sieben Eigenschaften von hoch gesicherten Geräten identifiziert. Die Azure Sphere-Plattform basiert auf den folgenden sieben Eigenschaften:

Hardwarebasierter Vertrauensstamm. Ein hardwarebasierter Vertrauensstamm stellt sicher, dass das Gerät und seine Identität nicht getrennt werden können, wodurch Gerätefälschungen oder Spoofing verhindert werden. Jede Azure Sphere-MCU wird durch einen unvergehbaren kryptografischen Schlüssel identifiziert, der durch die von Microsoft entwickelte Hardware des Pluton-Sicherheitssubsystems generiert und geschützt wird. Dadurch wird ein manipulationssicherer, gesicherter Hardware-Vertrauensstamm vom Werk bis zum Endbenutzer sichergestellt.

Tiefgehende Verteidigung. Defense in Depth bietet mehrere Sicherheitsebenen und somit mehrere Entschärfungen gegen jede Bedrohung. Jede Softwareschicht in der Azure Sphere-Plattform überprüft, ob die Ebene darüber gesichert ist.

Kleine vertrauenswürdige Computingbasis. Der Großteil der Software des Geräts verbleibt außerhalb der vertrauenswürdigen Computerbasis, wodurch die Angriffsfläche reduziert wird. Nur der gesicherte Sicherheitsmonitor, die Pluton-Runtime und das Pluton-Subsystem , die von Microsoft bereitgestellt werden, werden auf der vertrauenswürdigen Computingbasis ausgeführt.

Dynamische Fächer. Dynamische Fächer begrenzen die Reichweite eines einzelnen Fehlers. Azure Sphere-MCUs enthalten Gegenmaßnahmen für Silizium, einschließlich Hardwarefirewalls, um zu verhindern, dass eine Sicherheitsverletzung in einer Komponente an andere Komponenten weitergegeben wird. Eine eingeschränkte, "sandkastenbasierte" Laufzeitumgebung verhindert, dass Anwendungen gesicherten Code oder Daten beschädigen.

Kennwortlose Authentifizierung. Die Verwendung von signierten Zertifikaten, die durch einen nicht fälschungsfähigen kryptografischen Schlüssel überprüft werden, bietet eine viel stärkere Authentifizierung als Kennwörter. Die Azure Sphere-Plattform erfordert, dass jedes Softwareelement signiert ist. Die D2C- und Cloud-zu-Gerät-Kommunikation erfordert eine weitere Authentifizierung, die mit Zertifikaten erreicht wird.

Fehlerberichterstattung. Fehler in Gerätesoftware oder -hardware sind typisch für neu auftretende Sicherheitsangriffe. Fehler, die zu einem Geräteausfall führen, stellen einen Denial-of-Service-Angriff dar. Die Gerät-zu-Cloud-Kommunikation bietet eine frühzeitige Warnung vor potenziellen Fehlern. Azure Sphere-Geräte können betriebsbezogene Daten und Fehler automatisch an ein cloudbasiertes Analysesystem melden, und Updates und Wartungen können remote ausgeführt werden.

Erneuerbare Sicherheit. Die Gerätesoftware wird automatisch aktualisiert , um bekannte Sicherheitsrisiken oder Sicherheitsverletzungen zu beheben, sodass kein Eingreifen des Produktherstellers oder des Endbenutzers erforderlich ist. Der Azure Sphere-Sicherheitsdienst aktualisiert das Azure Sphere-Betriebssystem und Ihre Anwendungen automatisch.

Azure Sphere-Architektur

In Zusammenarbeit ermöglichen Hardware, Software und Sicherheitsdienst von Azure Sphere einzigartige, integrierte Ansätze für die Wartung, Steuerung und Sicherheit von Geräten.

Die Hardwarearchitektur bietet eine grundlegend gesicherte Computerbasis für verbundene Geräte, sodass Sie sich auf Ihr Produkt konzentrieren können.

Die Softwarearchitektur mit einem geschützten benutzerdefinierten Betriebssystemkernels, der auf dem von Microsoft geschriebenen Sicherheitsmonitor ausgeführt wird, ermöglicht es Ihnen, Ihre Softwareaktivitäten auf Mehrwert-IoT und gerätespezifische Features zu konzentrieren.

Der Azure Sphere-Sicherheitsdienst unterstützt Authentifizierung, Softwareupdates und Fehlerberichte über gesicherte Cloud-zu-Gerät- und Device-to-Cloud-Kanäle. Das Ergebnis ist eine gesicherte Kommunikationsinfrastruktur, die sicherstellt, dass Ihre Produkte das aktuellste Azure Sphere-Betriebssystem ausführen. Architekturdiagramme und Beispiele für Cloudarchitekturen finden Sie unter Durchsuchen von Azure-Architekturen.

Hardwarearchitektur

Eine Azure Sphere-Crossover-MCU besteht aus mehreren Kernen auf einem einzigen Die, wie in der folgenden Abbildung gezeigt.

HardwarearchitekturAzure Sphere MCU-Hardwarearchitektur

Jeder Kern und das zugehörige Subsystem befinden sich in einer anderen Vertrauensdomäne. Der Vertrauensstamm befindet sich im Pluton-Sicherheitssubsystem. Jede Ebene der Architektur geht davon aus, dass die Darüberebene gefährdet sein kann. Innerhalb jeder Ebene bieten Ressourcenisolation und dynamische Depots zusätzliche Sicherheit.

Microsoft Pluton-Sicherheitssubsystem

Das Pluton-Sicherheitssubsystem ist der hardwarebasierte (in Silizium) gesicherte Vertrauensstamm für Azure Sphere. Es umfasst einen Sicherheitsprozessorkern, Kryptografie-Engines, einen Hardware-Zufallszahlengenerator, die Generierung öffentlicher/privater Schlüssel, eine asymmetrische und symmetrische Verschlüsselung, unterstützung für die Überprüfung des digitalen Signaturalgorithmus für elliptische Kurven (ECDSA) für den sicheren Start und den gemessenen Start in Silizium zur Unterstützung des Remotenachweises mit einem Clouddienst sowie verschiedene Manipulationsbekämpfungsmaßnahmen, einschließlich einer Entropieerkennungseinheit.

Im Rahmen des gesicherten Startvorgangs startet das Pluton-Subsystem verschiedene Softwarekomponenten. Außerdem werden Laufzeitdienste bereitgestellt, Anforderungen von anderen Komponenten des Geräts verarbeitet und kritische Komponenten für andere Teile des Geräts verwaltet.

Allgemeiner Anwendungskern

Der allgemeine Anwendungskern verfügt über ein ARM Cortex-A-Subsystem, das über eine vollständige Speicherverwaltungseinheit (MMU) verfügt. Sie ermöglicht die hardwarebasierte Aufteilung von Prozessen mithilfe von Vertrauenszonenfunktionen und ist für die Ausführung des Betriebssystems, allgemeiner Anwendungen und Dienste verantwortlich. Sie unterstützt zwei Betriebsumgebungen: Normal World (NW), die Code sowohl im Benutzermodus als auch im Supervisormodus ausführt, und Secure World (SW), in dem nur der von Microsoft bereitgestellte Sicherheitsmonitor ausgeführt wird. Ihre allgemeinen Anwendungen werden im NW-Benutzermodus ausgeführt.

Echtzeitkerne

Die Echtzeitkerne verfügen über ein ARM Cortex-M I/O-Subsystem, das Echtzeitanwendungen entweder als Bare-Metal-Code oder als Echtzeitbetriebssystem (Real-Time Operating System, RTOS) ausführen kann. Solche Anwendungen können Peripheriegeräte zuordnen und mit allgemeinen Anwendungen kommunizieren, aber nicht direkt auf das Internet zugreifen.

Konnektivität und Kommunikation

Die erste Azure Sphere-MCU bietet ein 802,11 b/g/n Wi-Fi Funkgerät, das sowohl mit 2,4 GHz als auch mit 5 GHz arbeitet. Allgemeine Anwendungen können das Subsystem für die drahtlose Kommunikation konfigurieren, verwenden und abfragen, aber sie können es nicht direkt programmieren. Zusätzlich zu oder anstelle von WLAN können Azure Sphere-Geräte, die ordnungsgemäß ausgestattet sind, über ein Ethernet-Netzwerk kommunizieren.

Multiplex-E/A

Die Azure Sphere-Plattform unterstützt eine Vielzahl von E/A-Funktionen, sodass Sie eingebettete Geräte entsprechend Ihren Markt- und Produktanforderungen konfigurieren können. E/A-Peripheriegeräte können entweder dem allgemeinen Anwendungskern oder einem Echtzeitkern zugeordnet werden.

Microsoft-Firewalls

Hardwarefirewalls sind Silizium-Gegenmaßnahmen, die "Sandbox"-Schutz bieten, um sicherzustellen, dass E/A-Peripheriegeräte nur für den Kern zugänglich sind, dem sie zugeordnet sind. Die Firewalls erzwingen eine Abgrenzung, wodurch verhindert wird, dass eine Sicherheitsbedrohung, die im allgemeinen Anwendungskern lokalisiert ist, den Zugriff der Echtzeitkerne auf ihre Peripheriegeräte beeinträchtigt.

Integrierter RAM und Flash

Azure Sphere-MCUs umfassen mindestens 4 MB integrierten RAM und 16 MB integrierten Flashspeicher.

Softwarearchitektur und Betriebssystem

Die allgemeine Anwendungsplattform führt das Azure Sphere-Betriebssystem zusammen mit einer gerätespezifischen allgemeinen Anwendung aus, die sowohl mit dem Internet als auch mit Echtzeitanwendungen kommunizieren kann, die auf den Echtzeitkernen ausgeführt werden. Die folgende Abbildung zeigt die Elemente dieser Plattform.

Von Microsoft bereitgestellte Elemente werden grau angezeigt.

Allgemeine Anwendungsplattform

Microsoft bietet und verwaltet alle Software außer Ihren gerätespezifischen Anwendungen. Alle Software, die auf dem Gerät ausgeführt wird, einschließlich der allgemeinen Anwendung, wird von der Microsoft-Zertifizierungsstelle signiert. Anwendungsupdates werden über die vertrauenswürdige Microsoft-Pipeline bereitgestellt, und die Kompatibilität jedes Updates mit der Azure Sphere-Gerätehardware wird vor der Installation überprüft.

Anwendungsruntime

Die von Microsoft bereitgestellte Anwendungsruntime basiert auf einer Teilmenge des POSIX-Standards. Sie besteht aus Bibliotheken und Laufzeitdiensten, die im NW-Benutzermodus ausgeführt werden. Diese Umgebung unterstützt die allgemeinen Anwendungen, die Sie erstellen.

Anwendungsbibliotheken unterstützen Netzwerk-, Speicher- und Kommunikationsfeatures, die für allgemeine Anwendungen erforderlich sind, aber neben anderen Einschränkungen keinen direkten generischen Datei-E/A- oder Shellzugriff unterstützen. Diese Einschränkungen stellen sicher, dass die Plattform geschützt bleibt und Dass Microsoft Sicherheits- und Wartungsupdates bereitstellen kann. Darüber hinaus bieten die eingeschränkten Bibliotheken eine langfristig stabile API-Oberfläche, sodass Systemsoftware aktualisiert werden kann, um die Sicherheit zu erhöhen und gleichzeitig die binäre Kompatibilität für Anwendungen beizubehalten.

Betriebssystemdienste

Betriebssystemdienste hosten den allgemeinen Anwendungscontainer und sind für die Kommunikation mit dem Azure Sphere-Sicherheitsdienst verantwortlich. Sie verwalten die Netzwerkauthentifizierung und die Netzwerkfirewall für den gesamten ausgehenden Datenverkehr. Während der Entwicklung kommunizieren Betriebssystemdienste auch mit einem verbundenen PC und der Anwendung, die gerade gedebuggt wird.

Benutzerdefinierter Linux-Kernel

Der benutzerdefinierte Linux-basierte Kernel wird zusammen mit einem Startladeprogramm im Supervisor-Modus ausgeführt. Der Kernel ist sorgfältig auf den Flash- und RAM-Speicherbedarf der Azure Sphere-MCU abgestimmt. Es bietet eine Oberfläche für die vorzeitige Ausführung von Benutzerraumprozessen in separaten virtuellen Adressräumen. Das Treibermodell macht MCU-Peripheriegeräte für Betriebssystemdienste und -anwendungen verfügbar. Azure Sphere-Treiber umfassen unter anderem Wi-Fi (der einen TCP/IP-Netzwerkstapel enthält), UART, SPI, I2C und GPIO.

Sicherheitsmonitor

Der von Microsoft bereitgestellte Sicherheitsmonitor wird in SW ausgeführt. Es ist für den Schutz von sicherheitsrelevanter Hardware wie Arbeitsspeicher, Flash und anderen gemeinsam genutzten MCU-Ressourcen und für die sichere Offenlegung des eingeschränkten Zugriffs auf diese Ressourcen verantwortlich. Der Sicherheitsmonitor brokert und gates zugriff auf das Pluton-Sicherheitssubsystem und den Hardwarevertrauensstamm und fungiert als Watchdog für die NW-Umgebung. Es startet das Startladeprogramm, macht Laufzeitdienste für NW verfügbar und verwaltet Hardwarefirewalls und andere Siliziumkomponenten, auf die NW nicht zugreifen kann.

Azure Sphere-Sicherheitsdienst

Der Azure Sphere-Sicherheitsdienst besteht aus drei Komponenten: Authentifizierung ohne Kennwort, Aktualisierung und Fehlerberichterstattung.

  • Kennwortlose Authentifizierung. Die Authentifizierungskomponente bietet Remotenachweis und kennwortlose Authentifizierung. Der Remotenachweisdienst stellt eine Verbindung über ein Challenge-Response-Protokoll her, das das Feature für den gemessenen Start im Pluton-Subsystem verwendet. Sie überprüft nicht nur, ob das Gerät mit der richtigen Software gestartet wurde, sondern auch mit der richtigen Version dieser Software.

    Nach erfolgreichem Nachweis übernimmt der Authentifizierungsdienst. Der Authentifizierungsdienst kommuniziert über eine gesicherte TLS-Verbindung und stellt ein Zertifikat aus, das das Gerät einem Webdienst wie Microsoft Azure oder der privaten Cloud eines Unternehmens präsentieren kann. Der Webdienst überprüft die Zertifikatkette und überprüft so, ob das Gerät original ist, dass seine Software auf dem neuesten Stand ist und dass Microsoft seine Quelle ist. Das Gerät kann dann sicher und sicher mit dem Onlinedienst verbunden werden.

  • Aktualisieren. Der Updatedienst verteilt automatische Updates für das Azure Sphere-Betriebssystem und für Anwendungen. Der Updatedienst stellt den fortgesetzten Betrieb sicher und ermöglicht die Remotewartung und Aktualisierung von Anwendungssoftware.

  • Fehlerberichterstattung. Der Fehlerberichterstattungsdienst bietet einfache Absturzberichte für bereitgestellte Software. Um umfangreichere Daten zu erhalten, verwenden Sie die Berichts- und Analysefeatures, die in einem Microsoft Azure-Abonnement enthalten sind.

Alle mit dem Azure Sphere-Sicherheitsdienst gespeicherten Daten werden standardmäßig im Ruhezustand verschlüsselt. Der Sicherheitsdienst speichert Daten in Azure Storage, Azure Cosmos DB und Azure Key Vault und verwendet dabei die Implementierung der Datenverschlüsselung ruhender Daten für jeden dieser Dienste.