VeneHosting.com :: Tu Hosting en Venezuela

Autor Tema: LAS SESIONES EN PHP NO SON TAN SEGURAS  (Leído 1541 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado GuruAjax

  • Novato
  • *
  • Mensajes: 6
  • Puntuación: 0
  • Sexo: Masculino
    • Ver Perfil
    • AJAXBASICO
LAS SESIONES EN PHP NO SON TAN SEGURAS
« : 20 de abril de 2008, 02:59:38 pm »
DIGO ESTO POR Q EN MI TESIS DE GRADO CONECTE VARIAS MAQUINAS AL MISMO TIEMPO Y SI ENTRABAS DE VARIAS MAQUINAS CON LA MISMA SESION ENTRABAN LA FORMA DE SOLUCIONARLO FUE EN LA BD DARLE UN STATUS Q CUANDO ESTUVIESE CONECTADO ESE USUARIO MAS NADIE PUDIERA ENTRAR CON ESA CLAVE Y USUARIO LUEGO TUVE Q ADERIRLE ONBEFOREUNLOAD DE JAVASCRIPT PARA Q NADIE ME CERRARA EL NAVEGADOR SIN LEER EL MENSAJE
Licenciado en informatica UDONS

Desconectado Pax

  • Moderador Global
  • Fanático
  • *****
  • Mensajes: 344
  • Puntuación: 4
  • Sexo: Masculino
    • Ver Perfil
    • Asi lo pienso, asi lo veo, asi lo escribo
Re: LAS SESIONES EN PHP NO SON TAN SEGURAS
« Respuesta #1 : 20 de abril de 2008, 08:57:23 pm »
"SI ENTRABAS DE VARIAS MAQUINAS CON LA MISMA SESION ENTRABAN LA FORMA DE SOLUCIONARLO FUE EN LA BD DARLE UN STATUS Q CUANDO ESTUVIESE CONECTADO ESE USUARIO"

Esto no es problema del php, sino del usaurio que se pone a iniciar sesion cuanta maquina existe en el mundo o en su defecto el tener un password muy facil de averiguar y alguie se conecte con su password, la solucion mas practica a esto y la mas comun es recomendar a los usuarios que el password es privado, y hacer que las cookies tenga una corta vida, y mueran digamos a los 15 minutos de inactividad algo asi... esto no es tan complicado de hacer...

Aunque tu soliucion es bastante ingeniosa pero que pasaria si a ese usuario le roban la clave, la cookie no vence nunca, y nunca cierran navegador... ????

"SI ENTRABAS DE VARIAS MAQUINAS CON LA MISMA SESION ENTRABAN LA FORMA DE SOLUCIONARLO FUE EN LA BD DARLE UN STATUS Q CUANDO ESTUVIESE CONECTADO ESE USUARIO"

Jamas he confiado la seguridad de ningun sistema a javascript, ya que con 2 click simplemente desabilitas el javascript y listo... claro puede obligar a los usuarios a tenerlo habilitado para que puedan navegar en tu pagina, pero no es la solucion ideal...
Un usuario mas...
Todas tus preguntas, consigues respuesta en google
Googlear no cuesta nada...

http://php.org.ve/index.php/topic,104.0.html <-- Normas criollas del foro

Desconectado ashrey

  • Fanático
  • ****
  • Mensajes: 431
  • Puntuación: 7
  • Sexo: Masculino
  • Wombat Team
    • Ver Perfil
    • Blog de ABerroteran
Re: LAS SESIONES EN PHP NO SON TAN SEGURAS
« Respuesta #2 : 22 de abril de 2008, 12:19:54 am »
No se puede culpar a PHP de que una apliacacion sea insegura. La seguridad de una plaicación debe ser establecida por el programador.

Desconectado GuruAjax

  • Novato
  • *
  • Mensajes: 6
  • Puntuación: 0
  • Sexo: Masculino
    • Ver Perfil
    • AJAXBASICO
Re: LAS SESIONES EN PHP NO SON TAN SEGURAS
« Respuesta #3 : 23 de abril de 2008, 09:25:09 am »
mira chamo quizas tenga razon pero prueba programa con tus sessions star yo incluso e entrado de varias maquinas al mismo tiempo de mi correo de gmail si es cierto es cosas no solamente de programador tambien de consultor de base de datos pero hagan el intento y si sabes al primero q me respondio no es necesario q un usuario de su clave para q un hacker pueda descubrirla si sabes de lo q hablo hasta para evitar estos ataques se ocultan los codigos php se ocultan las rutas y los mas audaces logran romper los parches y entran igual si no no hubiera ocurrido la violacion a la pagina del CNE y del Banco Central de Venezuela donde se robo mucho dinero
Licenciado en informatica UDONS

Desconectado tttony

  • Novato
  • *
  • Mensajes: 20
  • Puntuación: 0
  • Sexo: Masculino
  • tu != yo
    • Ver Perfil
Re: LAS SESIONES EN PHP NO SON TAN SEGURAS
« Respuesta #4 : 23 de abril de 2008, 12:40:22 pm »
algo se te esta escapando en ese script, y de que se puede hacerse mas seguro se puede la cosa es ir averiguando que esta mal... como dice ashrey el problemas no es php sino el programador...
Terminando un proyecto y espero que todo me salga bien.

Desconectado laymont

  • Novato
  • *
  • Mensajes: 29
  • Puntuación: 0
  • Sexo: Masculino
    • Ver Perfil
    • True Connections
Re: LAS SESIONES EN PHP NO SON TAN SEGURAS
« Respuesta #5 : 27 de abril de 2008, 01:24:31 am »
tratastes creando una variable en el servidor a iniciar una sesion? (login) y que antes de loguearte verifiques su valor (valor=usuario) si existe y es igual al que inicia no le permites el acceso!
Se alcanza el éxito convirtiendo cada paso en una meta y cada meta en un paso.

Desconectado [WiMaX]

  • Novato
  • *
  • Mensajes: 17
  • Puntuación: 0
  • Sexo: Masculino
    • Ver Perfil
    • Sistemas JVR - Soluciones Web + Soporte Tecnico
Re: LAS SESIONES EN PHP NO SON TAN SEGURAS
« Respuesta #6 : 28 de abril de 2008, 11:15:33 am »
Buenas dias, reitero el error no es de php si no del algoritmo de seguridad de tu aplicacion y para todo algoritmo siempre existira la fuerza bruta.

Desconectado eyanez

  • Novato
  • *
  • Mensajes: 16
  • Puntuación: 0
    • Ver Perfil
Re: LAS SESIONES EN PHP NO SON TAN SEGURAS
« Respuesta #7 : 20 de mayo de 2008, 06:48:14 am »
De hecho tiene razon las sessiones de PHP no son seguras pero no por ese motivo, es por la forma que se almacenan, un archivo o una cookie.

Aunque claro tu puedes escribir tu propia forma de almacenar, recuperar la session y obligar a php a usarlo con session_set_save_handler.

Por lo otro, puedes grabar un ID unico en el registro del usuario, cada vez que haces login lo generas, actualiza y lo cargas a la session, y luego en cualquier script comparas el almacenado en el registro de usuario con el que esta en session y listo.

No se para mi una solucion

Saludos

eyanez
« Última Modificación: 20 de mayo de 2008, 06:57:02 am por eyanez »
PHP5 Zend Certified Engineer,
MySQL 5.0 Developer Certified

Desconectado [VicMan]

  • Novato
  • *
  • Mensajes: 25
  • Puntuación: 0
    • Ver Perfil
Re: LAS SESIONES EN PHP NO SON TAN SEGURAS
« Respuesta #8 : 22 de mayo de 2008, 03:38:08 pm »
GuruAjax estas equivocado..

El problema tu forma de validación y el usuario que se conecta de todas partes con tu sistema.

Consejo, nunca uses javascript para cuestiones de seguridad...

Desconectado themillionaire

  • Novato
  • *
  • Mensajes: 28
  • Puntuación: 1
    • Ver Perfil
Re:LAS SESIONES EN PHP NO SON TAN SEGURAS
« Respuesta #9 : 15 de marzo de 2011, 05:13:25 pm »
estuve leyendo este tema porque estoy buscando algo referente
pense haber encontrado la solucion pero postearon que no se use javascript

mis interrogantes son 2?

1) como hago para que la sesion se cierre, si el usuario en vez de cerrar la sesion, cierra el navegador

