Was ist Azure Sphere?

Azure Sphere ist eine sichere Anwendungsplattform auf hoher Ebene mit integrierten Kommunikations- und Sicherheitsfeatures für mit dem Internet verbundene Geräte. Es besteht aus einer gesicherten, verbundenen, Überkreuzungs-Mikrocontrollereinheit (MCU), einem benutzerdefinierten linux-basierten Betriebssystem (Os) und einem cloudbasierten Sicherheitsdienst, der kontinuierliche, erneuerbare Sicherheit bietet.

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

  • Eine gesicherte Anwendungsumgebung, authentifizierte Verbindungen und die Nutzung von Peripheriegeräten minimieren Sicherheitsrisiken unter anderem durch Spoofing, nicht autorisierte 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 neue Angriffsmethoden zu vermeiden, wodurch die Produktivität des Supportpersonals verbessert wird.
  • Produktnutzungsdaten können über eine gesicherte Verbindung an die Cloud gemeldet werden, um Probleme zu diagnostizieren und neue Produkte zu entwerfen, wodurch die Chancen für Produktdienstleistungen, positive Kundeninteraktionen und zukünftige Entwicklung erhöht werden.

Der Azure Sphere Security Service ist ein integraler Aspekt von Azure Sphere. Mit diesem Dienst 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 gesicherten Kanal, über den Microsoft Betriebssystemupdates automatisch auf bereitgestellte Geräte vor Ort herunterladen und installieren kann, um Sicherheitsprobleme zu vermeiden. Weder Hersteller noch Endbenutzereingriff ist erforderlich, wodurch ein gemeinsames Sicherheitslücke geschlossen wird.

Azure Sphere-Szenario

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

Contoso, Ltd., ist ein Hersteller von White-Goods-Produkten, der einen Azure Sphere MCU in seine Geschirrspüler einbettet. Der DW100-Geschirrspüler verbindet den MCU mit mehreren Sensoren und einer high-level-Anwendung an Bord, die auf der Azure Sphere MCU ausgeführt wird. Die Anwendung kommuniziert mit dem Azure Sphere Security Service und mit den Clouddiensten von Contoso. Das folgende Diagramm veranschaulicht dieses Szenario:

Stellt eine Verbindung mit ioT, Security Service und herstellerbasierten Cloudmandantenmit contoso-netzwerkfähigen Geschirrspülern her

Beginnend von oben links und im Uhrzeigersinn:

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

  • Contoso Product Engineering veröffentlicht Updates für seine DW100-Anwendung über den Azure Sphere Security Service.

  • Der Azure Sphere Security Service stellt das aktualisierte Betriebssystem und die Contoso DW100-Anwendungssoftware sicher an den Geschirrspülern an Endbenutzerstandorten bereit.

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

  • Contoso-Clouddienste unterstützen Anwendungen für 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 zum Azure Sphere Security Service herunter. Sie können auch mit der Clouddienstanwendung von Contoso kommunizieren, um zusätzliche Daten zu melden.

Sensoren im Geschirrspüler können z. B. die Wassertemperatur, die Trocknungstemperatur und den Spülmittelstand ü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 kühl erscheint , was auf einen fehlerhaften Teil hinweisen könnte, führt Contoso die Diagnose remote aus und benachrichtigt den Kunden darüber, dass Reparaturen erforderlich sind. Wenn der Geschirrspüler unter Garantie steht, kann die Cloud-Service-Anwendung auch sicherstellen, dass die lokale Werkstatt des Kunden über das Ersatzteil verfügt, wodurch Wartungsbesuche und Bestandsanforderungen reduziert werden. Wenn das Spülmittel niedrig ist, könnte der Geschirrspüler dem Kunden signalisieren, mehr Spülmittel direkt vom Hersteller zu kaufen.

Die gesamte Kommunikation erfolgt über gesicherte, authentifizierte Verbindungen. Contoso-Support- und Entwicklungsmitarbeiter können Daten mithilfe des Azure Sphere Security Service, von Microsoft Azure-Features oder einer Contoso-spezifischen Clouddienstanwendung visualisieren. Contoso bietet möglicherweise auch kundenorientierte Web- und mobile Anwendungen an, mit denen Geschirrspülerbesitzer Den Service anfordern, den Ressourcenverbrauch der Geschirrspüler überwachen oder anderweitig 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 Security Service verteilt die Softwareupdates auf die richtigen Geräte. Nur signierte und überprüfte Softwareupdates können auf den Geschirrspülern installiert werden.

