Нужно ли проверять данные сессии при ajax запросе?
Добрый день знатоки, подскажите пожалуйста на сайте при каждой генерации страницы создается запрос в базу, по токену из куки проверяется авторизация пользователя, если токен совпадает, то в сессию сохраняются данные пользователя (просто чтобы не делать глобальных переменных). И так на каждой странице.
В общем возник вопрос, при генерации ajax запроса, в которых важно получить достоверные данные пользователя, нужно ли делать дополнительный запрос в базу? или можно вытащить из сессии? Другими словами можно ли подделать данные сессии из браузера например? Т.е. может ли пользователь поменять значение сессии ручками, как например куку?
Ну они хранятся на сервере, насколько я знаю, просто не ясно можно ли подменить данные например к $_SESSION[ID] при ajax запросе не зная PHPSESSID? Я к тому что в куках все просто поменял значение $_cookie[user_id] прям через браузер перед запросом и на сервере уже будет другие данные.
В теории - да, другой пользователь может подделать данные. Но этот же шанс очень мизерный, если вы допустим используете 128-битное шифрование, что я не думаю, что кто-то будет их подбирать.
apptimeru, Куки можно редактировать вручную в браузере без стороннего ПО.
Но у 128-битного шифрования имеется 340 282 366 920 938 463 463 374 607 431 768 211 456 вариаций. Я думаю вы сами понимаете, на сколько процедура взлома будет сложна.
Вот вам статейка, можете прочесть ее, она вам даст понять, что никто подобным заниматься не будет.
Чтобы подменить PHPSESSID админа, нужно как минимум его знать. Так что не думаю, что это реально - украсть у админа его PHPSESSID и успеть за текущую сессию им воспользоваться.