Por lo que leí, parece que el certificado no es un gran problema, ya que ya es público y se descarga en todos los navegadores. Sin embargo, si alguien se apodera de su archivo clave, entonces tiene un problema.
Algunas de estas respuestas no son estrictamente correctas.
Dado que el Certificado es la clave pública, es Público y, por lo tanto, puede llegar a cualquier máquina. Simplemente no importa. Y, sí, si alguien se apodera de sus claves privadas (a través de un archivo de claves recuperables), es casi seguro que hay un problema.
Sin embargo, es un poco más fangoso y parece.
Veamos un certificado, contiene mucha información. Aquí hay un subconjunto:
Un certificado debe estar firmado para que el cliente confíe en él, de lo contrario, transferir el certificado lo abre a un ataque MITM. Si es autofirmado, el creador acaba de firmar su propio certificado con la parte privada de su clave de firma. Si hay una Cadena de Fideicomiso, entonces hay al menos otro Certificado interno (de una Autoridad de Certificación) incrustado en el Certificado externo y utilizado para Firmar el Certificado externo. Puede haber cualquier número de CA intervinientes (cero o más), sin embargo, siempre hay una CA raíz cuyo certificado es autofirmado.
¿Tienes todo eso?
Haciéndolo más confuso, la misma clave privada se puede usar para cifrado y firma, aunque no es necesario. En realidad, puede haber varias claves de cifrado y firma (la parte pública) incluidas en el certificado. No hay nada que diga que solo puede haber uno o uno de cada tipo.
Finalmente, podría haber un tipo especial de clave de cifrado utilizada para SSL. Esta clave es especial porque contendrá un nombre de dominio que el navegador verifica para asegurarse de que coincida con el dominio al que se conectó. Es decir, Certificado- > Dominio == ¿Dominio conectado?
Este último tipo de certificado es con el que la gente está más familiarizada, ya que eso es lo que produce el icono de candado en algún lugar del navegador.
En el caso de una clave privada robada para un certificado SSL, bueno, no es bueno, pero no es horrible de inmediato. Incluso si tiene la clave privada para un servidor, a menos que pueda realizar un ataque de DNS o , puede ejecutar un ataque de intermediario o puede ejecutar un Ataque de suplantación de ARP o , no puede falsificar ese servidor para una sesión SSL que se conecta desde un navegador. Ahora, no confiaría en que esta situación dure mucho tiempo. Un almacén de claves robadas es incorrecto y el certificado en cuestión debe revocarse. Hablando estrictamente, sin embargo, hay más en el ataque SSL que el simple hecho de tener la clave privada.
Tenemos otro posible ataque con la clave privada robada. Si un cliente está hablando con el servidor real y está ejecutando TLS + RSA (es decir, no TLS + RSA + Diffie Hellman o no algún conjunto de cifrado que ofrezca un perfecto secreto hacia delante), Eve, el comedero, puede observar el intercambio, descifrar la sesión usando su copia de la clave privada y escuche lo que sucede. Por lo tanto, es posible un ataque de observación .
Digamos que su sitio web tiene tanto tráfico que necesita varias máquinas para manejarlo todo. Es posible que tenga un equilibrador de carga que enrute conexiones SSL a varias máquinas de back-end, cada una de las cuales requeriría una copia del certificado y la clave privada para ejecutar el protocolo de enlace SSL. No desea ejecutar una redirección a un nuevo dominio o subdominio (el navegador puede estar configurado para rechazar esto para el protocolo de enlace SSL), por lo que cada servidor debe verse como si fuera el verdadero trato final.
Hay aceleradores de hardware SSL que ejecutarán el protocolo de enlace SSL (contienen el certificado y las claves) y luego cargarán el saldo y entregarán la sesión TCP sin cifrar a los servidores de back-end. Las sesiones TCP no están expuestas porque todo esto sucede en el lado protegido de algún enrutador / conmutador entre el acelerador y los servidores web.
El certificado contiene una clave pública para un algoritmo criptográfico asimétrico (casi siempre RSA). Cualquier persona con la clave privada correspondiente puede usar el certificado.
Si la clave privada correspondiente se almacena en una computadora de propósito general, el administrador de dicha computadora (o alguien que haya pirateado la computadora y haya adquirido poderes administrativos) puede hacer una copia y ponerla en otra computadora.
Creo que existen "módulos de seguridad de hardware" que pueden almacenar una clave privada y permitir que se use para tls sin revelar la clave real al sistema host. Aunque no conozco los detalles.