Azure Sphere und die sieben Eigenschaften hochsicherer Geräte

Ein primäres Ziel der Azure Sphere-Plattform ist es, hochwertige Sicherheit zu geringen Kosten bereitzustellen, damit preissensible, mikrocontrollerbetriebene Geräte sicher und zuverlässig eine Verbindung mit dem Internet herstellen können. Da mit dem Netzwerk verbundene Spielzeuge, Geräte und andere Verbrauchergeräte an der Tagesordnung sind, ist Sicherheit von größter Bedeutung. Die Gerätehardware selbst muss nicht nur gesichert, sondern auch ihre Software und ihre Cloudverbindungen gesichert werden. Ein Sicherheitsrisiko, das überall in der Betriebsumgebung ausfällt, bedroht das gesamte Produkt und möglicherweise alles oder jede Andere in der Nähe.

Basierend auf der jahrzehntelangen Erfahrung von Microsoft im Bereich Internetsicherheit hat das Azure Sphere-Team sieben Eigenschaften hochsicherer Geräte identifiziert. Die Azure Sphere-Plattform ist auf diese sieben Eigenschaften ausgelegt:

Hardwarebasierter Vertrauensstamm. Ein hardwarebasierter Vertrauensstamm stellt sicher, dass das Gerät und seine Identität nicht getrennt werden können, wodurch Fälschungen oder Spoofing von Geräten verhindert werden. Jede Azure Sphere MCU wird durch einen unforgebaren kryptografischen Schlüssel identifiziert, der von der von Microsoft entwickelten Pluton-Sicherheitssubsystemhardware generiert und geschützt wird. Dadurch wird ein manipulationssicherer, gesicherter Hardwarestamm der Vertrauensstellung von der Factory bis zum Endbenutzer sichergestellt.

Verteidigung im Detail. Verteidigung im Detail bietet mehrere Sicherheitsebenen und somit mehrere Gegenmaßnahmen gegen jede Bedrohung. Jede Ebene von Software in der Azure Sphere-Plattform überprüft, dass die Ebene darüber gesichert ist.

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

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

Kennwortlose Authentifizierung. Die Verwendung signierter Zertifikate, die durch einen unforgebaren kryptografischen Schlüssel überprüft werden, bietet eine viel stärkere Authentifizierung als Kennwörter. Für die Azure Sphere-Plattform muss jedes Softwareelement signiert sein. Die Geräte-zu-Cloud- 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 aufkommende Sicherheitsangriffe. Fehler, die zu Gerätefehlern führen, stellen einen Denial-of-Service-Angriff dar. Die Geräte-zu-Cloud-Kommunikation bietet eine frühzeitige Warnung vor potenziellen Fehlern. Azure Sphere-Geräte können Betriebsdaten 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, wodurch kein Eingreifen des Produktherstellers oder des Endbenutzers erforderlich ist. Der Azure Sphere Security Service aktualisiert das Azure Sphere-Betriebssystem und Ihre Anwendungen automatisch.

Azure Sphere-Architektur

Die Azure Sphere-Hardware, -Software und der Sicherheitsdienst ermöglichen in Zusammenarbeit einzigartige, integrierte Ansätze für die Wartung, Kontrolle 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 gesicherten benutzerdefinierten Betriebssystemkernel, der auf dem von Microsoft geschriebenen Sicherheitsmonitor ausgeführt wird, ermöglicht es Ihnen, Ihre Softwareaktivitäten auf mehrwertige IoT- und gerätespezifische Features zu konzentrieren.

Der Azure Sphere Security Service unterstützt Authentifizierung, Softwareupdates und Fehlerberichterstattung über gesicherte Cloud-zu-Gerät- und Geräte-zu-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

Ein Azure Sphere-Cross-Over-MCU besteht aus mehreren Kernen auf einem einzelnen Würfel, wie in der folgenden Abbildung dargestellt.

HardwarearchitekturAzure Sphere MCU-Hardwarearchitektur

Jeder Kern und sein zugehöriges Subsystem befinden sich in einer anderen vertrauenswürdigen Domäne. Die Vertrauenswurzel befindet sich im Pluton-Sicherheitssubsystem. Jede Ebene der Architektur geht davon aus, dass die darüber liegende Ebene kompromittiert sein kann. Innerhalb jeder Ebene bieten Ressourcenisolation und dynamische Fächer zusätzliche Sicherheit.

