hola chicos hasta hace no mucho tnia una web demo el cual hacia pruebas e invitaba usuarios a que probaran mi proyecto web resulta q por estar invitando a personas que desconoscia me hackearon adivinaron o usuaron algo para poder loguearse con mi pass y usuario segun me dijo el usuario anonimo que mi web era esto y aquello y q necesitaba mas seguridad en el login
no se que tiene mi login pero aca les dejo segun el uso algo llamado robot y pudo desencriptar mi pass atravez de un ataque sql inyeccion
Código PHP:
public function loginUser($user, $pass, $remember = false, $redirectTo = NULL){
/* ARMAR VARIABLES */
$username = strtolower($user); // ARMAR VARIABLES
$pp_password = (strlen($pass) == 32) ? $pass : md5(md5($pass) . $user);
/* CONSULTA */
$query = $this->db->select("u_miembros","user_id, user_password, user_activo, user_baneado","LOWER(user_name) = '{$username}'","","1");
if(!$query){
$query = $this->db->select("u_miembros","user_id, user_password, user_activo, user_baneado","LOWER(user_name) = '{$username}'","","1");
}
//
$data = $this->db->fetch_assoc($query);
if(empty($data)){
return '0: El usuario no existe.';
}
// CHECAMOS
if($data['user_password'] != $pp_password){
return '0: Tu contraseña es incorrecta.';
} else {
if($data['user_activo'] == 1){
/* CARGAMOS */
if($this->loadUser($data['user_id'],true)) { // CARGAR SESSION
//$this->update("u_miembros","",""); // LAST LOGIN
$sqlStm = "UPDATE u_miembros SET user_lastlogin = ".time()." WHERE user_id = {$data['user_id']} LIMIT 1";
$this->db->ejecutarConsulta($sqlStm);
/* COOKIE */
if($remember == true){
$cookie = base64_encode(serialize(array('tsUser'=> Sha1::koxEncode($username),'tsKey'=>$pp_password,'tsRem'=>$remember))); // CREAR COOKIE
$domain = '.'.getDomain();
createCookie($this->cookieName, $cookie, TRUE, "/", 3600);
}
/* REGISTAR IP */
$user_ip = Security::getIP();
$sqlStr = "UPDATE u_miembros SET user_last_ip = '{$user_ip}' WHERE user_id = {$data['user_id']} LIMIT 1";
$this->db->ejecutarConsulta($sqlStr);
/* REDERIGIR */
if($redirectTo != NULL){
Security::redirect($redirectTo);
}
else {
return true;
}
} else {
return '0: Error inesperado...';
}
} else {
return '0: Debes activar tu cuenta';
}
}
}