Estoy analizando cómo proteger un sitio web para que no le roben su cookie de sesión. Estos son los controles que sé que son ampliamente conocidos / utilizados:
- HTTPS en todas partes
- Utilice solo una cadena aleatoria creada de forma segura para el valor de la cookie
- Marque la cookie de sesión Segura y Http
- Cambiar la cookie de sesión al iniciar sesión
Estoy debatiendo usando una sugerencia que encontré en rastreador de errores Tomcat . Para cada sesión almacene la siguiente información adicional:
- ID de sesión SSL
- Agente de usuario HTTP
- Dirección IP remota
En cada solicitud, validaría que dos de los tres valores almacenados coincidan con lo que se captura en la sesión. De esa manera, uno de los tres podría cambiar por varias razones sin afectar al usuario. Sería altamente improbable que un usuario normal cambie más de uno por solicitud.
¿Esto parece una defensa adicional razonable para la cookie de sesión?