Задать вопрос
@yourisus

Безопасность куков и сессий?

День добрый, друзья.
Вроде понимаю суть куков и сессий, куки - на клиенте, сессии на сервере.
Но у меня вопрос по безопасности: если куки злоумешленник стянет с клиента, и использует их сам, то он получит доступ не авторизовываясь?
А если сымитировать id браузера и подставить чужие куки ,можно получить доступ не авторизуясь?
Что конкретно записывается в сессии, что они более безопасны? Связку IP, browser_agent_id?
Может кто расскажет сие технологии немножко подробнее в плане безопасности и что конкретно там в качестве input\out data.
  • Вопрос задан
  • 666 просмотров
Подписаться 2 Оценить Комментировать
Ответ пользователя Dimonchik К ответам на вопрос (2)
dimonchik2013
@dimonchik2013
non progredi est regredi
Сессия - это не на сервере, это абстрактное понятие, сделанное для упрощения вхождения в курс начинающих (и говно-) кодеров.
(1)Юзер логинится (аутентифицируеится), под его права все роутеры-шаблонизаторы исходя из политик генерируют и отправляют контент. Все. Один запрос страницы - один ответ.
(2)Чтобы юзер не вводил логин-пароль постоянно, при первом логине ему создается идентификатор и отправляется в куках. Т.о. при каждом запросе юзер вместо логина отправляет этот идентификатор. А сервер - см. (1)

Естественно, этот индентификатор можно перехватить (по незащищенному соединению за милую душу, по защищенному - трояны никто не отменял) и авторизоваться вместо юзера.

Поэтому на стороне сервера по разному решают эту проблему:
Вк пишут мыло на каждый логин "вы вошли", Гугл пишет (с этого ИП вы не входили, подтвердите), кто-то забивает, кто-то (банки) каждый новый логин требуют подтверждать СМС.

Как сервер определяет подозрительность? от слепков браузера до часовых поясов.

почитай про OAuth
почитай про CSRF
Ответ написан
Комментировать