De onde devem ser obtidos os IDs dos emissores da CAA e como devem ser validados?

6

O tipo de registro DNS Autorização da autoridade de certificação (CAA) inclui um parâmetro issue (também issuewild ) que designa um identificador para uma autoridade de certificação com permissão para emitir certificados para seu domínio. Tudo bem, mas é um pouco vago.

Ao definir o valor em seus próprios registros CAA, como você deve descobrir qual deve ser o valor exato para sua (s) CA (s)? No caso do letsencrypt, eles fornecem um documento aqui que menciona que o identificador do problema é letsencrypt.org e que também está documentado em sua Declaração de Práticas de Certificação seção 4.2.1. Se eu inspecionar o certificado, posso ver vários campos nele, no entanto, nenhum corresponde exatamente a essa string, embora haja alguns que contenham . Isso não parece ser uma maneira rigorosa ou confiável de garantir que a CA corresponda ao que está no registro da CAA. Por exemplo, o que impede que ela seja correspondida por letsencrypt.org.evilcorp.com ?

Isso tudo é viável do ponto de vista humano, mas não é muito legível por máquina e é exclusivo dessa autoridade de certificação.

Também tenho certs da Comodo, e encontrei várias fontes não autoritativas dizendo que o ID do problema da CAA é comodoca.com (e outras dizendo que é comodo.com ), mas não encontrei um documento oficial como letsencrypt tem para isso. A string comodoca.com aparece em alguns campos do meu certificado, mas não em um contexto que eu esperaria que fosse encontrado de forma confiável - por exemplo, o nome do emissor é COMODO ECC Domain Validation Secure Server CA (COMODO CA Limited from GB) , a CRL é http://crl.comodoca.com/COMODOECCDomainValidationSecureServerCA.crl e o URI do OCSP é http://ocsp.comodoca.com .

O SSLMate tem um gerador de registros CAA e inclui uma lista de CAs e seus IDs de emissor - mas onde essas informações foram obtidas?

Agora, considere o caso de validação - dado um certificado e um ou mais IDs de emissor da CAA, quais elementos no certificado devemos corresponder exatamente ao emissor da CAA? Ou essas informações são obtidas de algum outro serviço como um log de CT?

Portanto, em resumo, de onde devem ser obtidos os IDs dos emissores da CAA e como eles devem ser validados de maneira confiável?

    
por Synchro 01.12.2017 / 12:18

1 resposta

7

O RFC 6844 relevante não exige nenhum padrão para o emissor, na verdade o contrário, concede liberdade quase completa:

The semantics of issuer-parameters are determined by the issuer alone.

Mas, para dar um passo atrás: os registros da CAA não eram destinados, até onde eu sei, a serem usados pelos usuários finais para validar se o certificado TLS que eles recebem é emitido pelo emissor do certificado correto.

Pretende-se que seja utilizado apenas por um emissor de certificado (respeitável) para validar que está autorizado a emitir um (novo) certificado para esse host / domínio.

É somente o emissor do certificado que precisa verificar se o que eles esperam / exigem está presente no registro da CAA, se existir um registro da CAA.

O emissor do certificado, ou seja, sua autoridade de certificação, precisará comunicar quais domínios eles reconhecem nos registros de problemas da CAA. E também quais, se houver, outros parâmetros de que eles precisam.

Por exemplo: Comodo, que usa comodo.com para sua marca on-line, é totalmente livre para reconhecer o domínio completamente diferente comodoca.com nos registros da CAA. Na verdade, os CAs também não estão restritos a reconhecer apenas um único domínio - o Comodo, por exemplo, reconhece quatro diferentes : comodo.com , comodoca.com , usertrust.com e trust-provider.com

Observação: os registros da CAA são usados apenas ao emitir um certificado. A engenharia reversa do que o registro CAA deve ter de certificados válidos que já foram emitidos não tem nenhuma finalidade imediata.

Where should CAA issuer IDs be obtained from?

Até onde sei, não há nada que você possa automatizar facilmente com relação a isso, mas por uma abordagem manual: O fórum da CA / Browser requer um local uniforme para essas informações para ser publicado:

"Em vigor a partir de 8 de setembro de 2017, seção 4.2 de uma Política de Certificação da CA e / ou prática de certificação A declaração DEVERÁ declarará a política ou a prática da CA em processamento de registros da CAA para nomes de domínio totalmente qualificados; essa política deve ser consistente com estes Requisitos deve especificar claramente o conjunto de Nomes de domínio do emissor que a CA reconhece no CAA " issue " ou " issuewild " registra como se fosse permitido. "

    
por 01.12.2017 / 13:37