La inclusión del agente de usuario en la sesión proporciona cierta protección rudimentaria contra el secuestro de la sesión. Esto significa que si el atacante obtuvo acceso a la cookie de sesión, no puede simplemente usar la cookie en algún navegador aleatorio, sino que debe usar el mismo navegador, versión, subversión, etc. que el usuario original, o al menos saber cuál es el valor original del agente de usuario. Fue y hacer que el propio navegador use esto.
Si la identificación de la sesión se roba mediante el rastreo de tráfico (desprotegido), el agente de usuario también está fácilmente disponible dentro de los datos rastreados para que se pueda falsificar perfectamente. Si la cookie de sesión es robada por XSS o similar (es decir, la cookie no se configuró como httponly), el agente de usuario exacto no se conoce de inmediato, pero también puede recuperarse con algunos trucos (consulte el comentario de @ multithr3at3d en esta respuesta).
Por lo tanto, incluir el agente de usuario en la cookie de sesión no proporcionará una protección adicional relevante si su sitio es solo HTTPS (o al menos la cookie, es decir, tiene el indicador secure
) y la cookie no puede leerse por XSS (es decir, httponly
flag), que son las dos cosas que deberías hacer de todos modos.