Atestación de dispositivos gestionados para dispositivos Apple
La atestación de dispositivos gestionados es una función de iOS 16, iPadOS 16.1, macOS 14 y tvOS 16 o posterior. La atestación de dispositivos gestionados proporciona una sólida evidencia sobre qué propiedades de un dispositivo pueden utilizarse como parte de una evaluación de la confianza. Esta declaración criptográfica de propiedades de dispositivos se basa en la seguridad de Secure Enclave y los servidores de atestación de Apple.
La atestación de dispositivos gestionados ayuda a proteger frente a las siguientes amenazas:
Un dispositivo vulnerado que miente sobre sus propiedades
Un dispositivo vulnerado que proporciona una atestación desfasada
Un dispositivo vulnerado que envía identificadores de un dispositivo diferente
Extracción de claves privadas para su uso en un dispositivo furtivo
Un atacante que secuestra una solicitud de certificado para engañar a la CA para que emita un certificado para el atacante
Para obtener más información, consulta el vídeo de la WWDC22 What’s new in device management.
Hardware compatible para la atestación de dispositivos gestionados
Las atestaciones solo se emiten para los dispositivos que cumplen los siguientes requisitos de hardware:
Dispositivos iPhone, iPad y Apple TV: Con el chip A11 Bionic o posterior.
Ordenadores Mac: Con chip de Apple.
La atestación de dispositivos gestionados para Apple Watch y Apple Vision Pro no ha cambiado.
Atestación de dispositivos gestionados con solicitudes de inscripción de certificados ACME
El servicio ACME de la autoridad de certificación (CA) emisora de una organización puede solicitar una atestación de las propiedades del dispositivo que se está inscribiendo. Esta atestación proporciona garantías sólidas de que las propiedades del dispositivo (por ejemplo, el número de serie) son legítimas y no falseadas. El servicio ACME de la CA emisora pueden validar criptográficamente la integridad de las propiedades del dispositivo atestado y, opcionalmente, cruzarlas con el inventario del dispositivo de la organización y, tras una verificación satisfactoria, certificar que ese dispositivo es en efecto el dispositivo de la organización.
Si se utiliza la atestación, se genera una clave privada vinculada al hardware dentro de Secure Enclave del dispositivo como parte de la solicitud de firma de certificado. Para esta solicitud, la CA que emitió el certificado ACME puede emitir después un certificado de cliente. La clave está asociada a Secure Enclave y, por lo tanto, solo está disponible en un dispositivo específico. Puede utilizarse en el iPhone, iPad, Apple TV y Apple Watch con configuraciones que permitan especificar una identidad de certificado. En un Mac, las claves vinculadas al hardware pueden utilizarse para la autenticación con MDM, Microsoft Exchange, Kerberos, redes 802.1X, el cliente de VPN integrado y el relay de red integrado.
Nota: Secure Enclave dispone de sólidas protecciones frente a la extracción de claves, incluso si la seguridad de un procesador de aplicación se ha visto comprometida.
Estas claves vinculadas con el equipo de hardware se eliminan automáticamente al borrar o restablecer un dispositivo. Dado que las claves se eliminan, los perfiles de configuración asociados con esas claves dejarán de funcionar tras el restablecimiento. Para recrear las claves, hay que volver a aplicar el perfil.
Mediante la atestación de cargas útiles ACME, MDM puede inscribir una identidad de certificado de cliente usando el protocolo ACME, que puede validar criptográficamente que:
El dispositivo es un dispositivo Apple genuino.
El dispositivo es un dispositivo específico.
El dispositivo se gestiona con el servidor MDM de la organización.
El dispositivo tiene determinadas propiedades (por ejemplo, el número de serie).
La clave privada está vinculada por hardware al dispositivo.
Atestación de dispositivos gestionados con solicitudes de MDM
Además de usar la atestación de dispositivos gestionados durante las solicitudes de inscripción de certificados ACME, una solución MDM puede emitir una consulta DeviceInformation
mediante la que solicita una propiedad DevicePropertiesAttestation
. Si la solución MDM quiere ayudar a garantizar una nueva atestación, puede enviar una clave DeviceAttestationNonce
opcional, que fuerza una nueva atestación. Si se omite esta clave, el dispositivo devuelve una atestación almacenada en caché. A continuación, la respuesta de atestación de dispositivo devuelve un certificado terminal con sus propiedades en OID personalizados.
Nota: El número de serie y el UDID se omiten al utilizar la inscripción de usuario para proteger su privacidad. Los otros valores son anónimos e incluyen propiedades como la versión de sepOS y el código de frescura.
A continuación, la solución MDM puede validar la respuesta evaluando que la cadena de certificados proceda de la autoridad de certificación esperada de Apple (disponible en el repositorio de la PKI privada de Apple) y si el hash del código de frescura es el mismo que el hash del código de frescura proporcionado en la consulta DeviceInformation
.
Como al definir un código de frescura se genera una nueva atestación —que consume recursos en el dispositivo y en los servidores de Apple—, el uso se limita actualmente a una atestación de DeviceInformation
cada 7 días. Una solución MDM no debería solicitar inmediatamente una atestación nueva cada 7 días. No se considera necesario solicitar una nueva atestación si no han cambiado las propiedades del dispositivo; por ejemplo, una actualización o cambio de versión del sistema operativo. Además, una solicitud ocasional cualquiera de una atestación nueva puede ayudar a detectar un dispositivo vulnerado que está intentando mentir sobre esas propiedades.
Gestionar atestaciones fallidas
Una solicitud de una atestación puede fallar. Cuando eso ocurre, el dispositivo sigue respondiendo a la consulta DeviceInformation
o a la comprobación device-attest-01
del servidor ACME, pero se omite cierta información. O bien se omite el OID inesperado o su valor, o bien se omite la atestación por completo. Hay muchos motivos potenciales que pueden tener como resultado un fallo. Por ejemplo:
Un problema de red al conectar con los servidores de atestación de Apple
El hardware o el software del dispositivo pueden haber sido vulnerados
El dispositivo no es un equipo Apple genuino
En estos dos últimos casos, los servidores de atestación de Apple rechazan emitir una atestación para propiedades que no pueden verificar. La solución MDM no tiene ninguna forma fiable de conocer la causa exacta de una atestación fallida. Esto se debe a que la única fuente de información sobre el fallo es el propio dispositivo, que puede ser un dispositivo vulnerado que está mintiendo. Por este motivo, las respuestas del dispositivo no indican el motivo del fallo.
Sin embargo, cuando se utiliza la atestación de dispositivos gestionados como parte de una arquitectura de confianza cero, la organización puede calcular una puntuación de confianza para el dispositivo, y la puntuación se reducirá si la atestación falla o queda obsoleta de forma inesperada. Una puntuación de confianza reducida desencadena diferentes acciones, como denegar el acceso a servicios, marcar el dispositivo para una investigación manual o escalar la conformidad mediante el borrado del dispositivo y la revocación de sus certificados, si es necesario. Esto garantiza una respuesta adecuada a una atestación fallida.