¿Qué es TLS y cómo se compara con SSL?

13

¿TLS es la "nueva" versión de SSL? ¿Qué características agrega o problemas de seguridad que aborda?

¿Puede cualquier cosa que admita SSL admitir TLS? ¿Qué implicaría hacer el cambio? ¿Vale la pena el cambio?

¿Por qué los correos electrónicos se envían a través de "TLS oportunista" y VPN a menudo llamados SSL VPN? ¿Hay alguna diferencia en la tecnología, quizás creando espacio para una línea de productos "TLS VPN"?

goodguys_activate
fuente

Respuestas:

11

TLS y SSL son tecnologías estrechamente relacionadas.

Primero, correo electrónico y TLS oportunista. ESMTP tiene la opción de realizar la parte de transferencia de datos real de la conversación a través de un enlace cifrado. Esto es parte del protocolo y se ha denominado TLS durante la mayor parte de su existencia. Funciona más o menos así:

-> EHLO foreignmailer.example.com
<- 250 Howdy, stranger
<- [list of capabilities, of which TLS is listed]
-> [Indicates it wants to start a TLS session]
<- [accepts negotioation]
-> [Mail actions, of which LOGIN might be one]

Una vez que se ha iniciado la sesión TLS, pueden estar disponibles nuevos métodos de inicio de sesión. Este es un ejemplo de un protocolo que incluye Transaction Layer Security en él directamente. Los certificados utilizados son el mismo tipo de certificados utilizados para SSL sobre HTTP.

Para ver un ejemplo de un servicio que no incluye TLS directamente, tome POP3 sobre SSL. En ese caso, la sesión segura se negocia antes de negociar el protocolo real. En esencia, POP3 se encapsula dentro de una sesión segura.

En general, si un servicio admite SSL, puede ampliarse para admitir TLS. Si eso se ha hecho o no, depende de los encargados del servicio. Esto significa que TLS puede reemplazar SSL en "VPN SSL".

Las VPN SSL son distintas de sus primos basados ​​en IPSec en que la sesión segura se realiza a un nivel diferente. Las VPN SSL hacen su trabajo de la misma manera que lo hace POP3 sobre SSL, ya que el tráfico se encapsula a través de una conexión TCP existente. Las VPN IPSec crean un túnel seguro de nivel IP , donde las VPN SSL crean un túnel seguro de nivel TCP . La razón por la cual las VPN SSL parecen estar asumiendo el control es porque son más fáciles de configurar y son más tolerantes a las malas condiciones de la red. Las VPN SSL pueden usar el protocolo TLS y lo hacen para proteger la sesión, aunque depende del fabricante de la propia VPN.

En cuanto a las diferencias exactas de nivel de protocolo entre SSL y TLS, en las que no puedo entrar. TLS como estándar se llegó más tarde que SSL y, por lo tanto, incluye algunas de las lecciones aprendidas en las primeras versiones de SSL. SSLv3 fue ratificado en 1996 y TLS1.0 en 1999, y el desarrollo de protocolos adicionales parece estar limitado al conjunto de TLS. Ha tardado MUCHO tiempo para que SSLv1 y v2 desaparezcan. TLS es el claro sucesor de la suite SSL.

sysadmin1138
fuente
¿Cuándo debería desaparecer SSLv3 y ser reemplazado por TLS? ¿Alguna situación hoy o en el futuro cercano que esto sería relevante?
goodguys_activate
@ MakerOfThings7 En términos de compatibilidad con el navegador, desaparecerá una vez que el 90% de los usuarios de navegación activa admitan TLS sin volver a SSLv3. Eso probablemente sucederá en algún momento en los próximos 5-7 años. Eso puede cambiar si se descubre una debilidad fácil de explotar en SSLv3 que obligaría a un despliegue más rápido.
sysadmin1138
2
SSL v 3 y TLSv1 se rompieron en el ataque BEAST luxsci.com/blog/… ), y SSL v3 nuevamente a través de POODLE ( arstechnica.com/security/2014/10/… ) con suerte podemos presionar para que TLS 1.2 se use más frecuentemente
Jim B
Las especificaciones para TLS 1.2 están aquí tools.ietf.org/html/rfc5246 y para 1.3 (actualmente borrador) están aquí ietf.org/id/draft-ietf-tls-tls13-02.txt
Jim B
5

