Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > PHP: Общие вопросы > как защитить cookie? |
Автор: rew 4.1.2013, 16:52 |
С новым годом !!! У меня такой вопрос. Хочу чтобы люди каждый раз не логинились на моем сайте. Для этого я записываю id пользователя в куки, жизнь куки поставил -1. Куки шифрую, вообще я изпользую codeigniter там это просто делается. Но как защитить моего пользователя от кражи куки ??? Хочу еще дополнить следующие хранить ip адреса не очень хорошая идея, так как провайдеры в некоторых странах почти каждый день меняют ip |
Автор: Arantir 4.1.2013, 21:57 |
Вы уверены, что думаете в правильном направлении? Вы знаете о политике безопасности браузеров? Знаете способы воровства cookie? Если ответы "да, нет, нет", то вы должны сменить все на прямо противоположное. Не задавались вопросом, почему вот никто особо куки не шифрует, а вам вдруг понадобилось? И никого же из-за этого не ломают. Вот на этом форуме куки авторизации - это ID в чистом виде и простой хеш пароля. И на взлом никто не жаловался. А может потому, что шифровать куки от кражи - это вообще глупость? Если я подставлю себе чужие зашифрованные куки - то без проблем войду на сайт под чужим именем. Потому что куки передаются серверу как есть. И какие бы они не были зашифрованы, сервер никогда не узнает, я это или не я. Просто потому, что куки - это тупо статические данные, а не динамически генерируемые на основе шифровального ключа. Браузер никогда не выдаст одному сайту куки другого сайта. Чтобы украсть куки сайта, нужно выполнить, например, js-скрипт, с этого же сайта. Просто запретите пользователям использовать тег <script> где бы то ни было. А чтобы взломать сам браузер, то понадобится куда больше ресурсов и опыта, и для конкретного сайта таким никто заниматься не будет - себе дороже. |
Автор: Sanchezzz 5.1.2013, 08:34 |
Защита кук очень проста нужно httpOnly параметр установить в true тем самым это избавит нас от краж кук через JS, через JS их достать нельзя будет и не будет видно в window.cookie Используйте httpOnly на важных моментах, PS этой технологии уже 8 лет) В codeigniter по умолчанию вроде использует httpOnly. Шифвровка бред я бы такой ахиней не замораживался. |
Автор: skyboy 5.1.2013, 10:27 | ||
люто, бешено плюсую |
Автор: rew 6.1.2013, 14:07 |
спасибо просветили !!! а насчет шифрования пусть будеть, зачем лишнее показывать, тем более в codeigniter это делается очень просто. |
Автор: rew 9.4.2013, 09:11 |
у меня на сайте в куках есть id_user, я через firbug изменил его, потом обновил страницу и зашел под другим пользователем |
Автор: Arantir 9.4.2013, 09:49 |
Ну кто же вам виноват, что вы так сделали... Про сессии никогда не слышали? В куках хранится ID (строка из 26 символов, подобрать наугад невозможно) сессии, а все важные данные в самой сессии, на сервере. С правильными заголовками о безопасности куки позаботится сам браузер. |
Автор: Sanchezzz 9.4.2013, 11:41 |
Ужас, коровий стыд), надеюсь урок вы выучили и нужно переделывать на сессии . |