Como os navegadores lidam com SSL revogado /TLS Certificados?

Detalhes dos programas de navegador atuais para verificar o status de revogação de SSL /TLS certificados, incluindo um teste entre navegadores.

Conteúdo Relacionado

Quer continuar aprendendo?

Assine a newsletter de SSL.com, mantenha-se informado e seguro.

Detalhes dos programas de navegador atuais para verificar o status de revogação de SSL /TLS certificados, incluindo um teste entre navegadores.

Introdução

Verificando o status de revogação de SSL /TLS certificados apresentados por HTTPS websites é um problema contínuo na segurança da web. A menos que um servidor esteja configurado para usar Grampeamento OCSP, a verificação de revogação online por navegadores da web é lenta e compromete a privacidade. Como as consultas OCSP online falham com tanta frequência e são impossíveis em algumas situações (como em portais cativos), os navegadores geralmente implementam a verificação OCSP no modo de “falha suave”, tornando-a ineficaz para dissuadir um determinado invasor. (Para obter um histórico mais completo desse problema, leia o artigo SSL.com, Otimização de carregamento de página: grampeamento OCSP).

Por esses motivos, os navegadores da web implementaram uma variedade de soluções para reduzir ou eliminar a necessidade de verificação de revogação online. Os detalhes exatos variam entre os provedores, mas essas soluções geralmente envolvem a coleta de listas de certificados revogados de autoridades de certificação (CAs) e o envio aos navegadores.

Este artigo fornece resumos de alto nível das estratégias de verificação de validação empregadas pelos principais navegadores de desktop (Chrome, Firefox, Safári e borda) e compara as respostas desses navegadores a alguns exemplos certificados revogados hospedado por SSL.com.

Para exemplos de mensagens de erro do navegador resultantes de certificados revogados, consulte este guia. Você pode verificar o status de revogação de um certificado em certificado.revogação.com

Google Chrome

O Chrome conta com Conjuntos de CRL para verificação de revogação. Um CRLSet é simplesmente uma lista de certificados revogados que é enviada ao navegador como uma atualização de software. De acordo com Site Projetos de cromo, os processos pelos quais o Google gera CRLSets são proprietários, mas também que

CRLSets… são principalmente um meio pelo qual o Chrome pode bloquear certificados rapidamente em situações de emergência. Como função secundária, eles também podem conter um certo número de revogações não emergenciais. Essas últimas revogações são obtidas rastreando CRLs publicadas por CAs.

A declaração acima indica que pelo menos alguns certificados de entidade final revogados de baixa prioridade podem acabar em CRLSets, mas são uma consideração secundária.

Você pode verificar a versão do CRLSet atualmente instalada em uma instância do Chrome navegando para chrome://components/:

Versão CRLSet

Nota: O navegador Opera baseado no Chromium também usa CRLsets para verificação de revogação. Você pode verificar a versão instalada navegando para opera://components. Como apontado abaixo, a versão atual do navegador Edge da Microsoft também é baseada no Chromium e usa CRLSets.

No momento, não é possível configurar o Chrome diretamente para executar consultas de validade de certificado online. No entanto, dependendo do sistema operacional, essas verificações podem ser executadas pela biblioteca de certificados subjacente usada pelo sistema operacional. (Como pode ser visto abaixo nos resultados de testes limitados de navegador, descobrimos que as instalações do Chrome com o mesmo número de versão e CRLSet na verdade responderam a dois certificados revogados de forma diferente no Windows e no macOS.)


Mozilla Firefox

Como o Google, a Mozilla mantém uma lista centralizada de certificados revogados, chamada OneCRL. OneCRL é uma lista de certificados intermediários que foram revogados por CAs no programa raiz da Mozilla e é enviada aos usuários do Firefox nas atualizações de aplicativos. Em relação aos certificados de entidade final, o plano de revogação observa que “No futuro, uma vez que a implementação inicial esteja funcionando, podemos considerar a cobertura de certificados EE com OneCRL, possivelmente focando inicialmente em classes específicas (por exemplo, certificados EV).”

O OneCRL pode ser baixado como um objeto JSON aquiou visualizado como uma página da web em crt.sh.

Ao contrário do Chrome, as configurações padrão do Firefox também consultam respondentes OCSP para confirmar a validade de SSL /TLS certificados. (Você pode alterar essa configuração nas preferências de segurança do Firefox.)

Consultar servidores de resposta OCSP

No entanto, como as falhas de consulta OCSP são muito comuns, o Firefox (como outros navegadores) implementa uma política de “falha suave”. Se desejar, você pode exigir verificação OCSP estrita, navegando para about:config e alternando security.OCSP.require para true.


apple Safari

A abordagem atual da Apple para revogação é abordada por Bailey Basile em sua palestra de 2017 na WWDC, Seus aplicativos e padrões de segurança de rede em evolução. A Apple coleta informações de revogação de certificados das CAs que são confiáveis ​​em seus dispositivos e as agrega em um único pacote que é recuperado periodicamente pelo software cliente da Apple (parece um plano familiar ainda?).

Quando um aplicativo cliente encontra um certificado mostrado na lista da Apple, ele executa uma verificação OCSP para confirmar se o certificado foi, de fato, revogado (a menos que o servidor forneça uma resposta OCSP grampeada). Observe que as verificações OCSP online são feitas apenas no caso de certificados que a Apple já acredita que foram revogados; certificados que não estão listados no pacote recuperado da Apple não são verificados.

Um link para a lista de revogação da Apple e código para analisá-la está disponível aqui.


Microsoft Edge