TLS es esencialmente una actualización a SSL. Los cambios no son dramáticos, pero son lo suficientemente significativos como para romper la compatibilidad con SSL3.0.

El artículo de Wikipedia lo cubre ampliamente, pero en términos razonablemente comprensibles. (No me refiero a RTFM, pero no quiero repetir todo allí).

Se usan de manera similar y todavía se conoce como SSL. Básicamente, usted elige su esquema de cifrado para ser uno u otro.

gWaldo
fuente
55
+1, la mayor diferencia es que SSL es cifrado implícito, lo que significa que la conexión comienza con un protocolo de enlace de cifrado y no hace nada hasta que tenga éxito. TLS es explícito, la conexión comienza y en algún momento el cliente solicita comenzar a cifrar la comunicación.
Chris S
1
@ Chris: ¿Estás seguro de eso? opensslParece estar en desacuerdo. (Muchos programas dicen "TLS" cuando significan "STARTTLS".)
user1686
@Grawity, creo que estás confundiendo el modo alternativo de TLS con SSL. Muchas aplicaciones usarán un contenedor TLS que reconoce una negociación SSL y comienza el apretón de manos de inmediato. Si una aplicación ejecuta TLS puro (sin respaldo), debe emitir STARTTLS (o equivalente, depende del protocolo, aunque la mayoría de los protocolos lo usan) antes de que comience el protocolo de enlace de cifrado.
Chris S
Todos esos comentarios se aplican a SSL / TLS que utilizan otros protocolos. SSLv3 y TLSv1.0 son casi idénticos con diferencias solo conocidas por los expertos en protocolos.
Nasko
Además, TLS no interrumpe la compatibilidad con SSL, verifique sus fuentes.
Nasko
3

SSL, como ya señalaron las personas, es un protocolo diseñado por Netscape en el pasado. En algún momento, el organismo de estándares IETF decidió adoptar el protocolo SSLv3 como estándar, por lo que se modificó muy sutilmente y se denominó TLSv1.0.

Entonces, para la mayoría de las personas, TLSv1.0 es casi equivalente a SSLv3. La razón por la que la gente todavía llama a la familia de protocolos SSL es por razones históricas: todos están acostumbrados al nombre, por lo que siguen usándolo. Es bastante posible que la VPN esté usando TLS debajo de la cubierta, pero el nombre de marketing aún permanece como SSL VPN.

Desde TLSv1.0, ha habido dos revisiones del estándar y ahora está en TLSv1.2, que si bien es compatible, tiene algunos cambios significativos. Debido al diseño SSL / TLS, tanto el cliente como el servidor pueden negociar qué versión del protocolo quieren usar, de modo que los clientes que usan TLSv1.0 aún pueden comunicarse con los servidores que implementan TLSv1.2 y viceversa.

Teniendo en cuenta la interoperabilidad entre todas las versiones del protocolo, no hay "hacer un cambio", ya que son la misma familia. Se trata de "¿Necesito usar una versión más nueva?". Al igual que con cualquier otra área, la respuesta a esta pregunta dependerá de si la versión actual que está utilizando tiene limitaciones o no. Actualmente no hay problemas con el uso de SSLv3, pero la mayoría de los clientes y servidores trabajan con TLSv1.0.

Espero que esto aclare un poco la imagen. Si no es así, avíseme qué sigue siendo confuso. Intentaré explicarlo más.

Nasko
fuente
0

¿TLS es la "nueva" versión de SSL? ¿Qué características agrega o problemas de seguridad que aborda?

