
Certificación de dispositivos administrados para los dispositivos Apple
La certificación de dispositivos administrados está disponible en iOS 16, iPadOS 16, macOS 14, tvOS 16, visionOS 1.1, watchOS 9 y versiones posteriores. Utiliza el Secure Enclave para proporcionar garantías criptográficas sobre la identidad de un dispositivo y su postura de seguridad. Los dispositivos iPad, iPhone y Apple TV requieren el chip A11 Bionic o posterior, y son compatibles sólo las computadoras Mac con Apple Chip. La certificación de dispositivos administrados proporciona protección contra las siguientes amenazas:
Un dispositivo comprometido que proporciona información incorrecta sobre sus propiedades.
Un dispositivo comprometido que proporciona una certificación obsoleta.
Un dispositivo comprometido que envía identificadores de un dispositivo diferente.
Extracción de claves privadas para usarlas en un dispositivo comprometido.
Un atacante secuestra una solicitud de certificado para engañar a la autoridad de certificación (CA) para que le emita un certificado.
Con la certificación de dispositivos administrados, un dispositivo puede solicitar una certificación de los servidores de certificación de Apple, los cuales envían un arreglo de datos que consta de un certificado de entidad final y un certificado intermedio que tiene su raíz en la autoridad de certificación Apple Enterprise Attestation Root. Según el tipo de dispositivo, el certificado de entidad final puede contener propiedades específicas, como se muestra en la tabla siguiente.
OID y valor | Versiones mínimas de los sistemas operativos compatibles | Descripción | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
1.2.840.113635.100.8.9.1 Número de serie | iOS 16 iPadOS 16 macOS 14 tvOS 16 visionOS 1.1 watchOS 9 | Representa el número de serie del dispositivo y puede usarse para identificar un dispositivo. Para ayudar a proteger la privacidad del usuario, este valor no se incluye cuando se usa la certificación de dispositivos administrados con el perfil Inscripción de usuarios. | |||||||||
1.2.840.113635.100.8.9.2 UDID | iOS 16 iPadOS 16 macOS 14 tvOS 16 visionOS 1.1 watchOS 9 | Representa el identificar de hardware único y puede usarse para identificar un dispositivo. En una Mac, el UDID coincide con el UDID de aprovisionamiento del dispositivo. Para ayudar a proteger la privacidad del usuario, este valor no se incluye cuando se usa la certificación de dispositivos administrados con el perfil Inscripción de usuarios. | |||||||||
1.2.840.113635.100.8.10.2 Versión sepOS | iOS 16 iPadOS 16 macOS 14 tvOS 16 visionOS 1.1 watchOS 9 | Representa la versión del firmware del Secure Enclave. | |||||||||
1.2.840.113635.100.8.11.1 Código de originalidad | iOS 16 iPadOS 16 macOS 14 tvOS 16 visionOS 1.1 watchOS 9 | Un código único y no predecible que identifica una certificación concreta. Indica que la certificación se generó después de la creación del código. | |||||||||
1.2.840.113635.100.8.13.1 Estado SIP | macOS 14 | Representa el estado de activación de SIP en una Mac con Apple Chip. | |||||||||
1.2.840.113635.100.8.13.2 Estado del arranque seguro | macOS 14 | Representa la configuración seleccionada para el arranque seguro de una Mac con Apple Chip. | |||||||||
1.2.840.113635.100.8.13.3 Extensiones del kernel de terceros permitidas | macOS 14 | Representa si las extensiones del kernel de terceros están permitidas o no en una Mac con Apple Chip. | |||||||||
1.2.840.113635.100.8.10.3 Versión LLB | iOS 16 iPadOS 16 macOS 14 tvOS 16 visionOS 1.1 watchOS 9 | Representa la versión del gestor de arranque de bajo nivel. | |||||||||
1.2.840.113635.100.8.10.1 Versión del sistema operativo | iOS 16 iPadOS 16 macOS 14 tvOS 16 visionOS 1.1 watchOS 9 | Representa el sistema operativo y la versión de iBoot. | |||||||||
1.2.840.113635.100.8.9.4 ID del dispositivo para la actualización del software | iOS 16 iPadOS 16 macOS 14 tvOS 16 visionOS 1.1 watchOS 9 | Certifica el valor de | |||||||||
La solicitud de una certificación se inicia ya sea mediante una solicitud DeviceInformation enviada por el servicio de administración de dispositivos o mediante la instalación de una configuración ACME. En ambos casos, el dispositivo recibe un código de originalidad del servicio de administración de dispositivos o de la solución ACME. Al usar la certificación DeviceInformation, el código de originalidad es el valor de la clave DeviceAttestationNonce especificada en la solicitud. Al usar la certificación ACME, el código de originalidad es el hash SHA-256 del identificar del reto device-attest-01. El valor resultante se incluye como propiedad en el certificado de entidad final y permite al servidor de administración de dispositivos o a la solución ACME verificar que la certificación coincide con la solicitud.
Tras recibir la certificación, un servicio en el servidor debe realizar comprobaciones de validación cuidadosamente. Estas comprobaciones incluyen tareas como asegurar que el certificado de entidad final fue emitido por la entidad de certificación Apple Enterprise Attestation Root, comparar el hash del código de originalidad con el valor esperado, y examinar otras propiedades de la certificación.
Dependiendo del modelo de implementación de una organización, la certificación de dispositivos administrados puede ser un pilar importante de una implementación moderna y segura, y puede usarse de distintas maneras, como:
Usar un certificado emitido por ACME para autenticar la conexión entre el cliente y el servicio de administración de dispositivos, y aprovechar la certificación
DeviceInformationpara verificar las propiedades de un dispositivo de forma continua.Verificar la identidad de un dispositivo y su postura de seguridad, y hacer que la solución ACME evalúe la confianza antes de emitir un certificado. De esta manera, se garantiza que sólo los dispositivos que cumplen los estándares exigidos reciben un certificado.
Integrar las propiedades del dispositivo en un certificado ACME, y evaluar la confianza en las partes confiantes.
Claves vinculadas al hardware
Como parte de la emisión de un certificado mediante el protocolo ACME, se puede realizar una solicitud a un dispositivo para que proporcione una certificación que también haga que el par de claves asociado esté protegido por el Secure Enclave, de modo que se beneficie de su alta seguridad de hardware y ayude a evitar la exportación de la clave privada.
Para crear una clave vinculada al hardware, la configuración de ACME debe usar el algoritmo ECSECPrimeRandom con un tamaño de clave de 256 o 384 bits. Esto especifica un par de claves en las curvas P-256 o P-384, tal como se definen en NIST SP 800-186.
Para generar la clave privada, el Secure Enclave primero usa lo siguiente para crear un secreto criptográfico encapsulado:
Una combinación de su generador de números aleatorios verdaderos (TRNG) de hardware
Entropía almacenada en la memoria no volátil segura del Secure Enclave
Una clave de protección de datos
El sistema operativo almacena el secreto envuelto; sin embargo, el secreto envuelto no tiene utilidad alguna por sí solo. Para derivar la clave privada, el Secure Enclave necesita usar el mismo secreto, la misma entropía almacenada y la misma clave de protección de datos. Dado que la entropía almacenada y la clave de protección de datos son exclusivas de ese Secure Enclave específico, sólo ese este puede generar la clave privada que vincula eficazmente la clave vinculada al hardware a ese Secure Enclave.
Cuando se borra el dispositivo, el Secure Enclave borra la entropía almacenada. Por este motivo, una clave vinculada al hardware no se puede regenerar después de una copia de seguridad y restauración, incluso cuando se restaura en el mismo dispositivo.
Cualquier configuración que contenga una carga útil ACME con una clave vinculada al hardware se elimina al completar una restauración. Si se usa una clave vinculada al hardware como identidad del cliente para el servicio de administración de dispositivos, se da de baja al dispositivo. En este caso, si el dispositivo se inscribió mediante la inscripción automática de dispositivos, el dispositivo recupera de nuevo su perfil de inscripción y se vuelve a inscribir.