
Sicherheit bei der verwalteten Gerätebeglaubigung
Die verwaltete Gerätebeglaubigung ist in iOS 16, iPadOS 16, macOS 14, tvOS 16, watchOS 9, visionOS 1.1 oder neueren Versionen verfügbar. Sie verwendet die Secure Enclave, um eine kryptografische Gewissheit über die Geräteidentität und dessen Sicherheitsstatus bereitzustellen. iPhone-, iPad- und Apple TV-Geräte benötigen einen A11 Bionic-Chip (oder neuer). Außerdem werden nur Mac-Computer mit Apple Chips unterstützt. Die Apple Vision Pro benötigt visionOS 1.1 (oder neuer). Die verwaltete Gerätebeglaubigung hilft dabei, vor folgenden Gefahren zu schützen:
Ein kompromittiertes Gerät macht falsche Angaben über seine Eigenschaften
Ein kompromittiertes Gerät stellt eine abgelaufene Beglaubigung bereit
Ein kompromittiertes Gerät sendet die Kennung eines anderen Geräts
Extrahieren des privaten Schlüssels zur Verwendung auf einem bösartigen Gerät
Angreifende fangen eine Zertifikatsanfrage ab, um die Zertifizierungsstelle (CA) dazu zu bringen, ihnen ein Zertifikat auszustellen
Im Rahmen der verwalteten Gerätebeglaubigung kann ein Gerät eine Beglaubigung von einem Apple-Beglaubigungsserver anfragen, der ein Daten-Array mit einem Leaf- und einem Zwischenzertifikat zurück gibt, die von der Apple Enterprise Attestation Root CA stammen. Je nach Gerätetyp kann das Leaf-Zertifikat bestimmte Eigenschaften enthalten, die in der folgenden Tabelle aufgeführt sind.
OID und Wert | Mindestens erforderliche Betriebssystemversionen | Beschreibung | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
1.2.840.113635.100.8.9. Seriennummer | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 watchOS 1.1 | Steht für die Seriennummer des Geräts und kann für die Geräteidentifizierung verwendet werden. Zum Schutz der Privatsphäre von Benutzer:innen ist dieser Wert nicht enthalten, wenn die verwaltete Gerätebeglaubigung mit der Benutzerregistrierung verwendet wird. | |||||||||
1.2.840.113635.100.8.9.2 UDID | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 watchOS 1.1 | Steht für die individuelle Hardwarekennung und kann für die Geräteidentifizierung verwendet werden. Auf einem Mac stimmt die UDID mit der bereitgestellten Geräte-UDID überein. Zum Schutz der Privatsphäre von Benutzer:innen ist dieser Wert nicht enthalten, wenn die verwaltete Gerätebeglaubigung mit der Benutzerregistrierung verwendet wird. | |||||||||
1.2.840.113635.100.8.10.2 sepOS-Version | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 watchOS 1.1 | Steht für die Version der Secure Enclave-Firmware. | |||||||||
1.2.840.113635.100.8.11.1 Freshness-Code | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 watchOS 1.1 | Ein individueller und nicht vorhersehbarer Code, der eine bestimmte Beglaubigung identifiziert. Dies weist darauf hin, dass die Beglaubigung nach Erstellung des Codes generiert wurde. Der Code wird mit SHA-256 gehasht. | |||||||||
1.2.840.113635.100.8.13.1 SIP-Status | macOS 14 | Steht für den SIP-Aktivierungsstatus auf einem Mac mit Apple Chips. | |||||||||
1.2.840.113635.100.8.13.2 Status des sicheren Startvorgangs | macOS 14 | Steht für die ausgewählte Konfiguration für den sicheren Startvorgang auf einem Mac mit Apple Chips. | |||||||||
1.2.840.113635.100.8.13.3 Kernel-Erweiterungen von Drittanbietern erlaubt | macOS 14 | Steht dafür, ob Kernel-Erweiterungen von Drittanbietern auf einem Mac mit Apple Chips erlaubt sind oder nicht. | |||||||||
1.2.840.113635.100.8.10.3 LLB-Version | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 watchOS 1.1 | Steht für die Version des Low-Level-Bootloaders. | |||||||||
1.2.840.113635.100.8.10.1 Betriebssystemversion | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 watchOS 1.1 | Steht für die Betriebssystem- und iBoot-Version. | |||||||||
1.2.840.113635.100.8.9.4 Geräte-ID für Softwareupdate | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 watchOS 1.1 | Beglaubigt die |
Ein Gerät kann veranlasst werden, eine Beglaubigung anzufragen. Dies kann mit einem von der MDM-Lösung gesendeten Befehl oder als Teil einer Zertifikatausstellung via ACME durchgeführt werden. In beiden Fällen erhält das Gerät entweder vom MDM- oder ACME-Server (der Bestandteil der Anfrage an den Beglaubigungsserver ist) einen Freshness-Code. Der SHA-256-Hash des Freshness-Codes ist als Eigenschaft im Leaf-Zertifikat enthalten und erlaubt dem MDM- oder ACME-Server die Verifikation, dass die Beglaubigung mit der Anfrage übereinstimmt.
Vor dem Empfang der Beglaubigung muss ein Backend-Dienst sorgfältige Validierungsprüfungen durchführen. Im Rahmen der Überprüfungen wird sichergestellt, dass das Leaf-Zertifikat von der Apple Enterprise Attestation Root CA ausgestellt wurde. Dabei wird der Hash des Freshness-Codes mit dem erwarteten Wert verglichen und darüber hinaus werden auch andere Eigenschaften in der Beglaubigung überprüft.
Abhängig vom Implementierungsmodell der Organisation kann die verwaltete Gerätebeglaubigung eine wichtige Grundlage einer modernen und sicheren Implementierung sein und auf verschiedene Weise verwendet werden:
Mit einem ACME-ausgestellten Zertifikat die Verbindung zwischen Client und MDM-Lösung authentifizieren und die
DeviceInformation
-Beglaubigung fortlaufend zum Verifizieren der Eigenschaften des Gerätes verwenden.Die Identität des Geräts und dessen Sicherheitslage verifizieren sowie den ACME-Server eine Überprüfung der Vertrauenswürdigkeit durchführen lassen, bevor ein Zertifikat ausgegeben wird. Auf diese Weise ist sichergestellt, dass nur Geräte ein Zertifikat erhalten, die die erforderlichen Standards erfüllen.
Geräteeigenschaften von einer Beglaubigung in einem ACME-Zertifikat einbetten und die Überprüfung der Vertrauenswürdigkeit der teilnehmenden Parteien durchführen.
Hardwaregebundene Schlüssel erstellen
Als Bestandteil einer Zertifikatausstellung mithilfe des ACME-Protokolls kann ein Gerät aufgefordert werden, eine Beglaubigung bereitzustellen. Dabei wird auch das zugehörige Schlüsselpaar innerhalb der Secure Enclave erstellt, damit sie von dem starken Hardwareschutz profitiert. Dies hat zur Folge, dass der private Schlüssel mit einem Klassenschlüssel verpackt wird und das Exportieren des privaten Schlüssels verhindert werden kann.
Zum Erstellen eines hardwaregebundenen Schlüssels muss die ACME-Konfiguration den ECSECPrimeRandom-Algorithmus mit einer Schlüsselgröße von 256 oder 384 Bit verwenden. Dadurch wird ein Schlüsselpaar auf der P-256- oder P-384-Kurve gemäß NIST SP 800-186 spezifiziert.
Die hardwaregebundenen Schlüssel sind nach einem Backup oder einer Wiederherstellung nicht mehr verfügbar – auch nicht bei einer Wiederherstellung auf demselben Gerät. Alle Konfigurationen, die eine ACME-Payload mit einem hardwaregebundenen Schlüssel enthalten, werden bei der Wiederherstellung entfernt. Wenn ein hardwaregebundener Schlüssel als MDM-Client-Identität verwendet wird, wird das Gerät deregistriert. In diesem Szenario ruft das Gerät, wenn es über die automatische Geräteregistrierung registriert wurde, sein Registrierungsprofil erneut ab und registriert sich erneut.