¿Cuáles son las implicaciones de agregar un certificado autofirmado al almacén de las Autoridades de certificación de raíz de confianza de Windows?

6

Soy un desarrollador de sitios web en ciernes, así que por favor confíe en mi ignorancia.

Digamos que tuve que cifrar mi sitio web con HTTPS y me cansé de tener que hacer clic en "Continuar" cada vez que aparecía una advertencia sobre un certificado no confiable. Utilicé este método para instalar el certificado de mi sitio.

Diga que el certificado que firmé está emitido por "xyz". Dado que la tienda se llama "Autoridades de certificación de raíz de confianza", asumo que confía en "xyz" como autoridad de certificación. Cuando mi certificado se agrega a la tienda, ¿significa que cualquier certificado emitido por "xyz" ahora es de confianza automática?

¿O la instalación de un certificado SSL para un dominio a "Autoridades de certificación de raíz de confianza" solo hace que se confíe en un dominio?

El punto es que quiero ignorar las advertencias de mi sitio web en particular, pero no quiero ignorar las advertencias de ningún otro sitio web.

EDITAR: Probablemente debería aclarar el procedimiento exacto que utilicé para crear el certificado. El sitio web se implementa en un servidor Ubuntu 10.04 con las configuraciones predeterminadas de OpenSSL y Apache. Para crear el certificado y el archivo de clave, simplemente utilicé

# make-ssl-cert generate-default-snakeoil –force-overwrite

y dejó solo / etc / apache2 / sites-available / default-ssl solo porque el comando make-ssl-cert escribió los dos archivos en las mismas rutas a las que apuntan los archivos de configuración de Apache. Así que ni siquiera configuré una autoridad de certificación para generar el certificado de mi sitio web.

¿Esto cambia el escenario en absoluto? ¿Cuál es la diferencia entre instalar un certificado creado sin una autoridad de certificación como raíz de confianza en un cliente e instalar un certificado creado con uno?

EDIT 2: De acuerdo, sería mejor que restringiera la pregunta tanto como pudiera: ¿Es seguro pedir a otros que instalen mi certificado como raíz de confianza si aseguro el certificado de mi sitio web y me aseguro? nunca se escapa? ¿Alguna vez los atacantes podrán aprovechar mi certificado autofirmado y dirigirse a aquellos que lo hayan instalado en su almacén de certificados de confianza?

    
pregunta Kevin Jin 13.10.2012 - 17:26
fuente

2 respuestas

10

Cuando instala un certificado de CA como "raíz confiable", esto significa que sus aplicaciones confiarán en los certificados que emita este certificado de CA. Esto es no , de forma predeterminada, restringido a un dominio específico. X.509 , el estándar para certificados, incluye una manera de especificar que una CA dada es para emitir certificados solo en una "área", por ejemplo para servidores en un dominio (es decir, la extensión de Restricciones de nombres, consulte la sección 4.2.1.10), pero no es compatible con las implementaciones existentes o no las admite en absoluto. Así que recomendaría no confiar en esta función.

Entonces, la regla básica es que cuando instala una nueva raíz confiable, le está confiando al propietario de la clave privada su seguridad de navegación. Si usted es el propietario (es su certificado autofirmado, que usted mismo generó), entonces es su responsabilidad mantener la clave de la CA. Mientras que nadie más obtenga una copia de la clave privada, entonces no hay problema. Esto conduce al siguiente método:

  1. Cree un nuevo par de claves y un certificado autofirmado.
  2. Use esa CA recién creada para emitir un certificado para su servidor.
  3. Importe el certificado de la entidad emisora de certificados como raíz de confianza.
  4. Olvídese de la clave privada de la AC (destruya la clave; idealmente, la clave está en un archivo que coloca en un sistema de archivos respaldado por RAM, lo que hace que la supresión sea razonablemente completa).

y ya está. Si la clave privada ya no existe, está, en particular, fuera del alcance de adversarios malévolos.

Un método alternativo es utilizar un certificado autofirmado para el servidor en sí, e instruir a su navegador web para que, no obstante, confíe en ese certificado solo para su sitio . Si su navegador puede hacer eso, entonces no es necesario jugar con la CA raíz. Firefox puede hacerlo; lo llaman una excepción de seguridad .

    
respondido por el Thomas Pornin 13.10.2012 - 17:45
fuente
0

En caso de que alguien esté interceptando el tráfico de sus usuarios, esa persona puede realizar un ataque de intermediario y presentar a sus usuarios su propio certificado para instalar en lugar del suyo. En este caso, podrán descifrar todos los datos que pasan entre los clientes y el servidor.

Aparte de esto, no hay consecuencias.

    
respondido por el Vitaly Osipov 14.10.2012 - 12:13
fuente

Lea otras preguntas en las etiquetas