Ver Mensaje Individual
  #6 (permalink)  
Antiguo 08/09/2004, 15:29
Nark
 
Fecha de Ingreso: agosto-2003
Mensajes: 102
Antigüedad: 20 años, 8 meses
Puntos: 0
Cita:
Iniciado por Cluster
Revisastes en php.net (www.php.net/ini_set) si todas las directivas que pretendes "forzar" en tiempo de ejecución (y que supongo que forzaras en todos los scripts que intentes usar sesiones) se pueden alterar vía ini_set() ? .. NO todas las directivas de PHP (en general) se pueden modificar de esa forma, algunas sólo se puede vía .htacces o sólo vía php.ini
Las unicas directivas que modifico son las que he puesto arriba, y en la documentación indican que son: PHP_INI_ALL, por lo tanto tendrian que funcionar los cambios.

Que metodo puedo utilizar para descubrir el problema?

Realmente lo considero un asunto grave, pues no es culpa del php.ini, directivas similares me funcionan en otros directorios... puede rozar la paranoia pero no entiendo porque no funcionan? que puede provocar algo asi?



Cita:
Iniciado por Cluster
Sobre el tema de seguridad en la propagación del SID .. tienes ya por defecto (PHP) la directiva:
session.referer_check

Que hace esa validación de "IP->Cliente"

De la versión en ingles de la documentación .. hay sale este documento (que no se si leistes)
http://www.acros.si/papers/session_fixation.pdf

Por mi parte prefiero propagar el SID en cookies (pese que ello implica que mis clientes han de permitir cookies, cosa que ya aviso). Y tiempo de expiración (session.gc_maxtimelife) corto o 0 junto con la cookie definida a 0 segundos de expiración. (configurado vía php.ini)

Un saludo,


Gracias no lo lei, ultimamente cuando entre en el manual de php.net automaticamente me lleva a la version española y veo que realmente hay mucha diferencia... muchas gracias por la información y por el enlace.

Leyendo el pdf (interesantisimo, por cierto) veo que tienes toda la razón, las cookies parecen las mas seguras.

Cambiando mi forma de trabajar:
ini_set("session.use_cookies", 1);
ini_set("session.use_only_cookies", 1);
ini_set("session.gc_maxlifetime", 60);

ahora ya funciona perfectamente todo... aunque seria curioso descubrir porque la configuracion no funcionaba...

por cierto en cuanto a:
session.referer_check
veo que tienes que poner la ip del cliente... pero tienes que saberla primero... asi que continuare con mi comprobación manual...

gracias de nuevo por todo

Última edición por Nark; 08/09/2004 a las 15:53