
02.03.2009, 18:25
|
|
Новичок
Регистрация: 11.02.2009
Сообщений: 20
С нами:
9076587
Репутация:
13
|
|
помогите добить...
Что имеем:
-2 хеша паролей админов МД5 (которые нигде не подбираются и не находятся)
-уязвимость sql inject
-куки проверяются усложненным методом (учитывается ip и user agent)
вот функция:
PHP код:
function isValid() {
global $db;
$mintime = (time()-$this->expiretime);
$db->query("DELETE FROM ".$db->prefix("session")." WHERE time<$mintime");
$sql = "
SELECT
u.uid,
u.uname,
u.pass,
s.hash
FROM ".$db->prefix("session")." s
INNER JOIN ".$db->prefix("users")." u ON u.uid=s.uid
WHERE s.hash='".$this->sessionID."'";
if ( !$result = $db->query($sql) ) {
return false;
}
list($uid, $uname, $pass, $hash) = $db->fetch_row($result);
if ( !empty($uid) ) {
if ($this->sessionID == md5($uid.':'.$pass.':'._HTTP_USER_AGENT.':'._REMOTE_ADDR)) {
$this->uid = $uid;
$this->uname = $uname;
$this->pass = $pass;
$this->hash = $hash;
return true;
}
}
return false;
}
какие будут предложения?
и возможно ли с помощью sql inject редактировать БД ?
|
|
|