Por que muitos administradores usam a política 'Desativar atualização automática de certificados raiz'?

40

Minha empresa distribui um Windows Installer para um produto baseado em servidor. Conforme as melhores práticas, é assinado usando um certificado. De acordo com os conselhos da Microsoft , usamos um certificado de assinatura de código GlobalSign , que a Microsoft afirma ser reconhecido por padrão em todas as versões do Windows Server.

Agora, tudo isso funciona bem, a menos que um servidor tenha sido configurado com a Diretiva de Grupo: Configuração do Computador / Modelos Administrativos / Sistema / Gerenciamento de Comunicação da Internet / Configurações de Comunicação da Internet / Desativar a Atualização Automática de Certificado Raiz como Habilitada .

Descobrimos que um dos nossos primeiros testadores beta estava executando com esta configuração, resultando no seguinte erro durante a instalação

Um arquivo necessário não pode ser instalado porque o arquivo do gabinete [caminho longo para o arquivo cab] possui uma assinatura digital inválida. Isso pode indicar que o arquivo do gabinete está corrompido.

Escrevemos isso como uma singularidade, afinal ninguém foi capaz de explicar por que o sistema foi configurado dessa maneira. No entanto, agora que o software está disponível para uso geral, parece que um dígito duplo (porcentagem) de nossos clientes está configurado com essa configuração e ninguém sabe o porquê. Muitos relutam em alterar a configuração.

Escrevemos um artigo da KB para nossos clientes, mas realmente não queremos que o problema ocorra, pois nos preocupamos com a experiência do cliente.

Algumas coisas que notamos ao investigar isso:

  1. Uma instalação nova do Windows Server não mostra o certificado Globalsign na lista de autoridades raiz confiáveis.
  2. Com o Windows Server não conectado à Internet, a instalação do software funciona bem. No final da instalação, o certificado Globalsign está presente (não importado por nós). Em segundo plano, o Windows parece instalá-lo de forma transparente no primeiro uso.

Então, aqui está minha pergunta novamente. Por que é tão comum desativar a atualização de certificados raiz? Quais são os possíveis efeitos colaterais de ativar as atualizações novamente? Quero garantir que possamos fornecer a nossos clientes as orientações adequadas.

Jeroen Ritmeijer
fonte
14
Novos certificados raiz que aparecem em todos os sistemas sem aviso ou documentação são uma preocupação para algumas pessoas de segurança. Eles simplesmente não confiam na Microsoft para verificar completamente novos certificados raiz sem ao menos fazer alguns exames. Não ajuda quando a Microsoft faz coisas como enviar 18 novos certificados raiz sem aviso prévio.
Brian
Você não pode verificar se o certificado está disponível no sistema e se oferece para fazer o download do certificado manualmente do site, se a atualização estiver desativada?
Falco
@falco Nop, o certificado deve estar em vigor antes que possamos executar uma lógica personalizada para detectar coisas como essa. Esse é o objetivo de assinar instaladores digitalmente. Além disso, se os administradores desativaram a atualização de certificados raiz, eles não ficarão felizes em permitir que outros fornecedores façam isso.
Jeroen Ritmeijer
Você poderia fornecer um site que verifique o certificado, que os usuários podem visitar antes de instalar o produto? Como "visite ... para verificar se seu sistema é compatível" e no site exiba as etapas para instalar o certificado, se você detectar que ele não está presente?
Falco
11
@falco Que temos (até certo ponto), consulte o link para o artigo da base de conhecimento na minha pergunta. Além disso ... as pessoas não leem instruções.
Jeroen Ritmeijer

Respostas:

33

No final de 2012 / início de 2013, houve um problema com as atualizações automáticas de certificado raiz. A correção provisória foi desativar as atualizações automáticas, portanto esse problema é parcialmente histórico.

A outra causa é o programa Trusted Root Certificate e Root Certificate Distribution, que (parafraseando Microsoft ) ...

Os certificados raiz são atualizados no Windows automaticamente. Quando um [sistema] encontra um novo certificado raiz, o software de verificação da cadeia de certificados do Windows verifica o local apropriado do Microsoft Update para o certificado raiz.

Até agora, tudo bem, mas então ...

Se encontrar, ele faz o download para o sistema. Para o usuário, a experiência é perfeita. O usuário não vê nenhuma caixa de diálogo ou aviso de segurança. O download acontece automaticamente, nos bastidores.

Quando isso acontece, pode parecer que os certificados estão sendo adicionados automaticamente ao armazenamento raiz. Tudo isso deixa alguns administradores de sistemas nervosos, pois você não pode remover uma CA 'ruim' das ferramentas de gerenciamento de certificados, porque elas não existem para remover ...