TLS es T ransporte L ayer S ecurity y generalmente se refiere al comando STARTTLS en servidores de correo SMTP. Puede o no usar SSL (vea Palm versamal para un ejemplo) pero en general SSL es el principal sistema de seguridad utilizado. TLS también se ha utilizado para otros fines (como HTTP) y la última especificación de RFC está en la versión 1.2

¿Puede cualquier cosa que admita SSL admitir TLS? ¿Qué implicaría hacer el cambio? ¿Vale la pena el cambio?

Por lo general, pero por cualquier motivo, con TLS como consideración, se está refiriendo a los servidores de correo, por lo que específicamente los servidores de correo que tienen un certificado SSL pueden usar TLS para transferir correo y recibir correo.

¿Por qué los correos electrónicos se envían a través de "TLS oportunista" y VPN a menudo llamados SSL VPN? ¿Hay alguna diferencia en la tecnología, quizás creando espacio para una línea de productos "TLS VPN"?

Esto huele a las cabezas de carne de marketing que entraron en la habitación. "TLS oportunista" simplemente significa que si starttls no devuelve un 220 (Listo para iniciar TLS), continúe y envíe el correo electrónico de todos modos. Tenga en cuenta que TLS es una opción de ENVIAR, no una opción de receptor, podría ser posible con algunos servidores de correo rechazar el correo que no sea TLS, pero esa sería la excepción, no la regla.

TLS también admite la autenticación mutua y no simplemente el cifrado de una conexión.

Enviar un correo electrónico a través de una VPN (ya sea SSL u otro esquema de seguridad) simplemente hace que la seguridad de los servidores de correo sea esencialmente irrelevante, puede usar TLS sobre una VPN (e incluso puede usar TLS como el esquema de seguridad de VPN) pero no necesariamente afecta cómo el correo se transporta si solo se encripta la conexión VPn entre servidores de correo (por lo tanto, desde los servidores de correo de origen y de destino, podrían estar transmitiendo texto en claro estándar)

Jim B
fuente
Siento disentir. TLS generalmente no se refiere al comando STARTTLS en SMTP. Cualquier documentación que lea se referirá a TLS como el protocolo TLS, que SMTP utiliza para proteger su tráfico. Ahora, cuando se trata de "TLS oportunista", puede involucrar protocolos de nivel superior que tengan la "oportunidad" de usar TLS o no.
Nasko
Sin duda, puede estar en desacuerdo; sin embargo, si pregunta a 10 administradores para qué TLS se utiliza, 9 responderán por correo electrónico. Incluso la pregunta supone correos electrónicos con respecto a TLS. También menciono que TLS se usa para otras cosas. RFC 2434 define qué cifrados se pueden negociar en el mensaje de saludo del servidor; no tiene nada que ver con TLS oportunista. SMTP no define ningún cifrado. RFC 3207 define StartTls como una extensión de servidor
Jim B
"TLS" solo se refiere a "STARTTLS" incorrectamente. STARTTLS es solo una palabra clave para generalizar el enfoque, pero requiere integración en el protocolo inicial. El comando STARTTLS tiene un aspecto similar en SMTP e IMAP, pero debe integrarse en la sintaxis en LDAP; el mismo mecanismo en S-HTTP (no HTTPS) no usa esa palabra clave. No es porque los clientes de correo ofrecen una opción entre "SSL" y "TLS" para significar una elección entre SSL / TLS inicial y oportunista que su uso del nombre es correcto. Apuesto a que algunos servidores SMTPS admiten TLSv1 muy bien, por adelantado. También puede ver algunos SSLv3 después de usar STARTTLS.
Bruno
1
Esa respuesta es incorrecta. STARTTLS es un comando utilizado en muchos protocolos (por ejemplo, SMTP) para iniciar TLS o SSL. Aparte de eso, son irrelevantes.
Nikos