¿Por qué utilizar TLS 1.3? | Vulnerabilidades de SSL y TLS

TLS 1.3 mejora las versiones anteriores del protocolo TLS (SSL) en varios aspectos importantes.

Objetivos de aprendizaje

Después de leer este artículo podrás:

  • Entender por qué TLS 1.3 es más rápido y más seguro que TLS 1.2
  • Más información sobre las vulnerabilidades de TLS

Copiar enlace del artículo

¿Cuál es la diferencia entre TLS 1.3 y TLS 1.2?

TLS 1.3 es la última versión del protocolo TLS. TLS, que es utilizado por HTTPS y otros protocolos de red para la encriptación, es la versión moderna de SSL. TLS 1.3 eliminó la compatibilidad con funciones criptográficas más antiguas y menos seguras, y aceleró los protocolos de enlace de TLS, entre otras mejoras.

Para contextualizar, el Grupo de trabajo de ingeniería de Internet (IETF) publicó TLS 1.3 en agosto de 2018. TLS 1.2, la versión a la que sustituye, se estandarizó una década antes, en 2008.

¿Qué ventajas tiene utilizar la última versión de TLS?

En pocas palabras, TLS 1.3 es más rápido y más seguro que TLS 1.2. Uno de los cambios que hace que TLS 1.3 sea más rápido es una actualización en la forma en la que funciona el protocolo de enlace TLS: los protocolos de enlace de TLS en TLS 1.3 solo requieren un viaje de ida y vuelta (o comunicación de ida y vuelta) en lugar de dos, lo cual reduce el proceso a unos pocos milisegundos. Y en los casos en que el cliente se haya conectado antes a un sitio web, el protocolo de enlace TLS tendrá cero viajes de ida y vuelta. Esto hace que las conexiones HTTPS sean más rápidas, lo cual reduce la latencia y mejora la experiencia general del usuario.

Muchas de las principales vulnerabilidades de TLS 1.2 tenían que ver con los algoritmos criptográficos más antiguos con los que seguían siendo compatibles. TLS 1.3 deja de ser vulnerable con estos algoritmos criptográficos vulnerables y, por tanto, es menos vulnerable a los ciberataques.

¿Por qué hay diferentes versiones de TLS?

Las actualizaciones son una parte natural del desarrollo de software. Los sistemas informáticos son tan complejos que es inevitable que necesiten reparaciones o mejoras para que sean más eficaces o más seguros. Cualquier software va a tener vulnerabilidades, es decir, fallos de los que se puede aprovechar un atacante.

En el caso de TLS, algunas partes del protocolo que vienen de sus inicios en la década de los noventa dieron lugar a varias vulnerabilidades de alto perfil que persisten en TLS 1.2. Además, quienes trabajan en el desarrollo del protocolo identifican continuamente ineficiencias que pueden ser eliminadas.

¿Cómo se desarrollan las nuevas versiones de TLS?

El IETF es el encargado de desarrollar TLS, codificando los comentarios e ideas con un documento conocido como "Solicitud de comentarios," o RFC. La mayoría de los protocolos en Internet se definen mediante RFC. Todas las RFC están numeradas; TLS 1.3 se define en RFC 8446.

Una vez que se publica una nueva versión de un protocolo, es tarea de los navegadores y los sistemas operativos el ser compatibles con esos protocolos. Todos los sistemas operativos y navegadores deberían aspirar a mejorar el rendimiento y la seguridad, así que tienen incentivos para hacerlo. Sin embargo, aún puede pasar algún tiempo hasta que se generalice la compatibilidad con los protocolos actualizados, sobre todo porque las empresas privadas y los consumidores pueden tardar en adoptar las últimas versiones de navegadores, aplicaciones y sistemas operativos.

¿Qué es una vulnerabilidad?

Una vulnerabilidad de software es un fallo en el diseño de un programa informático de la que puede aprovecharse un atacante para llevar a cabo una actividad maliciosa o conseguir un acceso ilícito. Esencialmente, las vulnerabilidades son inevitables en los sistemas informáticos, del mismo modo que es prácticamente imposible construir un banco que sea inexpugnable antes ladrones que estén muy determinados a hacerlo.

La comunidad de seguridad documenta y cataloga las vulnerabilidades según se descubren y describen. A las vulnerabilidades conocidas se les asigna un número, como CVE-2016-0701. (El primer número es el año en que se descubrió).

¿Cuáles son algunas vulnerabilidades importantes de SSL y TLS?

Una serie de funciones criptográficas obsoletas dieron lugar a vulnerabilidades o permitieron tipos específicos de ciberataques. A continuación, se presenta una lista no exhaustiva de los puntos débiles de la criptografía de TLS 1.2, y las vulnerabilidades o ataques asociados a ellos.

Se han eliminado muchas funciones de TLS 1.2, además de las enumeradas anteriormente. La idea es hacer imposible que alguien habilite los aspectos vulnerables de TLS 1.2. Esto es algo así como cuando el gobierno prohibió la fabricación de coches nuevos que no tuvieran cinturones de seguridad: el objetivo de la normativa era que los coches sin cinturón de seguridad fueran desapareciendo progresivamente, para que todo el mundo estuviera más seguro. Durante un tiempo, los conductores podían seguir eligiendo modelos de coches más antiguos y menos seguros, pero con el tiempo esos coches más peligros acabaron por desaparecer de las carreteras.

¿Es Cloudflare compatible con TLS 1.3?

Cloudflare da prioridad a la compatibilidad con todas las versiones más recientes y seguras de los protocolos de red. Cloudflare ofreció inmediatamente compatibilidad con TLS 1.3; de hecho, Cloudflare ya era compatible con TLS 1.3 en 2016, antes de que el IETF terminara de perfeccionarlo.

Para obtener más detalles técnicos sobre TLS 1.3 y en qué se diferencia de TLS 1.2, consulta esta visión detallada sobre TLS 1.3, realizada por el Director de Criptografía de Cloudflare, Nick Sullivan.