
Segurança atestada de dispositivos gerenciados
O atestado de dispositivo gerenciado está disponível no iOS 16, iPadOS 16, macOS 14, tvOS 16, watchOS 9 e visionOS 1.1 ou posteriores. Ele usa o Secure Enclave para fornecer garantias criptográficas sobre a identidade de um dispositivo e sua postura de segurança. Dispositivos iPhone, iPad e Apple TV requerem o chip A11 Bionic ou posterior, e apenas computadores Mac com Apple Silicon são compatíveis. O Apple Vision Pro requer o visionOS 1.1 ou posterior. O Atestado de Dispositivo Gerenciado ajuda a proteger contra as seguintes ameaças:
Um dispositivo comprometido que minta sobre suas propriedades
Um dispositivo comprometido que forneça um atestado desatualizado
Um dispositivo comprometido que envie identificadores de um dispositivo diferente
Extração de chave privada para uso em um dispositivo comprometido
Ataque de sequestro de pedido de certificado para enganar a autoridade de certificação (AC) a emitir um certificado para o invasor
Com o atestado de dispositivo gerenciado, um dispositivo pode pedir um atestado dos servidores de atestado da Apple, que retornam um vetor de dados que consiste em uma folha e um certificado intermediário que têm como raiz a AC Raiz de Atestado Empresarial da Apple. Dependendo do tipo do dispositivo, o certificado folha pode conter propriedades específicas conforme a tabela a seguir.
OID e valor | Versões dos sistemas operacionais mínimos compatíveis | Descrição | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
1.2.840.113635.100.8.9. Número de série | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 visionOS 1.1 | Representa o número de série do dispositivo e pode ser usado para identificar um dispositivo. Para ajudar a proteger a privacidade do usuário, o valor não é incluído quando o atestado de dispositivo gerenciado é usado com o Registro do Usuário. | |||||||||
1.2.840.113635.100.8.9.2 UDID | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 visionOS 1.1 | Representa o ID de hardware exclusivo e pode ser usado para identificar um dispositivo. Em um Mac, o UDID é igual ao UDID de provisão do dispositivo. Para ajudar a proteger a privacidade do usuário, o valor não é incluído quando o atestado de dispositivo gerenciado é usado com o Registro do Usuário. | |||||||||
1.2.840.113635.100.8.10.2 Versão do sepOS | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 visionOS 1.1 | Representa a versão do firmware do Secure Enclave. | |||||||||
1.2.840.113635.100.8.11.1 Código de frescor | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 visionOS 1.1 | Um código único e não previsível que identifica um atestado em particular. Isso indica que o atestado foi gerado depois que o código foi criado. O hash do código é feito com SHA256. | |||||||||
1.2.840.113635.100.8.13.1 Estado da SIP | macOS 14 | Representa o estado de ativação da SIP em um Mac com Apple Silicon. | |||||||||
1.2.840.113635.100.8.13.2 Estado da inicialização segura | macOS 14 | Representa a configuração da inicialização segura selecionada em um Mac com Apple Silicon. | |||||||||
1.2.840.113635.100.8.13.3 Extensões de kernel de terceiros permitidas | macOS 14 | Representa se extensões de kernel de terceiros são ou não permitidas em um Mac com Apple Silicon. | |||||||||
1.2.840.113635.100.8.10.3 Versão do LLB | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 visionOS 1.1 | Representa a versão do Gerenciador de Inicialização de Baixo Nível. | |||||||||
1.2.840.113635.100.8.10.1 Versão do sistema operacional | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 visionOS 1.1 | Representa a versão do sistema operacional e do iBoot. | |||||||||
1.2.840.113635.100.8.9.4 ID do dispositivo para atualização de software | iOS 16 iPadOS 16 macOS 14 tvOS 16 watchOS 9 visionOS 1.1 | Atesta o |
Um dispositivo pode ser acionado para pedir um atestado por um comando enviado pelo servidor MDM ou como parte de um processo de emissão de certificado que use ACME. Em ambos os casos, o dispositivo recebe um código de frescor do servidor MDM ou ACME (que faça parte do pedido ao servidor de atestado). O hash SHA256 do código de frescor é incluído como propriedade no certificado folha e permite que o servidor MDM ou ACME verifique que o atestado é igual ao pedido.
Ao receber o atestado, um serviço de back‑end precisa realizar verificações cuidadosas de validação. Essas verificações incluem: garantir a emissão do certificado folha pela AC Raiz de Atestado Empresarial da Apple, comparar o hash do código de frescor com o valor esperado e examinar outras propriedades no atestado.
Dependendo do modelo de implementação da organização, o atestado de dispositivo gerenciado pode ser uma fundação importante de uma implementação moderna e segura, usada de diversas maneiras:
Usar um certificado emitido por ACME para autenticar a conexão do cliente ao MDM e usar o atestado
DeviceInformation
para verificar as propriedades de um dispositivo de maneira contínua.Verificar a identidade de um dispositivo e sua postura de segurança e fazer com que o servidor ACME realize uma avaliação de confiança antes de emitir um certificado. Dessa maneira, apenas os dispositivos que atendem aos padrões exigidos recebem um certificado.
Integrar as propriedades do dispositivo do atestado em um certificado ACME e realizar a avaliação de confiança nas partes dependentes.
Criação de chaves associadas ao hardware
Como parte da emissão de um certificado que usa o protocolo ACME, pode‑se exigir que um dispositivo forneça um atestado que também faça com que o par de chaves associado seja criado dentro do Secure Enclave para que ele se beneficie das proteções robustas do hardware. Isso faz com que a chave privada seja embalada com uma chave de classe e ajuda a impedir a exportação da chave privada.
Para criar uma chave associada ao hardware, a configuração ACME precisa usar o algoritmo ECSECPrimeRandom com um tamanho de chave de 256 ou 384 bits. Isso especifica um par de chaves nas curvas P‑256 ou P‑384 conforme definido no NIST SP 800‑186.
Chaves associadas ao hardware não sobrevivem a backups e restaurações, mesmo ao restaurar para o mesmo dispositivo. Qualquer configuração que contenha um payload ACME com uma chave associada ao hardware é removida quando restaurada. Se uma chave associada ao hardware for usada como identidade do cliente no MDM, o registro do dispositivo será cancelado. Nesse cenário, se o dispositivo tiver sido registrado pelo Registro Automático do Dispositivo, o dispositivo reobterá seu perfil de registro e se registrará novamente.