Na verdade, existem maneiras de fazer com que o Windows baixe a lista completa, para que possam editá-la como desejarem, mas é comum bloquear as atualizações. Um grande número de administradores de sistemas não entende criptografia ou segurança (geralmente), portanto segue a sabedoria recebida (correta ou não) sem questionar e não gosta de fazer alterações nas coisas que envolvem segurança que eles não entendem totalmente como acreditar que seja. alguma arte negra.

James Snell
fonte
13
A great number of sysadmins [...] don't like making changes to things involving security that they don't fully understand believing it to be some black art.Sim. Triste mas verdadeiro.
HopelessN00b
8
@ HopelessN00b Então, você prefere que eles façam mudanças de configuração livremente envolvendo segurança que não compreendem completamente? Essa parece uma proposta muito mais assustadora para mim.
Joshua Shearer
11
@JoshuaShearer Prefiro que eles entendam ou parem de se chamar administradores de sistemas.
Kevin Krumwiede
2
@ JoshuaShearer Como Kevin disse, se eles não entendem de segurança, eles não devem ser administradores de sistemas, e acho uma proposta assustadora ter um administrador de qualquer coisa que ache que a segurança é uma magia negra ou vodu.
HopelessN00b
2
@ JoshuaShearer - como eles não entendem, é discutível que eles não saibam se o que eles já têm está correto ou não ... Em muitas empresas de pequeno e médio porte, o 'administrador' é "good with computers"porque elas têm as últimas iThings brilhantes ao invés de um profissional genuíno.
James Snell
11

O componente Atualização automática de certificados raiz é projetado para verificar automaticamente a lista de autoridades confiáveis ​​no site do Microsoft Windows Update. Especificamente, há uma lista de autoridades de certificação raiz confiáveis ​​armazenadas no computador local. Quando um aplicativo é apresentado com um certificado emitido por uma CA, ele verifica a cópia local da lista de CA raiz confiável. Se o certificado não estiver na lista, o componente Atualização Automática de Certificados Raiz entrará em contato com o site Microsoft Windows Update para verificar se uma atualização está disponível. Se a CA tiver sido adicionada à lista de CAs confiáveis ​​da Microsoft, seu certificado será adicionado automaticamente ao armazenamento de certificados confiáveis ​​no computador.

Por que é tão comum desativar a atualização de certificados raiz?

A resposta curta é provavelmente que se trata de controle. Se você deseja controlar em quais CAs raiz são confiáveis ​​(em vez de usar esse recurso e permitir que a Microsoft faça isso por você), é mais fácil e seguro apresentar uma lista de CAs raiz em que você deseja confiar, distribua-as nos computadores do domínio e, em seguida, bloqueie essa lista. Como as alterações na lista de CAs raiz em que uma organização deseja confiar seriam relativamente raras, faz certo sentido que um administrador deseje revisar e aprovar quaisquer alterações em vez de permitir uma atualização automática.

Para ser completamente franco, se ninguém souber por que essa configuração está ativada em um determinado ambiente, isso significa que ela não deve ser definida.

Quais são os possíveis efeitos colaterais de ativar as atualizações novamente?

Os computadores de domínio poderiam verificar a lista de CAs confiáveis ​​no site do Microsoft Windows Update e potencialmente adicionar novos certificados ao armazenamento de certificados confiáveis.

Se isso for inaceitável para seus clientes, os certificados poderão ser distribuídos pelo GPO e eles precisarão incluir seu certificado em qualquer método de distribuição que eles usem atualmente para certificados confiáveis.

Ou você pode sempre sugerir desabilitar temporariamente esta política em particular, para permitir a instalação do seu produto.

HopelessN00b
fonte
3

Eu não concordaria que é comum desativar isso. Uma maneira melhor de expressar isso seria perguntar por que alguém o desativaria. E uma solução melhor para o seu problema seria o instalador verificar os certificados CA raiz / intermediários e instalá-los, se não estiverem presentes.

O programa Trusted Root CA é essencial. Uma tonelada de aplicativos simplesmente não funcionaria como o esperado se fosse desativada amplamente. Claro, pode haver algumas organizações que desabilitam esse recurso, mas isso depende das organizações, com base em seus requisitos. É uma suposição falha de que qualquer aplicativo que exija uma dependência externa (certificado raiz) sempre funcione sem testá-lo. Tanto os desenvolvedores de aplicativos quanto as organizações que desativam esse recurso são responsáveis ​​por garantir a presença da dependência externa (certificado raiz). Isso significa que, se uma organização desabilita isso, eles sabem que esperam esse problema (ou aprenderão em breve).

