Quero manter nossa chave SSL do nosso site confidencial. Ele é armazenado em 2 pen drives, um em um cofre e outro que eu mantenho seguro. E então eu sou o único que o aplica ao servidor da web para que ele seja totalmente seguro.
Exceto...
No IIS, pelo menos, você pode exportar a chave. Portanto, quem é administrador pode obter uma cópia da chave. Existe alguma maneira de contornar isso? Ou, por definição, todos os administradores têm acesso total a todas as chaves?
Atualização: Eu tenho administradores de sistemas nos quais confio plenamente. O que levou a isso foi um deles sair (eles tiveram uma hora de viagem para a nossa empresa, uma viagem de 5 minutos para a nova). Embora eu confie neste indivíduo, assim como desativamos a conta do Active Directory quando alguém sai, achei que deveríamos ter uma maneira de garantir que ele não retenha a capacidade de usar nosso SSL.
E o que me pareceu mais fácil é se eu sou o único que a possui. Nosso certificado expira em janeiro, então era hora de mudar a prática, se pudéssemos. Com base nas respostas, parece que não podemos.
Portanto, isso leva a uma nova pergunta - quando alguém que tem acesso ao certificado sai, é prática padrão obter um novo certificado e revogar o existente. Ou se a pessoa que saiu é confiável, continuamos com o certificado que possuímos?
fonte
Respostas:
Uma pessoa com acesso administrativo (ou mesmo físico) a um servidor poderá extrair a chave privada. Seja exportando, cheirando a memória ou outros truques desse tipo.
Seus administradores têm acesso às chaves privadas dos seus servidores web. Aceite isso como fato e resolva isso. Se seus administradores de sistemas não forem confiáveis, você poderá precisar de administradores de sistemas melhores ou pelo menos menos administradores de sistemas com acesso aos servidores da web. Se é uma questão de paranóia de segurança de gerenciamento, pode haver um problema mais profundo em relação à capacidade de confiar em um administrador de sistemas.
Isso não quer dizer que você deve permitir que todos tenham acesso à chave privada. Sempre deve haver uma necessidade de acesso antes que o acesso seja concedido. Com isso em mente, você tomará medidas extremas para garantir que um administrador de sistema com controle total de um site não exporte a chave privada, mas ainda possa manipular o próprio site de várias maneiras quase não rastreáveis? Voltamos a confiar aqui e acho que esse é o núcleo do problema que precisa ser resolvido.
fonte
Ao importar a chave, você tem a opção de marcá-la como não exportável. Isso impedirá que você use o IIS ou o certificado MMC para exportá-lo. Pelo menos, torna um pouco mais difícil.
No entanto, se eles tiverem uma conta de administrador na máquina ou tiverem acesso físico a ela - ainda poderão obter a chave por outros meios.
fonte
É aqui que uma "autoridade de certificação intermediária" pode ajudar.
A "CA raiz" neste exemplo abaixo é de propriedade de uma empresa SSL e não você.
Você não tem controle direto das chaves criadas pela CA raiz; portanto, se uma chave assinada pela CA raiz for comprometida, você precisará examiná-las para revogá-la.
Mas:
Se você colocar outra autoridade de certificação no meio e o seu certificado SSL adquirido assinar seu próprio certificado de autoridade de certificação, em vez de assinar diretamente seu certificado de servidor, você poderá manter o controle dos certificados de servidor abaixo e emitir certificados de revogação ou fazer o que mais, se as coisas abaixo dele estiverem comprometidas .
Você mantém a chave privada da CA intermediária e os administradores não precisam vê-la.
Você também pode fazer isso:
Você pode se preparar para o comprometimento e gerar certificados antecipadamente, para poder alternar rapidamente no caso de uma chave individual ser revogada. Os administradores não recebem chaves para 2 ou 3 até o comprometimento de 1. Você pode colocar um aviso em seu site sobre esse esquema, e isso também comunicaria aos administradores que você está pronto em caso de comprometimento e negócios engraçados. final não destruirá seu site.
fonte
Existem muitos artigos que sugerem armazenar as chaves privadas em algum lugar que não seja o servidor, mas essas chaves particulares são para certificados de assinatura de código . Imagine que você possui as chaves em um computador offline ao qual apenas você tem acesso, algum software é gravado, você obtém a chave privada do servidor offline, assina o código e não precisa da chave privada novamente até precisar assinar alguns código novamente.
Leia mais em: https://www.thesslstore.com/blog/heres-what-happens-when-your-private-key-gets-compromised/
Por outro lado, os certificados SSL são para sites que habilitam a comunicação HTTPS: A chave privada é necessária durante todo e qualquer aperto de mão pelo servidor da web. Portanto, armazená-lo offline não funcionará.
fonte