1) Уязвимое Location. После редиректа, код будет продолжать выполняться.
2) Данные не фильтруются.
Смотрим функцию authUser() include/authUser
PHP код:
$authQuery='
SELECT userPasswd FROM '._AUTH_DB_TABLE.' WHERE
userId="'.mysql_escape_string($userId).'" LIMIT 1
';
if ($row['userPasswd']==md5($passwd)) {
Фильтрация есть,
с $userId не сможешь выйти за кавычки.
1) Уязвимое Location. После редиректа, код будет продолжать выполняться.
Не вижу актуальности этой "уязвимости".
Цитата:
login/studentlogin.php
PHP код:
if (!isset($_POST['studentid']) && !isset($_SESSION['studentid'])) {
// didn't enter anything!?
header('Location: /index.php');
exit;
}
И снова, бажный Location.
Я наверное не совсем понимаю, ГДЕ ЗДЕСЬ УЯЗВИМОСТО???
Во первых: Location - это аргумент ф-и, дело не в нем.
Уязвимости имеет ф-я header(), но только в том случае, если после нее НЕ стоит exit или die, только в этом случае код продолжит свое выполнение и мы сможем подделать HTTP запрос.
Так ГДЕ ЗДЕСЬ УЯЗВИМОСТЬ?
Последний раз редактировалось bug1z; 19.11.2009 в 19:29..