- -

Árbol de páginas



 Lo que indica esta vulnerabilidad es que la certificate chain está incompleta.

La certificate chain (cadena de certificados) es un conjunto de certificados que están firmados unos por otros formando una cadena (de ahí el nombre).  El primer extremo de la cadena es el certificado del servidor que has obtenido a través de Piolín y el otro extremo de la cadena es el certificado público de la CA.

Ejemplo de certificate chain

  1. certificado de servidor de aaa.upv.es  - firmado por certificado intermedio 1
  2. certificado público intermedio 1 - firmado por certificado intermedio 2
  3. certificado público intermedio 2 - firmado por certificado de autoridad certificadora (CA)
  4. certificado de autoridad certificadora - autofirmado.

Los clientes tienen los certificados de autoridad certificadora en sus almacenes de confianza, por ello, lo que el servidor web debe proporcionar son los certificados 1, 2 y 3, es decir, el certificado propio del servidor y los certificados intermedios. Cuando un servidor web los proporciona y lo hace en el orden correcto cualquier cliente puede recorrer la certificate chain y validar correctamente los certificados.

Cuando el servidor, solo proporciona el certificado 1, pueden pasar dos cosas;

  • Los navegadores modernos de sistemas operativos de escritorio se las apañan por su cuenta para descargar los certificados intermedios de internet y validar la certificate chain, sin ningún error.
  • Los navegadores ligeros, sistemas embebidos, y sistemas obsoletos no pueden validar la certificate chain y mostrarán un error de error de https.
    • Es el error que te reciben los desarrolladores de javascript y python.

Todo esta explicación es para indicar cuándo falta instalar y proporcionar a través del servicio web los certificados intermedios.


El certificado intermedio necesario para los certificados generados en Piolín están en esta página;

https://wiki.upv.es/confluence/pages/viewpage.action?pageId=728825869 

Se puede utilizar cadena.pem o intermedio.pem, cualquiera de los dos son válidos.


En la misma página más abajo se recoge cómo se instalan para tres servidores web comunes. Si tu caso es otro servidor web diferente, te agradeceríamos que nos pasaras las instrucciones de instalación, para completar la información para casos como el tuyo.

Existen varias maneras de comprobar que se está proporcionando la certificate chain de manera correcta. La que más nos gusta es la página sslabs;

https://www.ssllabs.com/ssltest/ 

En este caso, con el texto "extra download" se está avisando de que no se proporcionan los certificados intermedios;

 



  • Sin etiquetas