O Android 14 torna os certificados raiz atualizáveis ​​via Google Play para proteger os usuários de CAs maliciosas

O armazenamento raiz do Android costumava exigir uma atualização OTA para adicionar ou remover certificados raiz. Esse não será o caso no Android 14.

O Android tem um pequeno problema que só levanta sua cabeça feia uma vez a cada lua azul, mas quando o faz, causa algum pânico. Felizmente, o Google tem uma solução no Android 14 que elimina esse problema pela raiz. O problema é que o armazenamento de certificados raiz do sistema Android (armazenamento raiz) só pode ser atualizado por meio de uma atualização over-the-air (OTA) durante a maior parte da existência do Android. Embora os OEMs e as operadoras tenham melhorado em enviar atualizações com mais rapidez e frequência, as coisas ainda podem ser melhores. É por isso que o Google criou uma solução para tornar a loja raiz do Android atualizável via Google Play, começando em Androide 14.

Quando você fica on-line todos os dias, confia que o software do seu dispositivo está configurado corretamente para apontar para os servidores certos que hospedam os sites que deseja visitar. Estabelecer a conexão certa é importante para não acabar em um servidor de alguém mal intencionado, mas com segurança estabelecer essa conexão também é importante para que todos os dados que você enviar para esse servidor sejam criptografados em trânsito (TLS) e, com sorte, não possam ser facilmente bisbilhotou. Seu sistema operacional, navegador da Web e aplicativos só estabelecerão conexões seguras com servidores na Internet (HTTPS) se confiarem no certificado de segurança (TLS) do servidor.

Como existem tantos sites na Internet, os sistemas operacionais, navegadores e aplicativos não mantêm uma lista de certificados de segurança de todos os sites em que confiam. Em vez disso, eles procuram ver quem assinou o certificado de segurança emitido para o site: foi autoassinado ou assinado por outra entidade (uma autoridade de certificação [CA]) em quem confiam? Essa cadeia de validações pode ter várias camadas de profundidade até chegar a uma CA raiz que emitiu a segurança certificado usado para assinar o certificado que acabou assinando o certificado emitido para o site que você está visitando.

O número de CAs raiz é muito, muito menor do que o número de sites que possuem certificados de segurança emitidos por eles, diretamente ou por meio de uma ou mais CAs intermediárias, tornando possível para sistemas operacionais e navegadores da web manter uma lista de certificados de CA raiz que eles confiar. O Android, por exemplo, tem uma lista de certificados raiz confiáveis ​​que são enviados na partição do sistema somente leitura do sistema operacional em /system/etc/security/cacerts. Se os aplicativos não limitar quais certificados confiar, uma prática chamada fixação de certificado, eles usam como padrão o armazenamento raiz do sistema operacional ao decidir se confiam em um certificado de segurança. Como a partição do “sistema” é somente leitura, o armazenamento raiz do Android é imutável fora de uma atualização do sistema operacional, o que pode representar um problema quando o Google deseja remover ou adicionar um novo certificado raiz.

Às vezes, um certificado raiz é prestes a expirar, levando potencialmente à quebra de sites e serviços e aos navegadores da Web exibindo avisos sobre conexões inseguras. Em alguns casos, a CA que emitiu um certificado raiz é suspeito de ser malicioso ou comprometido. Ou um novo certificado raiz surge que precisa ser adicionado ao armazenamento raiz de todos os principais sistemas operacionais antes que a CA possa realmente começar a assinar certificados. O armazenamento raiz do Android não precisa ser atualizado com tanta frequência, mas acontece o suficiente para que o ritmo relativamente lento de atualizações do Android se torne um problema.

A partir do Android 14, no entanto, o armazenamento raiz do Android torne-se atualizável através do Google Play. O Android 14 agora tem dois diretórios contendo o armazenamento raiz do sistema operacional: o já mencionado, imutável fora do OTA /system/etc/security/cacerts e o novo /apex/com.[google].android.conscrypt/security/cacerts atualizável diretório. O último está contido no módulo Conscrypt, um módulo Project Mainline introduzido no Android 10 que fornece a implementação TLS do Android. Como o módulo Conscrypt pode ser atualizado por meio das atualizações do sistema do Google Play, isso significa que o armazenamento raiz do Android também será.

Além de tornar o armazenamento raiz do Android atualizável, o Android 14 também adiciona e remove alguns certificados raiz como parte da atualização anual do Google para o armazenamento raiz do sistema.

Os certificados raiz que foram adicionados ao Android 14 incluem:

  1. AC RAIZ FNMT-RCM SERVIDORES SEGUROS
  2. CA raiz do servidor seguro ANF
  3. Autoridad de Certificacion Firmaprofesional CIF A62634068
  4. Com certeza Raiz E1
  5. Certamente Raiz R1
  6. Certum EC-384 CA
  7. CA Raiz Confiável Certum
  8. D-TRUST BR Raiz CA 1 2020
  9. D-TRUST EV Root CA 1 2020
  10. DigiCert TLS ECC P384 Raiz G5
  11. DigiCert TLS RSA4096 Raiz G5
  12. GLOBALTRUST 2020
  13. Raiz GlobalSign E46
  14. GlobalSign Raiz R46
  15. HARICA TLS ECC Raiz CA 2021
  16. HARICA TLS RSA Raiz CA 2021
  17. HiPKI Raiz CA - G1
  18. Raiz ISRG X2
  19. Comunicação de Segurança ECC RootCA1
  20. Comunicação de Segurança RootCA3
  21. Telia Root CA v2
  22. Tugra Global Root CA ECC v3
  23. Tugra Global Root CA RSA v3
  24. TunTrust Root CA
  25. vTrus ECC Root CA
  26. vTrus Root CA

Os certificados raiz que foram removidos no Android 14 incluem:

  1. Câmaras de Comércio Raiz - 2008
  2. Raiz Global da Cybertrust
  3. DST Raiz CA X3
  4. EC-ACC
  5. Autoridade de Certificação Primária GeoTrust - G2
  6. Global Chambersign Root 2008
  7. GlobalSign
  8. Instituições Acadêmicas e de Pesquisa Helênicas RootCA 2011
  9. Autoridade de certificação de soluções de rede
  10. Autoridade de Certificação Raiz QuoVadis
  11. Sonera Class2 CA
  12. Staat der Nederlanden EV Root CA
  13. Staat der Nederlanden Root CA - G3
  14. TrustCor ECA-1
  15. TrustCor RootCert CA-1
  16. TrustCor RootCert CA-2
  17. Trustis FPS Root CA
  18. Autoridade de Certificação Raiz Universal VeriSign

Para uma explicação mais aprofundada dos certificados TLS, você deve ler meu colega Artigo de Adam Conway aqui. Para uma análise mais completa de como o armazenamento raiz atualizável do Android 14 funciona e por que ele existe, confira o artigo que escrevi anteriormente sobre o assunto.