¿Se almacenan en caché las claves de sesión TLS en un navegador?

3

Por ejemplo, al autenticarse en un servicio protegido por TLS y luego cerrar la pestaña, a veces puede volver a conectarse al servicio sin volver a autenticarse.

En la preservación del perfecto secreto hacia adelante, la clave debe eliminarse después de que finalice la sesión. ¿La sesión solo "termina" cuando el navegador se cierra, o hay una caducidad similar a "Time To Live" en las claves de sesión que no están en uso?

    
pregunta Gary Lasereyes 27.07.2015 - 19:55
fuente

1 respuesta

4
  

¿Se almacenan en caché las claves de sesión TLS en un navegador?

Sí, a veces, pero no como lo estás describiendo.

La respuesta básica más simple para usted es "Sí, las sesiones se almacenan en caché hasta que se cierra el navegador". Eso no es del todo cierto, o cierto en todos los casos, pero es una creencia razonablemente segura para usted. para basar tus acciones en.

  

al autenticarse en un servicio protegido por TLS y luego cerrar el   pestaña, a veces puede volver a conectarse al servicio después sin   volver a autenticarse.

Lo que estás describiendo aquí es que te autenticaste en una aplicación web que navegaste usando una conexión TLS. A menos que se le haya pedido que proporcione un certificado de cliente la primera vez, la autenticación no es para TLS, sino para la aplicación.

Esa aplicación probablemente esté utilizando cookies, y esas cookies significan que cuando regresas a otra pestaña, te reconoce y no necesita autenticarse nuevamente. Dependiendo de la configuración, este estado autenticado también puede persistir después del cierre y reinicio del navegador, la suspensión del sistema y el cambio de la dirección IP. He tenido sesiones web autenticadas en ambos lados de un día de viaje aéreo.

(Incluso si se le solicitó un certificado de cliente ... los navegadores recordarán su certificado seleccionado y lo volverán a presentar según sea necesario hasta que cierre el navegador. Cerrar la pestaña no afectará eso).

  

En la preservación del perfecto secreto hacia adelante, la clave debe eliminarse   después de la sesión termina. ¿La sesión solo "termina" cuando   el navegador se cierra, o hay un "Time To Live" similar a la caducidad en   ¿Las claves de sesión no están en uso?

De manera realista, la aceleración proporcionada por reanudación de sesión supera el potencial negativo de reutilizar las claves: tenga en cuenta que la mayoría de las transacciones HTTP son sorprendentemente pequeñas, mientras que PFS se convierte en una preocupación práctica mayor con los protocolos como IPSec que estarán disponibles durante días / semanas / meses e intercambiarán grandes porciones de datos.

Por lo tanto, en términos prácticos, los navegadores recordarán las ID de sesión TLS recientes y las utilizarán para intentar un acceso directo al proceso de negociación TLS. Cerrar una pestaña no hará que se olviden (aunque probablemente sí se cerrará el navegador). Se utilizan invisiblemente; el uso de uno reduce los 4-8 paquetes de ida y vuelta al configurar TLS y, por lo tanto, acelera la conexión.

Pero, de nuevo, esto no tiene nada que ver con la autenticación que pueda ver, y se lleva a cabo de manera silenciosa, entre bastidores.

El "tiempo de vida" está determinado tanto por el cliente (que tiene que recordar el ID de sesión) como por el servidor (que también tiene que recordar el ID de sesión). Hay un buen artículo aquí que habla sobre cómo ajustar la memoria caché de varios servidores para limitar la cantidad de sesiones pasadas que se verían comprometidas si el servidor se ve comprometido.

Y esta interesante la respuesta sugiere que Chrome y Opera almacenan las claves de sesión infinitamente hasta que se reinicia el navegador (u otras situaciones limitadas).

    
respondido por el gowenfawr 27.07.2015 - 20:41
fuente

Lea otras preguntas en las etiquetas