2) como hago para trabajar con el tiempo de duracion de la sesion, no se ni como se define, no como se controla, nada de nada.

gracias de antemano.

Desconectado ashrey

  • Fanático
  • ****
  • Mensajes: 431
  • Puntuación: 7
  • Sexo: Masculino
  • Wombat Team
    • Ver Perfil
    • Blog de ABerroteran
Re:LAS SESIONES EN PHP NO SON TAN SEGURAS
« Respuesta #10 : 15 de marzo de 2011, 07:41:52 pm »
llama a
Código: [Seleccionar]
<?php 
session_set_cookie_params 
(0);
?>
antes del session_start, el cero indica que se termine la sessión al cerrar el navegador, si le pasas otro numero s toma como los segundos de duración de la sesión

Desconectado themillionaire

  • Novato
  • *
  • Mensajes: 28
  • Puntuación: 1
    • Ver Perfil
Re:LAS SESIONES EN PHP NO SON TAN SEGURAS
« Respuesta #11 : 16 de marzo de 2011, 08:13:53 am »
fino, gracias mi pana
otra pregunta
como no le establazco el tiempo de duracion de la sesion, la misma durara hasta que se cierre el navegador?

Desconectado themillionaire

  • Novato
  • *
  • Mensajes: 28
  • Puntuación: 1
    • Ver Perfil
