¿Por qué es malo almacenar los nombres de usuario en las cookies? [duplicar]

0

A comúnmente repetido el consejo a través de la web no es almacenar los nombres de usuario en las cookies.

Sin embargo, realmente no entiendo el problema. Lo que estoy haciendo en mi aplicación web es: genero un ID de sesión aleatorio de 16 bytes (convertido a hexadecimal de 32 bits) generado desde un CSPRNG, y almaceno el nombre de usuario y este ID de sesión en las cookies.

No hace falta decir que el hecho de que la existencia del ID de sesión y su correlación con el usuario se verifica desde una base de datos antes de realizar cualquier acción en la aplicación web. Estoy haciendo esto para acelerar un poco el acceso a la base de datos, y para protegerme contra el problema de las colisiones, donde un usuario puede verse autorizado como un usuario diferente debido a una colisión accidental.

¿Cuál es la debilidad de este esquema?

    
pregunta user2064000 20.05.2016 - 20:24
fuente

1 respuesta

1

Las personas que dicen eso están confundidas. Es necesario que no confíe ciegamente en los datos almacenados en las cookies para operaciones importantes, pero almacenar información no confidencial (y el nombre de usuario no es confidencial) en una cookie está bien. Simplemente no lo use para decisiones de seguridad sin validarlo primero.

Por lo tanto, almacenar el nombre de usuario en una cookie para decir "Bienvenido, Alice, inicia sesión". está bien. Pero confiando en que el usuario es Alice solo porque una cookie dice que no lo es. En ese caso, sería demasiado fácil para Mallory configurar su cookie en "Alice" y obtener acceso a la cuenta de Alice.

    
respondido por el Neil Smithline 20.05.2016 - 23:42
fuente

Lea otras preguntas en las etiquetas