(session and cookie) перезапись в авторизации.

Печать RSS
278

П

Пацак
0
10. 6680, зайдешь, как администратор.
F
Автор
Землянин
0
т.е. в nothing' union select * from users where email='admin_email'# заменяешь то что синим на мыло админа (которое ты должен знать) вставляешь в строку мыла дальше не чего не заполняя нажимаешь вход и заходишь с учетки того человека чье мыло вставил?
Изменил: fhgdfhdfhdf (15.10.2012 / 13:00)
П

Пацак
0
12. 6680, да. Хотя знать адрес не обязательно, можно просто по очереди заходить с разных пользователей.
F
Автор
Землянин
0
.....

Добавлено через 04:37 сек.
Все понял, сорри, ты прав... как от этого защититься можно?
Изменил: fhgdfhdfhdf (15.10.2012 / 13:16)
П

Пацак
0
14. 6680, addslashes или prepared statements
F
Автор
Землянин
0
Первое понял, это плюс ко всему что там есть вставляю этот обработчик и он все спец символы экранирует (или что то в этом роде) а второй вообще не понял.
А можно ведь ограничить число вводимых символов и удалить пробелы, тогда этот способ инъекции просто не пройдет из за кол-ва символов да еще и перестанет работать из за не правильной формулировки, такое может помочь?
П

Пацак
0
16. 6680, плохая идея, разве не бывает длинных адресов? Вместо пробелов можно использовать комментарии или скобки. Если и проверять e-mail, то регулярным выражением.
F
Автор
Землянин
0
ммм регулярное выражение хороший вариант) спасибо за помощь
=) а на счет длинного мыла, длиннее 32 символов чаще спамеры и боты используют =)


А вот что с COOKIE делать? Их не создает и не обновляет, пару раз обновились и то по не понятным причинам.( Ошибок не выдает.(

Добавлено через 02:44 сек.

Ваш положительный голос за пользователя Im-ieee успешно оставлен!
В данный момент его авторитет: 12
П

Пацак
0
18. 6680, попробовал запустить твой код, у меня все обновляет. Даже не знаю, что может быть. В базе хоть ключ обновляется?
Изменил: Петр (15.10.2012 / 14:27)
F
Автор
Землянин
0
В базе все супер, при каждой отправке мыла с паролем там новый ключ а вот в куках все тот же.

Сделал для теста вот так:

<?php
error_reporting(E_ALL);
setcookie("auth_key", "", time() - 3600);
print_r($_COOKIE);
 ?>

В ответ получаю:


Array ( [login] => 6680 [password] => 000000 [auth_key] => 18db656ece2a1b4772b6a9ef437e650f [PHPSESSID] => 5u2oserlufsgvlsrg31tob66u5 )

=(

Добавлено через 08:58 сек.
Сейчас попробовал вот так:
<?php
error_reporting(E_ALL);
setcookie("login", "", time() - 3600);
setcookie("password", "", time() - 3600);
setcookie("auth_key", "", time() - 3600);
print_r($_COOKIE);
 ?>

Получил:

Array ( [auth_key] => 18db656ece2a1b4772b6a9ef437e650f [PHPSESSID] => 5u2oserlufsgvlsrg31tob66u5 )
Изменил: fhgdfhdfhdf (15.10.2012 / 14:36)
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск