A partir del próximo 30 de abril del 2018, el navegador Google Chrome va a requerir que todos los nuevos y renovados certificados de confianza estén en al menos dos registros de Certificate Transparency. Esto significa que cualquier certificado digital emitido que no esté registrado en Certificate Transparency, nos generará un mensaje de aviso si utilizas el navegador Google Chrome. AWS ha comunicado que todos los certificados nuevos y renovados estarán en dos registros públicos por defecto, a no ser que el administrador del servicio en AWS deshabilite específicamente esto. Podéis visitar nuestro tutorial sobre cómo funciona IP logger.
¿Qué es el Certificate Transparency?
Una de las principales preocupaciones del dueño de un dominio que tenga HTTPS, es saber si se ha emitido un certificado SSL falso para su dominio, o se ha emitido un certificado para dicho dominio por un error humano. Con el sistema actual, no se mantiene un registro de los certificados que se emiten, por tanto, los dueños del dominio no tienen forma de identificar los certificados falsos. A día de hoy, ha habido varios casos donde se han emitido certificados falsos por parte de CA que se han visto comprometidas, Certificate Transparency intenta mitigar este problema. Este método de verificación de los certificados no desplaza a otras soluciones que existen actualmente, sino que las complementan.
Certificate Transparency crea un registro criptográficamente seguro de cada certificado emitido para cada dominio. Los propietarios de un determinado dominio, pueden buscarlo en el log público para saber si se ha emitido un certificado falso, o ha habido algún tipo de error humano al emitir un certificado nuevo. Además, uno de los puntos fuertes de este método es que los dueños de los dominios, también pueden saber qué CA (Autoridad de Certificación) ha emitido el certificado falso.
¿Cómo funciona Certificate Transparency?
Cuando una CA emite un certificado digital de un determinado dominio, la CA debe enviar el certificado a uno o varios servidores de registro de Certificate Transparency. Este servidor de registro debe responder con una marca de tiempo certificada y firmada (SCT), confirmando que efectivamente el certificado nuevo se agregará a la lista de certificados conocidos. La SCT se integra directamente en el propio certificado digital, y lo entrega al navegador para que lo compruebe. El SCT es una especie de justificante indicando que ese certificado está dado de alta en el registro público.
A partir del 30 de abril de 2018, si un certificado no tiene un SCT, Google Chrome nos avisará de ello. Un detalle importante es que si el certificado ha sido emitido antes de esta fecha, y no tiene SCT, no nos saldrá ningún tipo de aviso o error, solo los nuevos y renovados a partir de esa fecha. Es muy probable que próximamente el resto de navegadores web también hagan esta comprobación, como Firefox y otros. Os recomendamos visitar este completo artículo en ElevenPaths sobre Certificate Transparency.
Uno de los aspectos negativos de Certificate Transparency está, en que si por ejemplo, estamos creando un nuevo sitio web para un proyecto que aún no es público, si creamos un certificado digital automáticamente aparecerá el nombre del nuevo dominio en el registro público. Además, este registro también podría exponer servidores que queremos mantener en privado, de esta forma, tendríamos que evitar dar de alta dicho certificado en Certificate Transparency.
Imaginemos que vamos a abrir un portal de vídeos en RedesZone, con el subdominio videos.redeszone.net, y que queremos un certificado digital para ese dominio en concreto. Si usásemos Certificate Transparency, nuestra competencia podría ver que tenemos un subdominio nuevo.
¿Qué opinas de Certificate Transparency? ¿Crees que es una buena forma para mejorar la seguridad en Internet?