title
Description
Body
Вот стал вопрос об авторизации.
На сколько безопасно хранить в куках у пользователя id и захешированый пароль?
Так же думаю, будет ли безопасна такая привязка:
$expl=explode('.', $_SERVER['REMOTE_ADDR']);
md5($passw.$expl[0].$expl['1'].strtok($_SERVER['HTTP_USER_AGENT'], ' '));
и этот хеш передать пользователю?
Или не стоит?
Как посоветуешь?
Отредактировано Akdmeh (2009.08.25 12:37)
Неактивен
Akdmeh написал:
На сколько безопасно хранить в куках у пользователя id и захешированый пароль?
, если у пользователя уведут эту куку, то смогут зайти по ним просто передав эту куку от себя. смотрим далее - вариант с проверкой юзер агента и части ip адреса. ну юзер агент тоже подменить не проблема, с ip конечно сложнее. безопаснее всего пользоваться https и авторизовываться с помощью чего-нибудь типа basic авторизации. все эти варианты с хэшированием паролей в куках имеют всегда примерно одинаковую степень защиты.
Неактивен
Да ну — связыватся с https и бейсик авторизацией нет ни опыта ни желания.
А в пунбб тоже похожая система(потому и спрашиваю):в punbb_cookie хранится засериализированный массив Array ( [0] => 118 [1] => хеш)
Как я понял, в первом — мой id, а во втором...
Что там хешируется, можно узнать?
Неактивен
я неп омню уже что там с авторизацией)) последний раз код этого форума я открывал.... эээ... ну очень давно)
Добавлено спустя 1 минуту 10 секунд:
просто я не особо беспокоюсь на счет того, что у меня там в куках, пусть даже открытый пароль. если человек дошел до того, что засветил свои куки, то ему уже ничего не поможет. ИМХО.
Неактивен
Я тоже подумал, что если у него вирусом украдут пароли, то форум — это не самое страшное, что может случится.
Вот вконтакте хранит захешированый пароль в куке, а в базе данных — вообще в открытом виде.
И ничего)
Ну привязку к ip не хочется делать, он действительно динамичный, а у пользователей оперы мини могут быть крупные проблемы...
Вот и думаю, что бы передавать, и сравниваю с другими системами)
Отредактировано Akdmeh (2009.08.25 13:33)
Неактивен
хеш в куке remixpass==твоему паролю в md5.
Раньше так точно было, может за этот месяц поменяли.
А в базе данных в открытом виде — когда даешь запрос пароля на восстановление, то возвращают старый, а не генерируют новый.
Отредактировано Akdmeh (2009.08.25 15:01)
Неактивен
Ну всё же...
Всё никак не решу.
Первичный план.
При авторизации проверяем его пароль с формы с базой, если всё норм - даём пользователю хеш, который есть случайно сгенерированной строкой.
Дальше проверка.
Если в куке будет нужный хеш - то авторизуем.
Если же нет - то не авторизуем.
При нажатии кнопки "выход" хеш будет вытираться, и соответственно все куки будут недействительные.
Плюсы метода - если я замечу взлом и кражу кук - мне просто стоит выйти, и та кука превратится в мусор, а у хакера будет только 32 байта мусора, и даже не будет хеша моего пароля, то есть, даже подбирать не будет чего.
Минусы - можно кражу не заметить.
2) если я буду выходить с одного браузера, то будет выходить сразу со всех.
Ещё одно поле в базе данных.
Как думаешь - подойдёт, или может посоветуешь что-то лучшее?
//кстати, с наступающим!
Неактивен
13 сентября - официально день программиста.
Ты ведь по профессии программист, то есть, тебя касается в первую очередь
Неактивен
аааа...) сегодня нужно ити писать заявления об увольнении...) конторе хана, как и зарплате за последние 2 с лишним месяца...
вот думаю, если все-таки дадут зарплату, то на нее можно будет жить несколько месяцев. за это время можно сварганить свою смс партнерку, и пытаться зарабатывать на ней...
Неактивен