Mano sosteniendo una llave|||

Los certificados de corta duración reducen el riesgo de suplantación de sitios web

Photo of Zane Ma
Categorías:

Cuando las personas pierden sus llaves o compran una nueva casa, cambian sus cerraduras y pasan a utilizar una nueva llave. Del mismo modo, cuando los operadores de sitios web pierden sus claves criptográficas o compran un nuevo nombre de dominio, adquieren un nuevo certificado web (un certificado de seguridad de la capa de transporte (TLS)) para evitar la suplantación de su dominio y la interceptación de sus conexiones cifradas HTTP sobre TLS (HTTPS).

Sin embargo, a diferencia de la sustitución de cerraduras y llaves físicas, las claves criptográficas repudiadas suelen seguir funcionando. Esta entrada del blog analiza por qué ocurre esto y cómo puede dar lugar a posibles problemas de seguridad.

Certificados TLS obsoletos: Un problema de caché

Para obtener un certificado TLS, el operador de un sitio web debe demostrar a una autoridad de certificación (CA) que controla el servidor web de su dominio mediante un intercambio de desafío-respuesta.

Una vez establecido el control, la CA emite un certificado TLS firmado que vincula el nombre de dominio del servidor web a su clave criptográfica pública. Para evitar la constante re-verificación del control del servidor web, a los certificados se les asigna un periodo de validez o duración de caché que indica cuánto tiempo es válido el mapeo dominio-clave.

Infografía que muestra cómo encajan los certificados TLS en el mecanismo de caché de autenticación de la cadena de dependencia de red de un sitio web.
Figura 1 - Los certificados TLS son un mecanismo de caché de autenticación para la cadena de dependencia de red de un sitio web.

Si el periodo de validez del certificado es demasiado corto, las CA incurren en costes operativos adicionales por volver a verificar el control del servidor web y volver a emitir certificados. Si es demasiado largo, un certificado puede anquilosarse -dejando de representar el mapeo dominio-clave del mundo real- y permitir a un adversario hacerse pasar por el dominio de otra persona.

Descubra cómo tecnologías habilitadoras tan populares como TLS1.3, DNSSEC y HTTP/3 se están convirtiendo en globales.

Suplantación de sitios web HTTPS

Echemos un vistazo a HTTPS, el principal protocolo de seguridad de la web, para entender cómo los certificados obsoletos pueden ser problemáticos. HTTPS utiliza certificados TLS para autenticar servidores web y detectar cuando terceros intentan falsificar un sitio web. En otras palabras, sólo el operador real de ejemplo.com debería ser reconocido por un navegador como https://example.com.

Los certificados obsoletos pueden romper la autenticación del servidor HTTPS al permitir a un tercero falsificar una conexión TLS para el dominio de otra persona. He aquí un ejemplo de cómo puede ocurrir esto: 

  1. Mallory adquiere el dominio foo.com
  2. Mallory adquiere un certificado para foo.com válido durante un año.
  3. Mallory transfiere/vende inmediatamente el dominio a otra persona. Mallory puede ahora hacerse pasar por foo.com mientras su certificado sea válido.

Mis colegas y yo, de la Universidad Estatal de Oregón, el Instituto de Tecnología de Georgia y la Universidad de Stanford, investigamos recientemente tres formas de anquilosamiento de terceros: consulte nuestro artículo

Descubrimos que, en los últimos diez años, más de 4 millones de dominios (>1.000 al día) tenían certificados de terceros caducados. Estos dominios comprenden dominios populares (61 en el Top 1K de sitios web de Alexa) e impopulares, y el número de certificados caducados ha crecido anualmente. 

Aunque no pudimos deducir si estos dominios vulnerables fueron explotados activamente, la magnitud de la exposición pone de relieve la importancia de mitigar los certificados TLS obsoletos de terceros.

Date Range # Certs / day # Fully Qualified Domain Names/day #Second-Level Domains/day
Key compromise 2021-2023 493 787 347
Domain owner change 2013-2021 2,593 2,807 1,214
Managed TLS change 2022 9,495 18,833 7,722

Posibles mitigaciones

La forma aparentemente obvia de mitigar los certificados obsoletos es invalidarlos mediante la revocación. Sin embargo, esto tropieza con varios obstáculos, entre ellos: 

  • No todos los clientes HTTPS (por ejemplo, las utilidades de línea de comandos y las aplicaciones móviles) admiten la revocación.
  • Algunos soportes de revocación tienen un alcance limitado (por ejemplo, los CRLSets de Chrome/Chromium) o provocan fallos suaves, lo que hace que la revocación sea inútil frente a un atacante que la intercepte
  • La revocación se utiliza poco ya que es ineficaz y/o difícil de gestionar.

La coordinación con los participantes en TLS para superar estos retos podría reducir significativamente la prevalencia de certificados caducados. Pero una opción más accesible es acortar los periodos de validez de los certificados. 

La comunidad de CA/navegadores ha ido avanzando en esta dirección: la duración máxima de los certificados se redujo a 825 días en 2017 y a 398 días en 2020. A pesar de esta mejora de la seguridad, los certificados de terceros caducados (y los dominios afectados) se han multiplicado desde 2017. 

La reducción de la duración máxima a 90 días, que varias CA importantes (por ejemplo, Let's Encrypt) ya se autoaplican, podría eliminar hasta el 75% del estancamiento de terceros.

Gráfico de áreas apiladas que muestra el porcentaje de certificados con una validez máxima de 45 días, 90 días, 215 días y 400 días.
a) Compromiso clave.
Gráfico de áreas apiladas que muestra el número de certificados con una validez máxima de 45 días, 90 días, 215 días y 400 días.
b) Cambio de registrante del dominio.

Figura 2 - La reducción de la validez máxima de los certificados a 90 días eliminaría más del 75% de los casos de caducidad de terceros.

Adoptando una perspectiva a más largo plazo, la causa fundamental del anquilosamiento de los certificados es el diseño actual de la autenticación de sitios web basada en certificados, que intenta tender un puente entre dominios independientes, servidores web y ciclos de vida de los certificados. Una solución más fundamental es disminuir la cadena de dependencia de la red entre los nombres de dominio y sus correspondientes claves criptográficas, reduciendo así las oportunidades de fractura de dependencia no intencionada o maliciosa. 

Propuestas como la Autenticación de Entidades Nombradas Basada en DNS (DANE), la Red Centrada en el Contenido (CCN) y la Red de Datos Nombrados (NDN) alinean las claves criptográficas con la fuente autorizada para la información de nombres, potenciando así a los operadores de nombres y minimizando los problemas de caché de autenticación.

Para saber más, lea nuestro artículo 'Certificados TLS obsoletos'.

Zane Ma es profesor adjunto en la Universidad Estatal de Oregón. Investiga la seguridad en Internet, centrándose en la autenticación de usuarios, clientes web y servidores.