Qualidade da chave do certificado de dispositivo - AWS IoT Device Defender

Qualidade da chave do certificado de dispositivo

A AWS IoT frequentemente confia na autenticação mútua TLS usando certificados X.509 para autenticação no agente de mensagens da AWS IoT. Esses certificados e os respectivos certificados de autoridade de certificação devem ser registrados na conta do AWS IoT antes de serem utilizados. O AWS IoT executa verificações básicas de sanidade nesses certificados quando eles são registrados. Essas verificações incluem:

  • Devem estar em um formato válido.

  • Devem ser assinados por uma autoridade de certificação registrada.

  • Ainda devem estar dentro do prazo de validade (ou seja, não podem ter expirado).

  • Os tamanhos de chave criptográfica devem atender ao tamanho mínimo necessário (para chaves RSA, devem ter 2048 bits ou mais).

Essa verificação de auditoria fornece os seguintes testes adicionais da qualidade da chave criptográfica:

  • CVE-2008-0166 - verifique se a chave foi gerada usando OpenSSL 0.9.8c-1 até versões anteriores a 0.9.8g-9 em um sistema operacional baseado em Debian. Essas versões do OpenSSL usam um gerador de números aleatórios que gera números previsíveis, facilitando para invasores remotos realizar ataques de adivinhação de força bruta contra chaves criptográficas.

  • CVE-2017-15361 – verifique se a chave foi gerada pela biblioteca Infineon RSA 1.02.013 no firmware do Infineon Trusted Platform Module (TPM), como versões anteriores a 0000000000000422 - 4.34, anteriores a 000000000000062b - 6.43 e anteriores a 0000000000008521 - 133.33. Essa biblioteca manipula incorretamente a geração de chaves RSA, tornando mais fácil para os invasores derrotarem alguns mecanismos de proteção criptográfica por meio de ataques direcionados. Exemplos de tecnologias afetadas incluem BitLocker com TPM 1.2, geração de chaves PGP YubiKey 4 (anterior a 4.3.5) e o recurso de criptografia de dados de usuário em cache no Chrome OS.

O AWS IoT Device Defender relata certificados como não compatíveis quando eles falham nesses testes.

Essa verificação aparece como DEVICE_CERTIFICATE_KEY_QUALITY_CHECK na CLI e na API.

Gravidade: Crítica

Detalhes

Essa verificação se aplica a certificados de dispositivo que estão ACTIVE ou PENDING_TRANSFER.

Os códigos de motivo a seguir são retornados quando essa verificação encontra um certificado não compatível:

  • CERTIFICATE_KEY_VULNERABILITY_CVE-2017-15361

  • CERTIFICATE_KEY_VULNERABILITY_CVE-2008-0166

Por que isso importa?

Quando um dispositivo usa um certificado vulnerável, os invasores podem comprometer mais facilmente esse dispositivo.

Como corrigir

Atualize seus certificados de dispositivo para substituir aqueles com vulnerabilidades conhecidas.

Se você estiver usando o mesmo certificado em vários dispositivos, poderá:

  1. Provisionar novos certificados exclusivos e anexá-los a cada dispositivo.

  2. Verificar se os novos certificados são válidos e se os dispositivos podem usá-los para se conectar.

  3. Use UpdateCertificate para marcar o certificado antigo como REVOKED no AWS IoT. Você também pode usar ações de mitigação para:

    • Aplicar a ação de mitigação UPDATE_DEVICE_CERTIFICATE em suas descobertas de auditoria para fazer essa mudança.

    • Aplicar a ação de mitigação ADD_THINGS_TO_THING_GROUP para adicionar o dispositivo a um grupo, onde é possível executar uma ação sobre ele.

    • Aplicar a ação de mitigação PUBLISH_FINDINGS_TO_SNS se você desejar implementar uma resposta personalizada em resposta à mensagem do Amazon SNS.

    Para ter mais informações, consulte Ações de mitigação.

  4. Desanexe o antigo certificado de todos os dispositivos.