![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
поздно уже, может чего-то не догнал, но всё же
только что хотел запостить ссылку на другую тему, но пока она не перестроилась в ней сидел идентификатор сессии, видать на случай, если куки не включены (а зачем ещё?). и как-то всплыли в памяти слова Фельдмаршала, о том, как вдруг поисковик проиндексирует страницу, а проходящий мимо робот выцепит её. вопрос такой: сессия живёт на форуме постоянно при существовании той куки или каждый раз новая для определённого сеанса? если постоянно, её уничтожают, если пользователь вновь зайдёт, но уже без куки и заново авторизируется? как тогда на одного пользователя заводятся куки на разных компах, с разными идентификаторами сессии или одинаковыми? даёт ли в этом случае идентификатор сессии одназначную возможность войти на сайт под моим логином? Добавлено через 27 секунд вопрос может тупой, но хочется раз и навсегда прояснить его |
|||
|
||||
| teroni |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 381 Регистрация: 15.5.2007 Где: Днепропетровск Репутация: 8 Всего: 22 |
При заходе юзера создаётся сессия с определенным идентификатором. Этот идентификатор передаётся юзеру. Если включены куки - то он сохранятеся в куке, если куки отключены - то браузер добавляет этот идентификатор во все ссылки на той полученной странице. Также это умеет делать сервер, в зависимости от настроек. У юзера идентификатор и кука "забываются" при закрытии браузера. На серваке данные о сессии удаляются через определённое время от её старта.
Если некто в данный момент каким-то образом узнает мой иднтификатор сессии на каком-то сайте - то он сможет из своего браузера отправить его на тот сервер и зайти в мой личный кабинет. Но допустим через день ни он, ни я не сможем никуда попасть с этим идентификатором, т.к. на сервере данные, которые связаны с этим идентификатором будут уже удалены. Естественно, при каждом моём новом заходе мне дают разные индентификаторы сессии. Кроме сессий, куки от которых удаляются у юзера сразу после закрытия браузера, есть куки так сказать, длительного хранения. Благодаря этому нам не приходится здесь вводить каждый раз пароль. Если посмотреть на куки этого форума, то можно увидеть 3 интересующие нас. В одной хранится видимо айдишник юзера, в другой - хэш его пароля. Эти куки для каждого конкретного форумчанина на любом из его компов одинаковы и хранятся довольно долго. И есть кука, в которой сидит идентификатор сессии, она каждый раз разная и удаляется при закрытии браузера. Это сообщение отредактировал(а) teroni - 12.12.2008, 02:18 |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
записать свой пароль. с новым паролем можно записать новый почтовый ящик и переавторизоваться. всё - аккаунт твой. понятно такой вопрос, как отнесётся сайт к тому, что вроде только что работал человек с этой сессией, но с одного ip, а затем другого. это чисто зависит от того, как прописал разработчик?
вот дальше об этом. мы заходим без авторизации, поднимаются куки и мы получаем сессию под нашим логином. эта сессия прописывается в ссылки, она индексируется. сессия удаляется в браузере пользователя, но сервер пока об этом не знает, до нового захода. сама сессия на сервере удаляется спустя какое-то время или остаётся жива до нового входа? если автоматом - то настройка выставляется в серваке? автоматом она какая? и как её можно задать из пхп? |
|||
|
||||
| teroni |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 381 Регистрация: 15.5.2007 Где: Днепропетровск Репутация: 8 Всего: 22 |
Сессии никак не смотрят на айпишники юзеров. Вероятно это сделано для диалапщиков и др. людей, у которых айпи меняется автоматом по нескольку раз за сессию.
Всё про сессии в php.ini. Подробнее настройки можешь посмотреть тут - http://www.phpclub.net/manrus/f/ref.session.html |
||||
|
|||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
да, это я поторопился. без знания пароля новый задать не удастся. значит действия злоумышленника ограничатся временем действия перехваченной сессии. тем более важно знать, как долго она будет действовать после последнего захода со стороны пользователя что-то по ссылке я не нашёл этой информации или форум при каждом заходе проверяет кэш пароля в куке? но тогда смысл SID в урл? |
|||
|
||||
| teroni |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 381 Регистрация: 15.5.2007 Где: Днепропетровск Репутация: 8 Всего: 22 |
Всё там есть...
То есть при каждом запросе с вероятностью 1% запускается сборщик мусора. Он удаляете все те сессии, которые были созданы раньше, чем session.gc_maxlifetime секунд назад. То есть если к вашему серверу нету запросов, то теоренитчески эта сессия не удалится очень долго. Но чем больше запросов - тем больше вероятность того, что эта сессия удалится за время близкое к session.gc_maxlifetime. Как устроен этот форум я не знаю, но с точки зрения здравого смысла глупо при каждом запросе делать запрос в базу и сравнивать пароль из куки с паролем в базе. Возможно сравнивается пароль из сессии с паролем из куки, а может и этого нету. Смотри исходники, если так интересно |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
этого форума? мда, я б так не надумал. итого, злоумышленник получит возможность при украденном идентификаторе сессии сколько-то времени бродить по сайту, до тех пор пока в паузу между запросами не попадёт мусорщик, после чего произойдёт обращение к его куке с хэшированным паролем остаётся узнать какой session.gc_maxlifetime лучше выставлять, чтоб сервер не нагружало и чистилось как можно быстрее. этакий оптимум, хотя бы относительно этого форума |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |