¿Debo rechazar un CSR cuando el host me envió la clave privada para la solicitud de certificado SSL?

75

Acabo de solicitar un CSR de mi proveedor de alojamiento web compartido, para generar un certificado que les enviaré para que lo instalen. (El certificado en sí mismo debe ser generado correctamente por una organización para la que trabajo que pueda proporcionar certificados para nuestro uso oficial). ¡La compañía de alojamiento me envió rápidamente el CSR pero también la clave privada! Incluso hicieron un CC a otra persona, y está en Gmail, por lo que Google probablemente ya lo ha ingerido con fines publicitarios.

En mi humilde opinión, esto parece algo terrible de hacer. Estoy a punto de responderles rechazando este, y le pido que renueve la CSR y esta vez mantenga la clave privada: privada.

Antes de hacer el ridículo, me gustaría confirmar que la clave privada para un certificado "SSL" (TLS) nunca debe abandonar el servidor.

He estado trabajando en industrias relacionadas con la seguridad durante muchos años y solía ser un programador criptográfico, así que creo que conozco un poco el tema, pero sé que las cosas cambian con el tiempo.

He leído esta pregunta relacionada: Qué problemas surgen al compartir la clave privada de un certificado SSL ?

Meta Update: Me he dado cuenta de que he escrito un formato de pregunta de mala calidad para Stack Exchange, ya que ahora es difícil aceptar una respuesta específica. Disculpas por eso, todas las respuestas cubrieron aspectos diferentes e igualmente interesantes. Inicialmente, me pregunté cómo redactarlo para ese propósito, pero quedé en blanco.

Actualización: aunque he seguido esto con el anfitrión, ellos se "disculparon por cualquier inconveniente", prometieron mantener a salvo las futuras claves privadas y me enviaron un nuevo y diferente CSR. Si se genera a partir de la misma clave privada expuesta de la que actualmente no estoy seguro. Ahora también me pregunto, ya que es un host compartido, si me han enviado la clave para todo el servidor o si cada cliente / dominio / host virtual obtiene un par de claves.

Es una lección interesante sobre cómo toda la fuerza de criptografía en el mundo puede quedar nula y sin efecto por un simple error humano. Kevin Mitnik estaría asintiendo.

Actualización 2: En respuesta a una respuesta del usuario @Beau, he usado los siguientes comandos para verificar que el segundo CSR se generó a partir de una clave privada secreta diferente.

openssl rsa -noout -modulus -in pk1.txt | openssl md5
openssl req -noout -modulus -in csr1.txt | openssl md5
openssl req -noout -modulus -in csr2.txt | openssl md5

Los dos primeros hashes son idénticos, el tercero es diferente. Así que esas son buenas noticias.

    
pregunta scipilot 12.04.2017 - 14:16
fuente

6 respuestas

47

Si estuviera en su lugar, me negaría a aceptar este certificado SSL. El motivo es que, si alguien interrumpió alguno de los correos electrónicos que recibieron la clave privada, podría descargarla y luego hacerse pasar por el servidor en diferentes ataques a clientes, como man in the middle o similar. También en el caso de que una de las direcciones de correo electrónico de recepción se haya escrito incorrectamente, es posible que alguien ya tenga la clave privada. También es probable que haya muchos más escenarios en los que un atacante pueda descargar y usar esta clave privada.

También debe ser importante notificar a la compañía acerca de no compartir la clave privada, para asegurarse de que la compañía no envíe la clave privada a ningún otro lugar: la clave privada fue enviada a usted y a otras CC en este correo electrónico, pero no puede saber si la compañía no envió un correo electrónico separado con la clave privada a otra parte.

Hay una razón por la que la clave privada se denomina clave privada

Tenga en cuenta que esta es principalmente mi opinión personal y que no soy un experto en SSL.

    
respondido por el vakus 12.04.2017 - 14:40
fuente
119

Sí, debes rechazar absolutamente la CSR. Además, debes cambiar tu proveedor de alojamiento ya que parece que no saben lo que están haciendo.

Ya es suficientemente malo que le hayan enviado la clave privada por correo electrónico, es decir, a través de un medio inseguro. Sin embargo, también se lo enviaron a otra persona, lo cual es una completa violación de la confidencialidad.

Además, me pregunto por qué te enviaron la clave privada: se supone que se debe instalar en el servidor, que es algo que pueden hacer por sí mismos.

    
respondido por el dr01 12.04.2017 - 14:52
fuente
18

Sí, definitivamente debes rechazar la CSR.

En cuanto a si debe reconsiderar el proveedor de alojamiento, depende.

  

Incluso se llevaron a alguien más,

¿Hay alguna razón por la que la empresa de alojamiento deba conocer la estructura interna de su empresa? ¿La persona que hace esto es un administrador de cuentas designado que ha sido asignado específicamente a su compañía y es responsable de saber quién es quién en su compañía? ¿Su empresa proporcionó información suficiente al gerente de cuenta sobre cómo está estructurada su empresa y quién está autorizado para hacer qué? De lo contrario, puede ser en parte culpa suya (de la empresa) por no dejarles en claro cómo deben enviarle la llave.

En la mayoría de las cuentas de alojamiento, si no tiene un administrador de cuentas designado que esté familiarizado con su línea de negocios, debería haberle explicitado a su soporte técnico cómo enviar las claves a usted, quién debería recibirlas. , y si desea o no recibir la clave en primer lugar. No asuma que un personal de soporte técnico conoce la situación de su compañía, y nunca asuma que un personal de soporte técnico que no sea su administrador de cuentas designado para recordar quién es usted de una interacción anterior.

  

y está en Gmail

¿Te das cuenta de que enviar una CSR por correo electrónico tampoco es muy seguro? Es bastante posible que alguien (un empleado que trabaja en Gmail o APT), intercepte el correo electrónico que contiene el CSR, reemplace el CSR que el host le envía con su propio CSR, y firme el CSR de la empresa de alojamiento. Esto les permitiría usar más tarde los certificados falsificados para MITM entre usted y sus usuarios y la empresa de alojamiento.

Debe enviarse una CSR a través de un canal autenticado (por ejemplo, envían el certificado a un sitio HTTPS que usted controla o deben firmar la CSR con una clave GPG que publican en su sitio), o al menos debe hacer una huella digital. La verificación y tanto usted como su anfitrión deben tener una forma de identificar y autenticar a la otra parte. La configuración de un canal autenticado puede ser un proceso bastante complejo, y no es algo que esté disponible en un proveedor de hospedaje de menor costo o que no se especialice en hospedaje empresarial de alta seguridad.

Si no especifica cómo su compañía requiere que se entregue la CSR, y especialmente si no es manejado por un gerente de cuentas que debería saber qué tipo de negocio está haciendo, entonces la mayoría de las compañías de alojamiento supondrán razonablemente que Son una empresa de seguridad mínima. La mayoría de las personas que trabajan en una empresa de seguridad mínima consideraría que tener una copia de la clave privada tenga un valor mayor que la seguridad de no controlar la clave, por lo que no es razonable que lo asuman usted.

    
respondido por el Lie Ryan 12.04.2017 - 17:25
fuente
16
  

Antes de hacer el ridículo, me gustaría confirmar que la clave privada para un certificado "SSL" (TLS) nunca debe abandonar el servidor.

Depende, puede haber buenas razones para que abandone el servidor. Por ejemplo, es posible que desee utilizar el mismo certificado en servidores del servidor o una clave de respaldo para la fijación de claves.

Pero absolutamente debe tratarse como un secreto valioso, solo debe almacenarse en máquinas en las que confía y, si es necesario moverse entre sistemas, debe hacerse de manera adecuada y segura.

Mi consejo sería alejarse de estos payasos inmediatamente.

    
respondido por el Peter Green 12.04.2017 - 23:59
fuente
13

Probablemente querían que tuvieras el par completo de clave / certificado en caso de que quisieras usarlo en otro lugar.

Tener la clave privada flotando es una preocupación legítima de seguridad, especialmente si no la va a usar. Explique que este certificado es solo para el proveedor de alojamiento y pídales que vuelvan a emitir el CSR y lo envíen sin una clave privada. Verifique que la huella digital de CSR cambie.

Suena como si trataran el certificado como una forma de hacer que un candado verde aparezca más que como un dispositivo de seguridad, que probablemente sea una señal de advertencia. Considere un alojamiento diferente si es posible y / o si su sitio maneja información muy confidencial.

    
respondido por el trognanders 13.04.2017 - 00:33
fuente
6

Son absolutamente incompetentes en seguridad. Una clave privada es, err, private, por definición. Sirve para identificar legalmente a su dueño. Han hecho posible la falsificación y la suplantación.

Usted debería enviarles ellos el CSR, luego de generarlo usted mismo desde su clave privada / pública par, y ellos deben enviarle el certificado firmado y su cadena de autenticación. Nada más.

Si le envían claves privadas y CSR, su modelo completo está roto.

Cambie de proveedor y recupere su dinero. Al menos. Han comprometido su seguridad, por lo que puede haber una acción por pérdida y daños. Al menos puede amenazarlos para facilitar el proceso de devolución del dinero.

    
respondido por el user207421 13.04.2017 - 02:47
fuente

Lea otras preguntas en las etiquetas