Certificado de usuário vs certificado de computador

1

Normalmente, ao implantar uma solução VPN SSL com uma verificação cert, eu implantaria uma CA do MS interna e configuraria um GPO para fornecer certificados de computador. O nome de usuário / senha com o MFA prova que o usuário é quem diz ser e o certificado do computador valida se o computador pertence ao domínio da empresa. Recentemente, houve um problema com um cliente vpn que não conseguia ler a loja do computador local sem ter um administrador local e, de acordo com a política da empresa, os usuários não tinham o administrador local. A solução sugerida era emitir um certificado de usuário. Agora, por padrão, o modelo para certificados de usuário permite que eles sejam exportados, por isso criamos um modelo personalizado que não permite exportação.

Todo guia que você lê para distribuir certificados internos para esse tipo de configuração usa certs de computador, mas a questão é por quê? É realmente mais ou menos seguro que um certificado de usuário? Você não pode obter um certificado de usuário de um computador que não seja de domínio, que é o mesmo para certificados de computador. Realmente parece que está cumprindo o mesmo objetivo, com a única grande diferença é que o certificado de computador reside na loja de computadores locais, enquanto o certificado de usuário reside na loja cert do usuário. Você precisa de um administrador local para ler a loja de computadores local, mas isso não está aumentando muito a segurança, já que nem as chaves particulares do computador ou do usuário podem ser exportadas. Se você instalou alguns plug-ins adicionais na CA, poderá permitir que computadores que não são do domínio solicitem certs, mas eles não estão habilitados.

No final, você precisa estar em um computador de domínio para obter um certificado de usuário emitido para você, então, basicamente, isso prova que é um ativo da empresa. Realmente não seria mais fácil lidar com certs de usuário, já que eles não têm a dor de cabeça de precisar de um administrador local para lê-los? Eu não consigo pensar em uma diferença em termos de segurança, mas se esse é o caso, então por que todo guia sugere Certs de computador? Tentando verificar isso para ver se há algum ângulo que está faltando, achei que seria útil perguntar a uma comunidade maior, já que discuti isso com muitos colegas e ninguém conseguia pensar em uma pegadinha ou preocupação com a segurança.

    
por Baron Harkonnen 07.06.2018 / 22:10

2 respostas

0

Every guide you read for distributing internal certs for this kind of setup uses computer certs, but the question is why? Is it really any more or less secure then a user certificate?

Não é (necessariamente) sobre segurança; eles estão usando certificados de computador porque essa é a solução mais apropriada para seu caso de uso. Você já descobriu alguns motivos pelos quais o uso de certificados de usuário é menos conveniente: você precisava criar um modelo personalizado, garantir que o AD não permitisse que os usuários ingressassem em computadores que não pertencem à empresa ao domínio e garantir que a autoridade de certificação não tinha o plug-in que permite que máquinas sem domínio solicitem certificados de usuário.

Como existem boas razões não relacionadas à segurança para usar certificados de computador, o fato de que a maioria das pessoas fornece pouca ou nenhuma evidência, seja de que usar certificados de usuário seja seguro. No entanto, você tem uma restrição que eles não tiveram: por algum motivo, o software cliente VPN não pode usar certificados de computador. Eu suponho que você já tenha pesquisado isso completamente. A solução ideal seria mudar os clientes, mas isso seria caro. Portanto, você precisa fazer um teste quanto ao risco que os certificados de usuário apresentam.

A melhor maneira (e apenas totalmente segura) de fazer esse julgamento seria consultar um especialista, que definitivamente não sou eu. Venho adiando postar uma resposta na esperança de que alguém com a experiência apropriada faria isso, mas sem essa sorte. Então, pelo pouco que vale a pena, aqui está como eu olharia para isso. No entanto, se você tiver a opção de gastar uma quantia esperançosamente modesta em um consultor especialista, recomendo que o faça.

Eu só vejo duas maneiras pelas quais um usuário pode tentar ignorar as restrições sobre quais computadores ele pode usar. Eles poderiam tentar exportar seu certificado de usuário de uma máquina de domínio para uma máquina sem domínio. Ou podem tentar enganar a autoridade de certificação para que emita um certificado de usuário para uma máquina que não seja de domínio.

Eu fiz uma rápida pesquisa, e isso sugere que, embora os certificados de usuário sejam armazenados em arquivos aos quais o usuário tem acesso, eles são criptografados pelo serviço de isolamento de chave CNG. A menos que o usuário tenha acesso de administrador, isso deve impedir que as chaves sejam exportadas. (Se o usuário tiver acesso de administrador, eles presumivelmente poderiam facilmente exportar uma chave de computador como uma chave de usuário.)

Sou menos otimista quanto à segunda opção. Pelo que eu saiba, não há nenhuma promessa documentada de que a autoridade de certificação fará qualquer esforço para validar a identidade do computador quando uma chave de usuário estiver sendo gerada. O fato de que há um procedimento documentado para fazer isso, e você garantiu que o componente relevante não está instalado, não é uma boa evidência que essa é a única maneira possível.

Minha pesquisa sugere que as solicitações de certificado são feitas por meio do DCOM e que, embora as configurações padrão do DCOM não funcionem para um cliente que não seja de domínio tentando se conectar a um servidor de domínio, somente o cliente precisa ser reconfigurado para fazer uma conexão com sucesso. Obviamente, eu não tentei, mas em princípio eu acho que isso funcionaria.

Por outro lado, o cliente ainda precisa ser capaz de se conectar à CA para fazer a solicitação, e se o cliente estiver fora da rede, isso deve ser bloqueado pelo seu firewall. E considerando o contexto, eu diria que você já tem medidas para desencorajar a equipe de conectar computadores pessoais à rede de trabalho. Então, a partir dessa perspectiva, enquanto você talvez não esteja tão seguro quanto você poderia estar, você provavelmente está tão seguro quanto precisa, dependendo, é claro, do seu perfil de risco. (Eu estou indo supor que você não está executando um site de armas nucleares aqui.)

No final das contas, sua melhor proteção não será tecnológica de qualquer maneira. Desde que sua equipe esteja ciente da política e avisado que o uso da VPN está sendo registrado e monitorado, muito poucos é provável que tentem contornar as regras mesmo que tenham qualificação suficiente para encontrar uma maneira de fazê-lo.

    
por 17.06.2018 / 02:26
0

Estes certificados são diferentes porque servem diferentes propósitos. Isso é sobre granularidade. Basicamente, os dois tipos de certs mencionados identificam com segurança dois tipos básicos de coisas na sua rede. Computadores e usuários. Você pode revogar um certificado de usuário separadamente de sua estação de trabalho ou controlar o acesso e a confiança separadamente. Os certificados de usuário têm o nome distinto do usuário, os certificados de computador têm o FQDN do computador.

Outra coisa que eu posso pensar é 802.11x, segurança baseada em porta. Isso impede a comunicação normal por meio do comutador conectado até você autenticar. Os certificados são uma maneira de autenticar usando o protocolo 802.11x. Se o certificado do usuário não for importado para alguma máquina aleatória, ele nunca efetuou logon antes que possa haver um problema, portanto, você emite certificados de dispositivo.

    
por 08.06.2018 / 05:06