Também é importante observar que um objetivo útil do mecanismo do programa CA de raiz confiável (instalação dinâmica de certificados de CA raiz) é que não é prático instalar todos ou mesmo a maioria dos certificados de CA raiz conhecidos / confiáveis. Alguns componentes no Windows quebram se houver muitos certificados instalados; portanto, a única prática possível é instalar apenas os certificados necessários, quando necessários.

http://blogs.technet.com/b/windowsserver/archive/2013/01/12/fix-available-for-root-certificate-update-issue-on-windows-server.aspx

"O problema é o seguinte: o pacote de segurança SChannel usado para enviar certificados confiáveis ​​aos clientes tem um limite de 16 KB. Portanto, ter muitos certificados na loja pode impedir que os servidores TLS enviem as informações necessárias de certificado; eles começam a enviar, mas precisam parar quando eles atingem 16 KB. Se os clientes não tiverem as informações corretas de certificado, eles não poderão usar serviços que exigem TLS para autenticação.Como o pacote de atualização de certificado raiz disponível no KB 931125 adiciona manualmente um grande número de certificados ao armazenamento, aplicando-o aos resultados dos servidores na loja que excede o limite de 16 KB e o potencial de falha na autenticação TLS ".

Greg Askew
fonte
2
Obrigado pela sua resposta, mas com base na nossa experiência no mundo real, é comum e não acho que qualquer administrador de servidor ficaria feliz em instalar um certificado raiz se eles tivessem decidido nem confiar na Microsoft com isso. Também .... nosso instalador não pode funcionar sem o certificado de modo frango ... ovo ...
Jeroen Ritmeijer
Entendido, mas você também aprendeu que possui o teste da dependência externa, documentando isso para instalação e comunicando o requisito ao cliente. Essa é a experiência do mundo real. Duvido que sua base de clientes se qualifique como dados empíricos para apoiar a conclusão de que é "comum" que esse recurso esteja desativado.
precisa
@ Muhimbi: Como solução prática, você pode fornecer instruções para os administradores instalarem manualmente o certificado necessário, se eles não quiserem permitir atualizações automáticas de certificado raiz.
Ilmari Karonen
@IlmariKaronen, nós já fazemos. Por alguma razão, nem sempre funciona, mesmo quando eles são importados para a loja correta. Talvez esteja relacionado ao fato de muitos servidores não estarem conectados à Internet e, portanto, não poderem verificar a validade do certificado.
Jeroen Ritmeijer
3

Meu motivo para desativar o certif.service é o seguinte:

Eu tenho muitos sistemas sem conexão com a internet. Também na maioria dos casos, eles não possuem display / kb / mouse devido ao fato de serem máquinas virtuais em um grande DatastoreServer. Portanto, em todos os casos, quando eles precisam de manutenção / modificação, eu uso o Windows RDP para acessá-los. Se você se conectar a uma máquina via RDP, o Windows primeiro verificará as atualizações de certificado online. Se o seu servidor / cliente não tiver Internet, ele ficará suspenso por 10 a 20 segundos antes de continuar a conexão.

Eu faço muitas conexões RDP todos os dias. Economizo horas em não olhar para a mensagem: "protegendo a conexão remota" :) +1 para desativar o certif.service!

Tommie84
fonte
Embora eu entenda, esse é um TERRÍVEL motivo :-) Existem maneiras melhores de fazer isso. Encontrei um problema semelhante (com o SharePoint verificando certificados e sendo lento como resultado) anos atrás. Você pode encontrar várias soluções e soluções alternativas em blog.muhimbi.com/2009/04/new-approach-to-solve-sharepoints.html
Jeroen Ritmeijer
0

Eu sei que esse é um tópico mais antigo; no entanto, gostaria de enviar uma solução alternativa. Use uma autoridade de certificação (ROOT CA) diferente da que você está usando. Em outras palavras, alterne seu certificado de assinatura para um que possua uma CA raiz aprovada e muito mais antiga.

O DIGICert oferece isso ao solicitar um certificado. Embora essa possa não ser a sua CA raiz padrão na sua conta DIGICert, é uma opção disponível ao enviar o CSR para eles. BTW, eu não trabalho para o DIGICert, nem tenho ganho ao recomendá-los. Eu simplesmente sinto essa dor e gastei muitas horas economizando US $ 1000 em um certificado barato, quando eu poderia ter comprado um certificado mais caro e gastado muito. menos tempo lidando com os problemas de suporte. Isto é simplesmente um exemplo. Existem outros fornecedores de certificados que oferecem a mesma coisa.

99% de compatibilidade Os certificados raiz DigiCert estão entre os certificados de autoridade mais amplamente confiáveis ​​do mundo. Como tal, eles são reconhecidos automaticamente por todos os navegadores da Web comuns, dispositivos móveis e clientes de email.

Advertência - se você selecionar a CA raiz correta ao fazer o CSR.

Edwin
fonte