Форум : WarCraft II

Название : Поменял тип авторизации на сайте: cookies на sessions

© 2005 www.runcms.org
https://www.war2.ru

URL этой темы
https://www.war2.ru/modules/newbb_plus/viewtopic.php?topic_id=2380&forum=1


 il :

6.3.19 19:14
 Убил полдня на кривой движок и вникание в особенности разных версий ПХП, но цель достигнута:
Удалось запустить одну простую вещь: поставил галочку в настройках движка:
использовать сессии, а не куки.

Полдня разбирался, почему эта галочка приводила к вылетанию после авторизации на сайте в белый экран.
Но вот сейчас кажется все глюки побеждены.
Во всяком случае, авторизоваться удалось!

Однако, возможны побочные эффекты.
1. Конечно, Вам придется залогиниться заново, используя свой логин-пароль.
2. Понятия не имею какие еще могут быть эффекты - скорее всего, что-то с авторизацией. Типа самопроизвольного разлогинивания и т.п. Какая-нибудь чехарда в случае залогинивания с нескольких устройств. Пока заметил, что если на одном из них разлогиниться - разлогинивает сразу и на всех остальных. Не знаю, раньше было так же или нет.
3. Еще возможно появление пустого белого экрана после какого-нибудь действия. Об этом, пожалуйста, мне сразу сообщайте!

Также не очень представляю, если зайти на сайт, и не выходить - сколько времени сайт будет помнить залогинившегося?
Хочется сделать, чтобы долго: 1 раз зашел и забыл, а дальше - только когда систему переставишь.
Но пока смотрим, все ли работает хотя бы так и вылавливаем глюки.

Зачем это было нужно:
Сессии гораздо безопаснее, чем куки.
Например: до недавнего времени сайт был уязвим для огромной кучи всевозможных атак: можно было сформировать хитрый GET или POST-запрос и получить полный доступ к сайту, прочитать любое содержимое базы, в том числе конечно хеш пароля любого пользователя.

Теперь же, надеюсь, эта ситуация должна быть исправлена: враг не пройдет.
Но исходим из того, что хеши паролей всех пользователей скомпрометированы, т.е. украдены.

Смогут ли хакеры восстановить пароли по украденным хешам - не уверен. Если пароль достаточно простой, например, слово из словаря или число - да, несомненно. Если же он немного сложнее - сомневаюсь, что это будет кому-то интересно.
Но, возвращаясь к переключению авторизации на сессии, зачем это было нужно:
Например, хакер, зная хеш пароля, мог авторизоваться на сайте, даже не зная самого пароля, передав этот хеш через куки.
Теперь же, этот номер у него не пройдет.

Будем считать, что пока хеш Вашего пароля не расшифрован - Ваш аккаунт в безопасности.
Стоит ли менять пароль сейчас - я пока не буду. Понаблюдаю за ситуацией. Надеюсь, что мой пароль не будет расшифрован, а если расшифруют - в худшем случае полного разрушения всего, до чего можно дотянуться с помощью этого пароля - восстановлю из вчерашней копии.
А все ли дыры безопасности закрыты - это уже будем наблюдать. Хочется надеяться.

[ Редактировано il в 6.3.19 18:17 ]

[ Редактировано il в 6.3.19 18:18 ]

[ Редактировано il в 6.3.19 18:18 ]

[ Редактировано il в 6.3.19 18:21 ]

 FX :

6.3.19 20:38
 Это не это?

Цитата:

2.3.4 Идентификатор сессии
На некоторых сайтах принято использовать идентификатор сессии – то есть каждый посетитель при заходе на сайт получает уникальный параметр &session_id=, который добавляется к адресу каждой посещаемой страницы сайта.

Использование идентификатора сессии позволяет более удобно собирать статистику о поведении посетителей сайта и может использоваться для некоторых других целей.

Однако, с точки зрения поискового робота страница с новым адресом – это новая страница. При каждом заходе на сайт поисковый робот будет получать новый идентификатор сессии и, посещая те же самые страницы, что и раньше, будет воспринимать их как новые страницы сайта.

Строго говоря, поисковые системы имеют алгоритмы «склейки» зеркал и страниц с одинаковым содержанием, поэтому сайты, использующие идентификаторы сессий, все же будут проиндексированы. Однако, индексация таких сайтов затруднена и в некоторых случаях может пройти некорректно. Поэтому использование на сайте идентификаторов сессий не рекомендуется.

Из http://tutorial.semonitor.ru/#234

 il :

7.3.19 02:28
 Цитата:

Это не это?

Это один из вариантов реализации сессий, далеко не самый лучший по описанным причинам.
У нас сессии хранятся в куках.
Передача сессий через url в принципе возможна, но я специально проверил, что она отключена.
Хотя, сам движок при открытии самой первой страницы после авторизации выдает почему-то урл, в конце приписывая цифры. Цифры какие-то левые и выдает он их не так, но видимо разработчики что-то хотели этим сказать, да не доделали.

[ Редактировано il в 7.3.19 01:30 ]

 il :

7.3.19 12:00
 А вот и первый найденный момент:
комп забывает меня приблизительно за час, может, чуть больше.
За ночь точно. Вчера залогинился, сегодня опять надо.
UPD:
увеличил время жизни сессии с одного часа до одного месяца. Теперь можно раз в 2-3 недели заходить, и этого достаточно чтобы оставаться залогиненным.
Не самый безопасный подход, но зато быстро и просто.

Банковские транзакции я пока этой системе все равно доверять не планирую, а такой "риск" для безопасности не идет ни в какое сравнение с тем "решетом", которое было раньше, когда шаг вправо, шаг влево, и у тебя в кармане полный доступ к базе и заодно ко всему хостингу.

[ Редактировано il в 7.3.19 23:13 ]

© 2005 www.runcms.org
https://www.war2.ru

URL этой темы
https://www.war2.ru/modules/newbb_plus/viewtopic.php?topic_id=2380&forum=1