Microsoft Pluton-Sicherheitssubsystem

Das Pluton-Sicherheitssubsystem ist der hardwarebasierte (im Silizium) gesicherte Vertrauensstamm für Azure Sphere. Es umfasst einen Sicherheitsprozessorkern, Kryptografiemodule, einen Hardware-Zufallszahlengenerator, die Generierung von öffentlichem/privatem Schlüssel, asymmetrische und symmetrische Verschlüsselung, die Unterstützung der EcdSA-Überprüfung (Elliptic Curve Digital Signature Algorithm) für den sicheren Start und den kontrollierten Start im Silizium, um den Remotenachweis mit einem Clouddienst zu unterstützen, sowie verschiedene Manipulationsindikatoren, 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.

Anwendungskern auf hoher Ebene

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

Kerne in Echtzeit

Die Echtzeitkerne verfügen über ein ARM Cortex-M E/A-Subsystem, das echtzeitfähige Anwendungen als Bare-Metal-Code oder als Echtzeitbetriebssystem (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 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.

Multiplexed 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 Silicon-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 Abteilung und verhindern so, 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 Flash-Speicher.

Softwarearchitektur und Betriebssystem

Auf der allgemeinen Anwendungsplattform wird das Azure Sphere-Betriebssystem zusammen mit einer gerätespezifischen Allgemeinen Anwendung ausgeführt, die sowohl mit dem Internet als auch mit echtzeitfähigen Anwendungen kommunizieren kann, die auf den Echtzeitkernen ausgeführt werden. Die folgende Abbildung zeigt die Elemente dieser Plattform.

Von Microsoft bereitgestellte Elemente werden grau angezeigt.

AnwendungsplattformAllgemeine 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 der einzelnen Updates mit der Azure Sphere-Gerätehardware wird vor der Installation überprüft.

Anwendungslaufzeit

Die von Microsoft bereitgestellte Anwendungslaufzeit basiert auf einer Teilmenge des POSIX-Standards. Es 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, jedoch unter anderem 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 langfristige 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 Security Service verantwortlich. Sie verwalten die Netzwerkauthentifizierung und die Netzwerkfirewall für den gesamten ausgehenden Datenverkehr. Während der Entwicklung kommunizieren die Betriebssystemdienste auch mit einem verbundenen PC und der Anwendung, die debuggt wird.

Benutzerdefinierter Linux-Kernel

Der benutzerdefinierte Linux-basierte Kernel wird zusammen mit einem Startladeprogramm im Supervisormodus ausgeführt. Der Kernel wird sorgfältig auf den Flash- und RAM-Speicherbedarf der Azure Sphere MCU abgestimmt. Es bietet eine Oberfläche für die vorab absetzbare Ausführung von Prozessen im Benutzerbereich 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 (einschließlich tcp/IP-Netzwerkstapel), UART, SPI, I2C und GPIO.

Sicherheitsmonitor

Der von Microsoft bereitgestellte Sicherheitsmonitor wird in SW ausgeführt. Sie ist verantwortlich für den Schutz sicherheitssensitiver Hardware wie Arbeitsspeicher, Flash und anderer freigegebener MCU-Ressourcen und für das sichere Aussetzen des eingeschränkten Zugriffs auf diese Ressourcen. Die Security Monitor-Broker und -Gates greifen auf das Pluton-Sicherheitssubsystem und die Hardwarewurzel des Vertrauens zu und fungieren 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 Security Service

Der Azure Sphere Security Service umfasst drei Komponenten: kennwortlose Authentifizierung, Aktualisierung und Fehlerberichterstattung.

  • Kennwortlose Authentifizierung. Die Authentifizierungskomponente bietet Remotenachweis und kennwortlose Authentifizierung. Der Remotenachweisdienst stellt eine Verbindung über ein Abfrageantwortprotokoll her, das die Funktion für den kontrollierten Start des Pluton-Subsystems verwendet. Es wird nicht nur überprüft, ob das Gerät mit der richtigen Software gestartet wurde, sondern 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, z. B. 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 der Anwendungssoftware.

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

Alle mit dem Azure Sphere Security Service gespeicherten Daten sind standardmäßig im Ruhezustand verschlüsselt. Der Sicherheitsdienst speichert Daten in Azure Storage, Cosmos DB und Azure Key Vault, wobei die Datenverschlüsselung im Ruhezustand für jeden dieser Dienste verwendet wird.