security - español - ¿Cómo puedo evitar el secuestro de sesiones simplemente copiando una cookie de la máquina a otra?
ataque session hijacking (2)
La mayoría de las aplicaciones web utilizan cookies para administrar la sesión para un usuario y le permiten permanecer conectado incluso si el navegador estaba cerrado.
Supongamos que hicimos todo lo que estaba en el libro para asegurarnos de que la cookie en sí está guardada.
- encriptar el contenido
- configurar solo http
- establecer seguro
- ssl se utiliza para la conexión
- Comprobamos la manipulación del contenido de la cookie.
¿Es posible evitar que alguien con acceso físico a la máquina copie la cookie y la reutilice en otra máquina y así se robe la sesión?
Este riesgo es inherente al uso de cookies para autenticar sesiones: la cookie es un token de portador, cualquier persona que pueda presentar la cookie está autenticada.
Esta es la razón por la cual usted ve protecciones adicionales tales como:
- cierre de sesión automático después de un cierto período de tiempo o período de inactividad;
- huella dactilar del dispositivo ;
- requiriendo una nueva autenticación para acciones críticas (por ejemplo, hacer una transferencia bancaria o cambiar su contraseña).
No tiene sentido "proteger" contra esto. Si este tipo de copia ocurre, entonces:
- El usuario final lo hizo a propósito porque quería cambiar las computadoras. Esto, por supuesto, no es algo que deba preocuparte o preocuparte.
- Un atacante ya ha comprometido el navegador del usuario y ha obtenido acceso a las cookies almacenadas en su interior. Por definición, esta cookie es un secreto que demuestra la identidad del cliente HTTP. Si el atacante ya tiene acceso a él, ya puede usarlo en cualquier número de formas de su elección que no podrá evitar o distinguir del usuario real que accede al servidor legítimamente.