¿Por qué necesita cerrar la ventana de su navegador después de cerrar sesión en un sitio web?

37

Puede que esté equivocado, pero creo que la solicitud de cerrar la ventana del navegador después de cerrar la sesión es común, aunque no está claro cuáles son los riesgos de no cerrar la ventana del navegador (suponiendo que el navegador esté completamente actualizado) fecha) y por qué, lo que es más importante, los navegadores no pueden mitigar la amenaza sin cerrar la ventana del navegador. Por último, ¿es mejor cerrar el navegador que simplemente cerrar una ventana / pestaña dentro del navegador?

    
pregunta blunders 20.05.2015 - 17:22
fuente

5 respuestas

36

Después de un poco de búsqueda, parece que algunos bancos están dando este consejo después de un ataque a un banco que permitió a los usuarios o sitios web maliciosos reutilizar las cookies persistentes después de que un usuario haya cerrado la sesión, supuestamente porque otras pestañas del navegador se dejaron abiertas en el sitio en cuestión y, por lo tanto, el navegador aún no ha eliminado las cookies.

La razón por la que tal vulnerabilidad sería posible indica que alguno de los dos mecanismos de seguridad siguientes ha fallado:

  • El navegador no ha impuesto una política del mismo origen estricta entre los sitios, lo que permite una tercera - el sitio de terceros para acceder a las cookies de su banco (O para computadoras compartidas, dejó una pestaña abierta y la usó un usuario de terceros que no es de confianza)
  • El sitio web del banco no ha invalidado, o incorrectamente, sus cookies, ya que ha cerrado la sesión

En lo que a mí respecta, ya puedo concluir que este "consejo" es el teatro de seguridad usado por algunos sitios web para rechazar sus propias responsabilidades hacia los usuarios. Lo cual, obviamente, es muy incorrecto, ya que incentiva a los usuarios a perder el esfuerzo y el tiempo aplicando medidas tontas en lugar de solucionar el problema donde ocurre.

Los sitios web tienen dos funciones al cerrar la sesión de un usuario, de acuerdo con OWASP :

  1. Invalide el estado del usuario en el lado del servidor, lo que evitará que cualquier consulta del cliente se reproduzca o se elabore
  2. Invalide la cookie de sesión (así como las cookies que contienen información a la que normalmente se puede acceder solo para los usuarios autenticados en el sitio web, para aplicaciones web) en el navegador, para garantizar que no haya información disponible para el próximo usuario del navegador del cliente
  3. Los sitios web pueden incluso ir un poco más lejos y garantiza que todas las pestañas abiertas en un dispositivo se actualicen en el cierre de sesión del usuario . Esto incluso puede eliminar la necesidad de que los usuarios se aseguren de cerrar todas las pestañas detrás de ellos.

Por lo tanto, en un mundo donde los desarrolladores de sitios web respetan sus deberes, no debería haber ninguna base para seguir un consejo tan tonto. Y si los sitios web no lo hacen, es probable que sea responsable de no tomar los medios necesarios para proteger los datos personales de los usuarios .

    
respondido por el Steve DL 20.05.2015 - 17:40
fuente
8

Debe cerrar su navegador web (para evitar la divulgación de información privada) si ...

  1. Alguien podría acceder a la computadora después de que lo hagas

  2. La respuesta HTTP (de la información confidencial) no establece correctamente el encabezado Cache-Control

Por ejemplo, vaya a yourbank.com y observe su cuenta. Haga clic en cerrar sesión. Haga clic en el botón Atrás. ¿Ves la información de tu cuenta? En algunos sitios, en otros no, según el encabezado del caché.

Vaya a yourbank.com y observe su cuenta. Tenga en cuenta la URL. Haga clic en cerrar sesión. Cierre su navegador (todas las ventanas / procesos). Abra su navegador de nuevo con la URL indicada. ¿Ves la información de tu cuenta? Usted no debe.

El encabezado HTTP correcto es:

Cache-Control: no-store, must-revalidate

En el caso de que un usuario tenga el mismo sitio abierto en varias pestañas (pero solo cierre sesión en una), puede hacer que el navegador vuelva a cargar la página (mostrando así la pantalla de inicio de sesión) usando el siguiente encabezado

Refresh: N

Donde N es el número de segundos hasta que caduque la sesión del usuario + un pequeño búfer. Todavía sería vulnerable por un período, pero no para siempre.

    
respondido por el Neil McGuigan 20.05.2015 - 17:33
fuente
5

Este consejo se suele dar a las soluciones de inicio de sesión único (SSO). Esto es para una colección de sistemas, donde un usuario solo inicia sesión una vez. La autenticación del usuario es manejada por un sistema central llamado Proveedor de Identidad. Después del inicio de sesión, se establecen dos sesiones con el sistema solicitado y con el propio proveedor de identidad. Al visitar un nuevo sistema, la sesión existente con el proveedor de identidad se utiliza para crear una sesión con este nuevo sistema sin solicitar credenciales nuevamente.

Realizar un cierre de sesión único (SLO) es un problema complejo, ya que debe invalidar las sesiones de cada sistema visitado. Con frecuencia, el SLO se implementa simplemente dando este consejo para cerrar el navegador, invalidando así todas las credenciales de las sesiones.

    
respondido por el Jasper 20.05.2015 - 21:07
fuente
2

Esta técnica se usa a menudo cuando un sitio web utiliza autenticación básica o de Windows, ya que no hay una manera de "cerrar sesión". En lugar de utilizar cookies, el mecanismo de autenticación se agrega como encabezado de autorización a cada solicitud enviada al sitio web. Para la autenticación básica sería el nombre de usuario / contraseña en una cadena codificada en base64 y para la autenticación de Windows contiene valores pertenecientes a la autenticación NTLM o Kerberos. Por lo tanto, cerrar el navegador es la solución más rápida y segura.

Esto contrasta con el uso de la autenticación de formularios donde se puede cerrar una sesión simplemente expirando la cookie y eliminando la sesión de la aplicación.

    
respondido por el user2320464 26.05.2015 - 02:19
fuente
0

Es difícil saber qué piensan los bancos, pero hay un beneficio real al cerrar su navegador después de que se haya desconectado de un banco u otro sitio sensible.

Los navegadores no son perfectos y nunca serán perfectos. El espacio de memoria del navegador puede contener información confidencial como nombres de usuario, contraseñas, tokens, saldos de cuentas, etc. Esto NO DEBE estar disponible para un atacante, pero como todos sabemos, ningún programa es completamente seguro. Como vimos en Heartbleed, un exploit tiene el potencial de filtrar esa información confidencial a terceros. Cerrar el navegador e iniciar un proceso completamente nuevo borra la memoria y elimina esta posible vía para fugas.

    
respondido por el Steve Sether 26.05.2015 - 01:04
fuente

Lea otras preguntas en las etiquetas