Autor
|
Tema: Sistema de ingreso de usuario en PHP (Leído 25,379 veces)
|
jamarchi
Desconectado
Mensajes: 151
the best foro !!!
|
Hola SERBice Gracias por tu respuesta, oye, te agradezco toda la ayuda que me puedas dar.... yo lo unico que quiero es que la gente tenga que loguearse para poder ver la info privada.... Bueno de hecho ahora estoy chequeando un codigo que Hans el Topo me paso.... (gracias Hans ) validar.php<?php include ("includes/config.php"); include ("includes/funciones.php"); //nos conectamos a mysql $cnx = conectar (); if($_POST["entrar"]){ if($_POST["username"] && $_POST["pass"]){ $contraseña = md5("$_POST[pass]"); $query = mysql_query("SELECT * FROM usuarios WHERE nick='".$_POST['username']."'",$cnx); $datos = mysql_fetch_array($query); if($datos['pass'] == $pass){//si las pass son =// crea la cookie del user con la id el nick y la pass setcookie("id",$datos['id'],time()+90000); setcookie("nick",$datos['nick'],time()+90000); setcookie("pass",$pass,time()+90000); //redireccionas donde quieras login correcto } } } //pa la pag de error ?> De antemano gracias por la ayuda....
|
|
« Última modificación: 20 Abril 2007, 22:22 pm por jamarchi »
|
En línea
|
|
|
|
Luisango
|
A mi no me da ningun problema
|
|
|
En línea
|
Even better...
|
|
|
SERBice
|
Hola SERBice Gracias por tu respuesta, oye, te agradezco toda la ayuda que me puedas dar.... yo lo unico que quiero es que la gente tenga que loguearse para poder ver la info privada.... Bueno de hecho ahora estoy chequeando un codigo que Hans el Topo me paso.... (gracias Hans ) validar.php<?php include ("includes/config.php"); include ("includes/funciones.php"); //nos conectamos a mysql $cnx = conectar (); if($_POST["entrar"]){ if($_POST["username"] && $_POST["pass"]){ $contraseña = md5("$_POST[pass]"); $query = mysql_query("SELECT * FROM usuarios WHERE nick='".$_POST['username']."'",$cnx); $datos = mysql_fetch_array($query); if($datos['pass'] == $pass){//si las pass son =// crea la cookie del user con la id el nick y la pass setcookie("id",$datos['id'],time()+90000); setcookie("nick",$datos['nick'],time()+90000); setcookie("pass",$pass,time()+90000); //redireccionas donde quieras login correcto } } } //pa la pag de error ?> De antemano gracias por la ayuda.... ese codigo es vulnerable, bastará con que yo cree las cookies en mi navegador, y no importará si los datos son incorrectos ya qe no cmopruebas los valores de las cookies. Luego te pongo un ejemplo cno sesiones, es mas seguro.
|
|
|
En línea
|
|
|
|
Hans el Topo
Desconectado
Mensajes: 1.754
"Estoy cansado de no hacer nada"
|
claro que es vulnerable, desde luego xk faltan los comentarios iniciales en el que le puse que tenía que comprobar si los valores de las cookies son correctos y no intentos de lameradas, pero supongo que el muchacho estará bastante liado con tanto code como se ha posteado xD
cuando me ponga a realizar un ingreso de usuarios para mi próximo proyecto, comparto el code con vosotros (y de paso criticáis los posibles fallos/inseguridades) la idea seria crear un ingreso de usuario seguro como base para los foreros
|
|
|
En línea
|
|
|
|
|
Hans el Topo
Desconectado
Mensajes: 1.754
"Estoy cansado de no hacer nada"
|
llevo desde el comienzo del post advirtiendole de lo que tu acabas de decir... macho leete los temas antes de contestar xD
|
|
|
En línea
|
|
|
|
SERBice
|
llevo desde el comienzo del post advirtiendole de lo que tu acabas de decir... macho leete los temas antes de contestar xD no solo vos venis advirtiendo eso, no te cabrees nadie te va a quitar el merito de haber advertido. Yo tambien lo hago desde el inicio, sino fijate que estoy e este hilo desde los primeros post. Lo unico que hice fue "demostrar" con un ejemplo practico que es posible, para que jamarchi no se siga fiando de este code.
|
|
|
En línea
|
|
|
|
romi
Desconectado
Mensajes: 2
|
Estoy investigando y trabajando con este tema ...en mi opinion son mejores las sesiones, las cookies no son soportadas por todos los navegadores, otra cosa si no encriptas de alguna manera la contraseña (vi q usas md5), cualquiera que "tenga" acceso al directorio donde se guardan las cookies podra sacarlo de alguna manera, recordemos que las cookies quedan almacenadas en la maquina del usuario y no nos confiemos de que nadie podra sacar esa info. Otra cosa que estoy buscando todavia para termianr de convencerme...no hay manera de "hackear" una sesion...o sea puede darse el caso de que un snifer o algun programita o hacker nos saque del trafico de la red justo el paquete q contenga el id_session? o algun otro ataque mas o menos facil o no para hacerse de los datos de la sesion ...?¿? se entiende mi dudA=? Bueno espero que aporte algo...
|
|
|
En línea
|
|
|
|
SERBice
|
Estoy investigando y trabajando con este tema ...en mi opinion son mejores las sesiones, las cookies no son soportadas por todos los navegadores, otra cosa si no encriptas de alguna manera la contraseña (vi q usas md5), cualquiera que "tenga" acceso al directorio donde se guardan las cookies podra sacarlo de alguna manera, recordemos que las cookies quedan almacenadas en la maquina del usuario y no nos confiemos de que nadie podra sacar esa info. Otra cosa que estoy buscando todavia para termianr de convencerme...no hay manera de "hackear" una sesion...o sea puede darse el caso de que un snifer o algun programita o hacker nos saque del trafico de la red justo el paquete q contenga el id_session? o algun otro ataque mas o menos facil o no para hacerse de los datos de la sesion ...?¿? se entiende mi dudA=? Bueno espero que aporte algo... Error amigo, las sessiones si son mas seguras, pero te equivocas e lo del soporte de coockies. Mejor dicho, es verdad que algunos navegadores no soportan cookies, por lo tanto tampoco sesiones. las sesiones son "cookies del lado del servidor" y para el servidor saber que id de session le corresponde al visitante utiliza una cookie e el navegador, por lo tanto si el navegador no sooprta cookies las sessiones tampoco sirven. En lugar de guardar todas las cookies en el cliente se ahce en el servidor y se le da un identificador al cliente apra que el servidor lea la sesion con el identificador que tiene la cookie del cliente. Si, hay forma de obtener el session ID, simplemente puedes hackear la we con xss si es vulnerable o si tienes acceso a la "pc victima" peudes sacar el id_session a mano. pero de mucho no sirve aveces, mucha pagnas tienen caducidad de sesiones, y debes actuar rapido. La cookie con el id session po defecto en php es phpsesid.
|
|
|
En línea
|
|
|
|
jamarchi
Desconectado
Mensajes: 151
the best foro !!!
|
Hola Gente..... Pues me tuve que perder por un rato debido a circunstancias fuera de mi control pero ya estoy de vuelta..... Estaba lleyendo los comentarios que han puesto y se los agradezco.... lo que si me quedo claro con todo eso fue que el codigo de verdad que esta muy vulnerable..... asi que la pregunta seria.... que seria lo mejor uqe se puede hacer para tener un buen codigo Gracias.....
|
|
« Última modificación: 15 Mayo 2007, 23:58 pm por jamarchi »
|
En línea
|
|
|
|
|
|