Foros del Web » Programando para Internet » PHP »

2 cositas sobre sesiones

Estas en el tema de 2 cositas sobre sesiones en el foro de PHP en Foros del Web. A ver, me han surgido un par de dudas mientras paseaba por la orilla del océano en Zahara... y digo yo... si tenemos un sistema ...
  #1 (permalink)  
Antiguo 01/09/2003, 15:58
Avatar de banyuken  
Fecha de Ingreso: diciembre-2002
Ubicación: Madrid
Mensajes: 83
Antigüedad: 15 años
Puntos: 0
2 cositas sobre sesiones

A ver, me han surgido un par de dudas mientras paseaba por la orilla del océano en Zahara... y digo yo... si tenemos un sistema al que los usuarios acceden por autenticación, en el que las sesiones se mantienen en el servidor sin ningún tipo de uso de cookies... (esto es por ilustrar, igual no tiene importancia con la primera duda que voy a plantear...) Y las sesiones se eliminan mediante un script que hay que invocar para salir de una manera correcta o pericosa del sistema; pudiera ocurrir que los típicos usuarios con prisa que ni saben lo que ven cerraran la ventana de sus navegadores sin ejecutar dicho script , con lo cual esas sesiones quedan en el servidor dejadas de la mano del administrador . ¿Existiría alguna manera de eliminar SÓLO esas sesiones automáticamente? Espero que .
La segunda de las casuísticas que me asaltaron es de una naturaleza un poco más rebuscada , al menos para mi. Si un usuario entra en el sistema AHORA (se crea su sesión y se inicializa y tal), y justo AHORA otro que ya había entrado previamente accede a una página dentro del mismo, cuya primera instrucción es "session_start()", y a la que no se le ha pasado el identificador de sesión de su usuario ni por URL ni por formulario... ¿Pudiera ocurrir que al obtener los datos de la sesión en ese script al que ha accedido el usuario del segundo AHORA observáramos que son los correspondientes al usuario que entró en el sistema en el primer AHORA ?
Es que intuyo que me ocurre algo así, ya que mis usuarios se suplantan unos a otros, se usurpan las identidades en busca de un completo anonimato cibernético ... vale, ya me callo.
Espero que alguien me saque de mis reflexiones con verdadero conocimiento, que destierren mis simples suposiciones.
Gracias, un saludo,
Banyú.
PD: Qué buena está el agua...
  #2 (permalink)  
Antiguo 01/09/2003, 16:12
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Leyendo www.php.net/session tenemos que hay dos directivas gc_probability y gc_maxlifetime que se encargan de borrar las sesiones "viejas". Pero no inmediatamente, sino pasado x tiempo.

Sobre la segunda, dudo que dos session_start() generen el mismo id de sesion, por muy proximos que esten en el tiempo. Lo que puede pasar es que usen "ingenieria social" para conseguir un id de sesion valido que poner en la URL. Por ejemplo, si propagas el id de la sesion por la URL, es muy facil que un usuario despistadillo ponga en un mensaje un link a otro mensaje con el id de sesion en el link. Entonces cualquiera que use ese link tomara la sesion del que puso el link. Tambien si propagas el id por URL, si un usuario sigue un link externo directo a la web del malhechor, en esa pagina se puede saber el id por la cabecera HTTP_REFERER, que el navegador envia con el valor de la pagina donde estaba el link.

Bueno, estas son un para de opciones que hay para esa "usurpacion".

Saludos.

PD: Dejar de beber el agua del par, que fijate lo que te hace pensar.
Cita:
PD: Qué buena está el agua...
__________________
Josemi

Aprendiz de mucho, maestro de poco.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:24.