
Sécurité de l’attestation des appareils gérés
L’attestation d’appareil géré est disponible sous iOS 16, iPadOS 16, macOS 14, tvOS 16, watchOS 9, visionOS 1.1, ou versions ultérieures. Elle utilise le Secure Enclave pour fournir des assurances chiffrées concernant l’identité d’un appareil et sa sécurité. Les appareils iPhone, iPad et Apple TV requièrent la puce A11 Bionic ou modèles ultérieurs, et seuls les ordinateurs Mac avec puce Apple sont pris en charge. Apple Vision Pro requiert visionOS 1.1 ou une version ultérieure. L’attestation d’appareil géré aide à protéger contre les menaces suivantes :
un appareil compromis qui ment au sujet de ses propriétés;
un appareil compromis qui fournit une attestation obsolète;
un appareil compromis qui envoie les identifiants d’un autre appareil;
l’extraction d’une clé privée pour l’utiliser sur un appareil malveillant;
un fraudeur qui détourne une demande de certificat pour inciter l’autorité de certification à lui émettre un certificat.
À l’aide de l’attestation d’appareil géré, un appareil peut demander une attestation des serveurs d’attestation d’Apple, qui renvoient un tableau de données composé d’un certificat feuille intermédiaire qui est ancré dans l’Apple Enterprise Attestation Root CA. Selon le type d’appareil, le certificat feuille peut contenir des propriétés particulières (voir le tableau suivant).
OID et valeur | Versions minimales de systèmes d’exploitation prises en charge | Description | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
1.2.840.113635.100.8.9. Numéro de série | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 visionOS 1.1 | Représente le numéro de série de l’appareil et peut être utilisé pour identifier un appareil. Pour protéger la vie privée de l’utilisateur, cette valeur n’est pas incluse lorsque l’attestation de dispositif géré est utilisée avec l’inscription de l’utilisateur. | |||||||||
1.2.840.113635.100.8.9.2 UDID | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 visionOS 1.1 | Représente l’identifiant matériel unique et peut être utilisé pour identifier un appareil. Sur un Mac, l’UDID correspond à l’approvisionnement de l’UDID de l’appareil. Pour protéger la vie privée de l’utilisateur, cette valeur n’est pas incluse lorsque l’attestation de dispositif géré est utilisée avec l’inscription de l’utilisateur. | |||||||||
1.2.840.113635.100.8.10.2 Version de sepOS | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 visionOS 1.1 | Représente la version de programme interne du Secure Enclave | |||||||||
1.2.840.113635.100.8.11.1 Code de fabrication | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 visionOS 1.1 | Code unique et non prévisible identifiant une attestation en particulier. Indique que l’attestation a été générée après la création du code. Le code est haché avec l’algorithme SHA256. | |||||||||
1.2.840.113635.100.8.13.1 État de la SIP | macOS 14 | Représente l’état d’activation de la SIP sur un Mac avec puce Apple. | |||||||||
1.2.840.113635.100.8.13.2 État du démarrage sécurisé | macOS 14 | Représente la sélection de configuration de démarrage sécurisé d’un Mac avec puce Apple. | |||||||||
1.2.840.113635.100.8.13.3 Extensions de noyau tierces autorisées | macOS 14 | Représente si les extensions de noyau tierces sont autorisées sur un Mac avec puce Apple. | |||||||||
1.2.840.113635.100.8.10.3 Version du LLB | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 visionOS 1.1 | Représente la version de programme interne du Chargeur d’amorçage de niveau inférieur (LLB). | |||||||||
1.2.840.113635.100.8.10.1 Version du système d’exploitation | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 visionOS 1.1 | Représente la version du système d’exploitation et d’iBoot. | |||||||||
1.2.840.113635.100.8.9.4 Identifiant de mise à jour logicielle de l’appareil | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 visionOS 1.1 | Atteste que |
Un appareil peut demander une attestation soit par une commande envoyée par le serveur de GAM, soit dans le cadre d’un processus de délivrance de certificat utilisant ACME. Dans les deux cas, l’appareil reçoit un code de fabrication du serveur de GAM ou ACME (dans le cadre de la demande du serveur d’attestation). Le hachage SHA256 du code de fabrication est inclus en tant que propriété dans le certificat feuille et permet au serveur de GAM ou ACME de vérifier que l’attestation correspond à la demande.
Sur réception de l’attestation, un service dorsal doit effectuer des vérifications de validation rigoureuses. Ces vérifications consistent notamment à s’assurer que le certificat feuille a été émis par l’Apple Enterprise Attestation Root CA, à comparer le hachage du code de fabrication avec la valeur attendue et à examiner d’autres propriétés de l’attestation.
Selon le modèle de déploiement d’une organisation, l’attestation des appareils gérés peut constituer un fondement important d’un déploiement moderne et sécurisé et être utilisé de différentes manières :
Utiliser un certificat délivré par l’ACME pour authentifier la connexion du client à la GAM et tirer profit de l’attestation
DeviceInformation
pour vérifier les propriétés d’un appareil de façon continue.Vérifier l’identité d’un appareil et son niveau de sécurité, puis demander au serveur ACME d’effectuer une évaluation de confiance avant d’émettre un certificat. Ainsi, seuls les appareils qui répondent aux normes requises reçoivent un certificat.
Incorporer les propriétés de l’appareil provenant de l’attestation dans un certificat ACME et effectuer l’évaluation de la fiabilité de ses parties de confiance.
Création de clés liées au matériel
Dans le cadre de la délivrance d’un certificat à l’aide du protocole ACME, il peut être demandé à un appareil de fournir une attestation qui entraîne aussi la création de la paire de clés associée dans le Secure Enclave, afin de bénéficier de ses solides protections matérielles. La clé privée est ainsi enveloppée dans une clé de classe, ce qui permet d’éviter l’exportation de la clé privée.
Afin de créer une clé liée au matériel, la configuration ACME a besoin d’utiliser l’algorithme ECSECPrimeRandom avec une taille de clé de 256 ou 384 bits. Il s’agit d’une paire de clés sur les courbes P-256 ou P-384, telles que définies dans la norme NIST SP 800-186.
Les clés liées au matériel ne résistent pas à la sauvegarde et la restauration, même sur le même appareil. Toutes les configurations contenant une entité ACME avec une clé liée au matériel sont supprimées lors de la restauration. Si une clé liée au matériel est utilisée comme identité de client de GAM, l’appareil est désinscrit. Dans ce scénario, si un appareil a été inscrit au moyen de l’inscription automatisée des appareils, l’appareil récupère son profil d’inscription et se réinscrit.