Ver Mensaje Individual
  #2 (permalink)  
Antiguo 17/06/2010, 09:40
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Seguridad con cookies

Si, veo un problema de seguridad.
La 'cookie' es una cabecera HTTP más, modificable por cualquier usuario que tenga el conocimiento necesario (que no es cualquiera, pero sí cualquiera interesado en un ataque).

Fijate que capturando *una* petición HTTP cualquiera del usuario a tu sitio (algún monitor de tráfico en la red, incluso por wifi si el usuario está en una red no cifrada) tengo todos los datos necesarios para ingresar. (basta manipular la cookie para darle un valor de expiración válido)

La seguridad web es muy compleja, las soluciones son complicadas y a veces ni vale la pena Buenas prácticas son:

- no usar cookies más que para almacenar el ID de sesión (una sesión es un conjunto de datos almacenados en el servidor y correspondientes a un cierto ID, que se envía al usuario a través de una cookie)
PHP hace las sesiones muy sencillas, no he visto aún (porque no lo he necesitado) cómo crearlas y manejarlas con Python. Supongo que los frameworks tipo django lo hacen automáticamente

- renovar el ID de sesión con cada petición, para evitar que el robo del ID de sesión sirva para dejar vía libre de entrada al ladrón.

- si es posible, usar un sistema de doble autentificación (por IP, por ejemplo: si un usuario cambia la IP en medio de una sesión, desconfía)

- usar HTTPS al menos para el formulario de ingreso, para que la contraseña no viaje como texto plano


Buscá en internet por
- session poisoning (envenenamiento de sesión)
- session fixation ("fijación" de sesión)
- session hijacking ("secuestro" de sesión)

Contestando a la segunda pregunta: la cookie no necesariamente se borra, pero se supone que no se vuelve a utilizar si está expirada. De todas formas sería mejor que controlaras ese valor de forma explícita, para evitar manipulaciones


saludos.