O Windows mantém uma lista de certificados revogados ou incluídos na lista negra em um arquivo chamado disallowedcert.stl. Este entrada do blog fornece informações sobre como despejar o conteúdo do arquivo com o PowerShell. crt.sh também fornece informações sobre se um certificado específico está listado em disallowedcert.stl.

Como o Firefox, o Windows está configurado para verificar a revogação de certificado por padrão. Esta configuração pode ser visualizada e alterada no Propriedades de Internet Painel de controle:

No entanto, a versão atual (baseada em Chromium) do Edge, como o Chrome, depende de CRLSets para verificação de revogação e aparece em nossos testes abaixo para ser independente das configurações de verificação de revogação nas Propriedades da Internet. (Nota: Em uma versão anterior desses testes, feita em setembro de 2019, Internet Explorer e uma versão pré-Chromium do Edge fez siga essas configurações em Propriedades da Internet.)


Variação entre navegadores

Como SSL.com mantém um grupo de servidores da web que hospeda certificados revogados de amostra, decidimos testá-los em uma variedade de navegadores de desktop. Este pequeno teste não muito científico foi realizado em 23 de fevereiro de 2020. Os navegadores usados ​​foram:

  • Chrome 88.0.4324.182, CRLSet versão 6444 (macOS 10.15.7)
  • Chrome 88.0.4324.182, CRLSet versão 6444 (Windows 10 Pro)
  • Edge 88.0.705.74, CRLSet versão 6444 (Windows 10 Enterprise)
  • Firefox 86.0 - consultas OCSP em (macOS 10.15.7)
  • Firefox 86.0 - consultas OCSP desativadas (macOS 10.15.7)
  • Safári 14.0.3 (macOS 10.15.1)

Além disso, testamos o Chrome e o Edge no Windows com a verificação de revogação online desabilitada no painel de controle de Propriedades da Internet e (para Chrome, Firefox e Edge) verificamos se o certificado relevante foi listado como revogado com um programa de navegador específico em crt.sh.

  Cromo (macOS) Cromo (Windows) Borda (Windows) Firefox (Mac) (OCSP ativado) Firefox (Mac) (OCSP desativado) Safári (Mac)
revogado-rsa-dv.ssl.com Revogado Não revogado Não revogado Revogado Não revogado Revogado
revogado-rsa-ev.ssl.com Revogado Revogado Revogado Revogado Não revogado Revogado
revogado-ecc-dv.ssl.com Revogado Não revogado Não revogado Revogado Não revogado Revogado
revogado-ecc-ev.ssl.com Revogado Revogado Revogado Revogado Não revogado Revogado

Discussão de Resultados

Chrome: No Windows, o Chrome mostrou incorretamente dois dos certificados revogados (revogado-rsa-dv.ssl.com e revogado-ecc-dv.ssl.com) como válidos e os outros como revogados. Desativar a verificação de validação no SO não alterou esta resposta. Curiosamente, nenhum dos quatro certificados foi mostrado como revogado no CRLSet em crt.sh no momento do teste, sugerindo mais perguntas sobre os processos de verificação de revogação do Chrome. No macOS, o Chrome mostrou corretamente todos os quatro certificados como revogados, ilustrando diferenças baseadas na plataforma no comportamento do Chrome.

Borda: A versão atual (baseada em Chromium) do Edge espelhado do Chrome em exibição revogado-rsa-dv.ssl.com e revogado-ecc-dv.ssl.com como válido. Como o Chrome, o Edge mostrou os mesmos resultados, independentemente de a verificação de validação estar habilitada ou não no sistema operacional. Nenhum dos quatro certificados foi mostrado conforme listado em disallowedcert.stl on crt.sh.

Raposa de fogo: Como se poderia esperar do foco declarado do OneCRL em certificados intermediários, o Firefox apenas reconheceu todos os quatro certificados como revogados com consultas OCSP ativadas nas preferências do navegador, mas aceitou todos os quatro como válidos se as consultas OCSP fossem desativadas. (Nota: Todos os quatro desses certificados de entidade final revogados foram emitidos a partir de intermediários válidos e não revogados.) Como no Chrome, crt.sh mostra nenhum dos certificados revogados no OneCRL.

Safári: O Safari no macOS reconheceu corretamente todos os quatro certificados como revogados. crt.sh não exibe informações de revogação da Apple e não verificamos se esses certificados específicos estão listados como revogados pela Apple.

Conclusão

Os resultados parecem indicar que a revogação ainda é um problema problemático para navegadores da web de desktop (dispositivos móveis representam um mundo totalmente diferente, mas isso é um assunto para outro artigo). A ativação da verificação OCSP online (lenta, insegura) foi necessária para reconhecer certificados como revogados no Firefox, enquanto o Chrome e o Edge falharam em reconhecer dois certificados revogados no Windows, independentemente de a verificação de revogação estar habilitada no SO.

Para os proprietários de sites, parece sensato supor que os vários programas do navegador estejam focados em incidentes de alta prioridade / emergência, como certificados revogados de CA raiz e intermediária, e que revogações de certificados de entidade final de variedade de jardim provavelmente passem despercebidas por um período indeterminado. Por esse motivo, a implementação Grampeamento OCSP e grampo obrigatório parece ser a maneira mais privada, segura e eficaz de garantir que os usuários finais recebam informações precisas sobre a revogação de certificados de entidade final.

 

SSL.com oferece uma grande variedade de SSL /TLS certificados de servidor para sites HTTPS.

COMPARAR SSL /TLS CERTIFICADOS

Adoraríamos receber seu feedback

Responda à nossa pesquisa e deixe-nos saber sua opinião sobre sua compra recente.