Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/06/2009, 10:29
filmixt
 
Fecha de Ingreso: septiembre-2008
Mensajes: 91
Antigüedad: 16 años, 4 meses
Puntos: 1
¿Es seguro este sistema?

He programado un sistema, a ver si alguien le encuentra algunas cosquillas que pongan en peligro la integridad del acceso a la página.

Cada usuario tiene un rango ("clase"), del cual, si la cookie no pertenece a un administrador, aún estando logueado se va a tomar viento fresco. Se puede quizas envenenar la cookie, pero desde mi punto de vista, no se puede vulnerar el sistema de comprobación de rango.

Código PHP:
// COMPROBAR COOKIES
if(strlen($_COOKIE[filmixt_user])>0){
        include(
"config.php");
        
$_COOKIE[filmixt_user] = addslashes($_COOKIE[filmixt_user]);
        
$_COOKIE[filmixt_clave] = addslashes($_COOKIE[filmixt_clave]);
        
$sokp2 mysql_query("SELECT user,clave,clase from usuarios where user='$_COOKIE[filmixt_user]'");
        
mysql_close($conectar); 
        if(!
mysql_num_rows($sokp2)){
        die(
"USUARIO NO ENCONTRADO EN DB: $_COOKIE[filmixt_user] inválido");
        } else {
                
$dat mysql_fetch_assoc($sokp2);
                
mysql_free_result($sokp2);
                
                if(!(
$dat[clave] == $_COOKIE[filmixt_clave])){
                die(
"CLAVE INCORRECTA");
                } else {
                        function 
logged(){}
                        
$user_FiM $_COOKIE[filmixt_user];
                        
$clave_FiM $_COOKIE[filmixt_clave];
                        
$rangoUS $dat[clase];
                }
        }
}

if(!
function_exists("logged")){
die(
"FUCK OFF :)");
} elseif(!(
$rangoUS == 'admin')) {
die(
"FUCK OFF :)");

Saludos!