¿Por qué los navegadores no restringen las cookies por pestaña para combatir los ataques CSRF?

2

¿Por qué las cookies se comparten entre las pestañas del navegador? ¿Evitar esto evita CSRF en sitios web de autenticación basados en cookies? ¿Se comparte la cookie entre las pestañas favoritas para acceder fácilmente al sitio web desde varias pestañas sin autenticación?

    
pregunta ProgramCpp 03.06.2017 - 10:32
fuente

2 respuestas

1

Sí, la cookie es una "cosa del navegador" ... no una "cosa de la pestaña". Es favorecer el inicio de sesión múltiple en el mismo sitio en diferentes pestañas, lo que en la mayoría de los casos es una ventaja.

Sí, tienes razón, en el caso hipotético de tener "pestañas" los ataques CSRF no tienen sentido porque, como creo que sabes muy bien, los ataques de falsificación de solicitudes en sitios cruzados se basan en:

  • Un usuario tiene una sesión ya existente en el sitio web A.
  • Luego, al hacer clic en un enlace malvado, tal vez en el sitio web B o en un correo electrónico o sin embargo, se realiza otra solicitud (esto generalmente se hace en otra pestaña) iniciando una solicitud falsificada tratando de hacer algo en el sitio web. ya configuró la sesión o cookie existente en el navegador de la víctima para realizar cualquier "acción malvada".

Si desea una sesión separada en un navegador, hay formas de lograrlo, como usar la navegación privada. Eso separa la sesión / cookies de las otras sesiones. Esto se debe a que es como "otra instancia del navegador", pero entre las pestañas de la navegación privada compartirá la sesión / las cookies de la misma manera.

Espero que ayude.

    
respondido por el OscarAkaElvis 03.06.2017 - 12:05
fuente
1
  

¿Por qué se comparten las cookies entre las pestañas del navegador?

Porque rompería todo el propósito de las cookies.

Una cookie tiene tres componentes:

  1. Un dominio
  2. Algunos datos
  3. Un vencimiento

Cada vez que su navegador realiza una solicitud http, revisa la base de datos de cookies (local) para detectar cookies que tengan un dominio que coincida con el de la solicitud; si encuentra alguna, la envía al servidor.

Este mecanismo fue creado para proporcionar persistencia para el http de otro modo sin estado. Sin cookies, deberíamos proporcionar nuestro nombre de usuario y contraseña en cada solicitud a un sitio autenticado.

Si las cookies se cambiaran de forma universal para cada ventana, muchas cosas se volverían rápidamente molestas. No solo tendría que volver a iniciar sesión en Amazon cada vez que abriera su navegador, sino que también tendría que iniciar sesión cada vez que lo abriera en una nueva pestaña, ya sea porque cerró la anterior cuando terminó de comprar. o porque está abriendo los resultados en pestañas para compararlos.

  

¿evitar esto evita CSRF en sitios web de autenticación basados en cookies?

Combatiría CSRF, sí. No sería infalible, ya que aún retendría las cookies de otros sitios en esa pestaña.

Si alguna vez intentaste aplicar esta política a un usuario, encontrarían de inmediato algún tipo de solución y, como resultado, probablemente obtendrían un sistema menos seguro.

Si quieres escribir un complemento de navegador para hacer esto por ti mismo ... adelante, pero sospecho que encontrarás que la experiencia del usuario es demasiado rápida.

    
respondido por el Xiong Chiamiov 03.06.2017 - 18:05
fuente

Lea otras preguntas en las etiquetas