Re:LAS SESIONES EN PHP NO SON TAN SEGURAS
« Respuesta #12 : 16 de marzo de 2011, 08:18:37 am »
ey me pasa otra cosa
se me ocurre que para que un usuario no pueda abrir otra sesion , si ya ha ingresado en el sistema, grabar un registro en la base de datos y borrarlo cuando se salga
pero esto podra funcionar siempre y cuando haga click en el boton de salir y no cierre el navegador
alguna sugerencia???

Desconectado ashrey

  • Fanático
  • ****
  • Mensajes: 431
  • Puntuación: 7
  • Sexo: Masculino
  • Wombat Team
    • Ver Perfil
    • Blog de ABerroteran
Re:LAS SESIONES EN PHP NO SON TAN SEGURAS
« Respuesta #13 : 18 de marzo de 2011, 12:07:42 am »
fino, gracias mi pana
otra pregunta
como no le establazco el tiempo de duracion de la sesion, la misma durara hasta que se cierre el navegador?
Si no lo envias, toma el tiempo que este configurado en el php.ini.

Con la otra pegunta creo que lo mas facil es "patear" al otro usuario, es decir que si me conecto desde un sitio, ya la sesión del anterior no sea válida.

Desconectado el_santo

  • Usuario Dedicado
  • ***
  • Mensajes: 192
  • Puntuación: 7
  • Sexo: Masculino
    • Ver Perfil
Re:LAS SESIONES EN PHP NO SON TAN SEGURAS
« Respuesta #14 : 18 de marzo de 2011, 08:19:18 am »
Si no lo envias, toma el tiempo que este configurado en el php.ini.

Con la otra pegunta creo que lo mas facil es "patear" al otro usuario, es decir que si me conecto desde un sitio, ya la sesión del anterior no sea válida.


La solucion de ashrey es la mas tipica, de hecho yo la uso :-P y la hago estableciendo un id de session en la bd cada vez ke logueo, mi pagina en cada chekeo verifica ke aparte ke el user tenga las credenciales la variable de session a la cual le asigne ese id sea igual a la de guarde en la bd al momento de loguear, cuando ese mismo user reloguea en otro sitio la session del ke ya estaba logueado invalida esa session anterior ya ke en bd ese usuario tendra otro id para su session, lo ke hace es ke solo se puede mantener una sola sesion con un login asi evitas que se riegue los datos por ejemplo de una suscripcion :-P,

------

lo de verificar si ya estaba iniciada la session de un user no permitir ke uno nuevo loguee con ese mismo login, se me ocurre crear un hearthbeat entre el user y la session ke haga chekeos cada cierto tiempo para mantener valida la sesion.

Ej
crear una tabla con las sessiones activas cuando ingreses un registro de session guardas la fecha y hora en la ke el user se ha logueado luego al ingresar al sistema como tal se crea un rutina (hearthbeat) en ajax ke cada x segundos actualize el registro en esa tabla de sessiones activas con la fecha y hora en el momento ke el hearthbeat se mande


Luego creas una rutina en php y la llamas desde cron

ke cada x segundos verifike si la session tiene mas de x tiempo sin actualizarse (interpretamos ke el user se largo) y borramos el registro


Obviamente si ya hay un registro valido en esa tabla, ese mismo user no deberia poder loguearse simultaneamente.


Suena a locura y es aparatoso,,, jejje pero no esta demas hacer lap rueba a ver de ke va el asunto.
Yo hablo php........!!!

PHP de Venezuela

Re:LAS SESIONES EN PHP NO SON TAN SEGURAS
« Respuesta #14 : 18 de marzo de 2011, 08:19:18 am »

 

PHP de Venezuela on Facebook