Como mantenho a chave SSL do nosso site confidencial?

12

Eu quero manter a nossa chave SSL para o nosso site confidencial. Ele é armazenado em 2 pen drives, um em um cofre e um que eu mantenho seguro. E então eu sou o único que se aplica ao servidor web para que seja totalmente seguro.

exceto ...

Pelo menos no IIS, você pode exportar a chave. Então, qualquer um que seja administrador pode então 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 que eu confio plenamente. O que levou a isso é um deles sair (eles tinham uma hora de viagem para a nossa empresa, um trajeto de 5 minutos para o novo). Embora eu confie nesse indivíduo, assim como desabilitamos sua conta do Active Directory quando alguém sai, achei que devíamos ter uma maneira de garantir que ele não mantivesse a capacidade de usar nosso SSL.

E o que me parece mais fácil é se eu sou o único que tem isso. Nosso certificado expira em janeiro, então essa foi a hora de mudar a prática se pudéssemos. Com base nas respostas, parece que não podemos.

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, então continuamos com o certificado que temos?

    
por David Thielen 09.12.2014 / 18:09

3 respostas

26

Uma pessoa com acesso administrativo (ou muitas vezes até físico) a um servidor poderá extrair a chave privada. Seja por meio de exportação, sniffing de memória ou outros truques desse tipo.

Seus administradores têm acesso às chaves privadas de seus servidores da web. Aceite isso como fato e trabalhe em torno disso. Se os seus administradores de sistemas não forem confiáveis, talvez você precise de administradores de sistema melhores ou pelo menos menos sysadmins com acesso aos servidores da web. Se é uma questão de paranoia de segurança de gerenciamento, então pode haver uma questão mais profunda em relação à sua capacidade de confiar em um administrador de sistema.

Isso não quer dizer que você deve permitir que todos tenham acesso à chave privada. Sempre deve haver necessidade de acesso antes que o acesso seja concedido. Com isso em mente, você vai tomar medidas extremas para se certificar de que um administrador de sistema com controle total de um site não pode exportar a chave privada, mas ainda pode manipular o próprio site em qualquer número de maneiras quase impossíveis de serem rastreadas? Estamos de volta a confiar aqui, e acho que esse é o núcleo do problema que precisa ser tratado.

    
por 09.12.2014 / 19:17
11

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, fica 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.

    
por 09.12.2014 / 19:25
0

É aqui que uma "CA intermediária" pode ajudar.

A "CA raiz" neste exemplo abaixo é de propriedade de uma empresa SSL e não de 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á passar por elas para revogá-la.

Mas:

Root CA (SSL company)
 |
 +-Intermediate CA (You)
   |
   +-Server Key for site

Se você colocar outra autoridade de certificação no meio e solicitar que seu certificado SSL comprado assine seu próprio certificado de autoridade, em vez de assinar seu certificado de servidor diretamente, poderá manter o controle de certificados de servidor abaixo e emitir certificados de revogação ou fazer o que estiver abaixo está comprometida.

Você mantém a chave privada da CA Intermediária para você e os administradores não precisam vê-la.

Você também pode fazer isso:

Root CA (SSL company)
 |
 +-Intermediate CA (You)
   |
   +-Server Key 1 for site
   +-Server Key 2 for site 
   +-Server Key 3 for site

Você pode se preparar para o comprometimento e gerar certificados com antecedência, 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 comunicará aos seus administradores que você está pronto no caso de um comprometimento e esse negócio o final não destruirá seu site.

    
por 10.12.2014 / 14:12