A expiração do certificado raiz IdenTrust levará à perda de confiança no Let's Encrypt em dispositivos mais antigos

Em 30 de setembro, às 17h01, horário de Moscou, o certificado raiz IdenTrust (DST Root CA X3), que foi usado para assinatura cruzada do certificado raiz da autoridade de certificação Let's Encrypt (ISRG Root X1), que é controlado pela comunidade e fornece certificados gratuitamente para todos, expira. A assinatura cruzada garantiu que os certificados Let's Encrypt fossem confiáveis ​​em uma ampla variedade de dispositivos, sistemas operacionais e navegadores, enquanto o próprio certificado raiz do Let's Encrypt foi integrado aos armazenamentos de certificados raiz.

Foi originalmente planejado que após a descontinuação do DST Root CA X3, o projeto Let's Encrypt passaria a gerar assinaturas usando apenas seu certificado raiz, mas tal mudança levaria a uma perda de compatibilidade com um grande número de sistemas mais antigos que não o faziam. adicione o certificado raiz Let's Encrypt aos seus repositórios. Em particular, aproximadamente 30% dos dispositivos Android em uso não possuem dados no certificado raiz Let's Encrypt, cujo suporte apareceu apenas a partir da plataforma Android 7.1.1, lançada no final de 2016.

A Let's Encrypt não planejou celebrar um novo acordo de assinatura cruzada, pois isso impõe responsabilidade adicional às partes do acordo, priva-as de independência e amarra as mãos no cumprimento de todos os procedimentos e regras de outra autoridade certificadora. Mas devido a possíveis problemas em um grande número de dispositivos Android, o plano foi revisado. Foi celebrado um novo acordo com a autoridade certificadora IdenTrust, no âmbito do qual foi criado um certificado intermediário Let's Encrypt com assinatura cruzada alternativo. A assinatura cruzada será válida por três anos e manterá o suporte para dispositivos Android a partir da versão 2.3.6.

No entanto, o novo certificado intermédio não abrange muitos outros sistemas legados. Por exemplo, quando o certificado DST Root CA X3 for obsoleto em 30 de setembro, os certificados Let's Encrypt não serão mais aceitos em firmware e sistemas operacionais não suportados que exigem a adição manual do certificado ISRG Root X1 ao armazenamento de certificados raiz para garantir a confiança nos certificados Let's Encrypt . Os problemas se manifestarão em:

  • OpenSSL até e incluindo a filial 1.0.2 (a manutenção da filial 1.0.2 foi descontinuada em dezembro de 2019);
  • NSS <3.26;
  • Java 8 <8u141, Java 7 <7u151;
  • Windows <XP SP3;
  • macOS <10.12.1;
  • iOS <10 (iPhone <5);
  • Android <2.3.6;
  • Mozilla Firefox <50;
  • Ubuntu <16.04;
  • Debian <8.

No caso do OpenSSL 1.0.2, o problema é causado por um bug que impede o tratamento correto de certificados assinados se um dos certificados raiz envolvidos na assinatura expirar, mesmo que outras cadeias de confiança válidas permaneçam. O problema surgiu pela primeira vez no ano passado, após a expiração do certificado AddTrust usado para assinatura cruzada nos certificados da autoridade de certificação Sectigo (Comodo). O ponto crucial do problema é que o OpenSSL analisou o certificado como uma cadeia linear, enquanto de acordo com a RFC 4158, o certificado pode representar um gráfico circular distribuído direcionado com várias âncoras de confiança que precisam ser consideradas.

Os usuários de distribuições mais antigas baseadas no OpenSSL 1.0.2 recebem três soluções alternativas para resolver o problema:

  • Removi manualmente o certificado raiz IdenTrust DST Root CA X3 e instalei o certificado raiz ISRG Root X1 independente (sem assinatura cruzada).
  • Ao executar os comandos openssl verify e s_client, você pode especificar a opção “--trusted_first”.
  • Use no servidor um certificado certificado por um certificado raiz separado SRG Root X1, que não possui assinatura cruzada. Este método levará à perda de compatibilidade com clientes Android mais antigos.

Adicionalmente, podemos notar que o projeto Let's Encrypt superou a marca de dois bilhões de certificados gerados. A marca de um bilhão foi alcançada em fevereiro do ano passado. 2.2-2.4 milhões de novos certificados são gerados diariamente. O número de certificados activos é de 192 milhões (um certificado é válido por três meses) e cobre cerca de 260 milhões de domínios (195 milhões de domínios foram cobertos há um ano, 150 milhões há dois anos, 60 milhões há três anos). De acordo com estatísticas do serviço Firefox Telemetry, a participação global de solicitações de páginas via HTTPS é de 82% (há um ano - 81%, há dois anos - 77%, há três anos - 69%, há quatro anos - 58%).

Fonte: opennet.ru

Adicionar um comentário