ubernoob
@ubernoob

Можно ли подменить сессию?

На странице авторизации если логин/пароль совпали с данными из БД:
session_start(600);
$AUTH_STATUS = true;
$_SESSION['userid'] = $AuthRes[0]['id'];
setcookie("$NameCookie1", "$NameCookie2", time()+3600);


На остальных страницах куки не используются, юзается только сессия:
session_start(600);
if(!isset($_SESSION['userid']) || !isset($_SESSION['mail'])){
    // редирект на страницу авторизации
}

Данные суперглобального массива $_SESSION юзер я так понимаю может увидеть у себя в браузере с помощью инструментов разработчика. Может ли он подменить userid на другой и увидеть таким образом данные другого аккаунта?
  • Вопрос задан
  • 4077 просмотров
Пригласить эксперта
Ответы на вопрос 2
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Данные суперглобального массива $_SESSION юзер я так понимаю может увидеть у себя в браузере с помощью инструментов разработчика
учите мат.часть!
Ответ написан
Массив $_SESSION - это то, что у вас хранится на жестком диске на сервере.
Пользователь может увидеть $_COOKIE.

У каждого $_SESSION есть session_id(), который кладется в $_COOKIE['session_id'] (ключ взял из головы, забыл как он называется). Теоретически, пользователь может подменить свой $_COOKIE['session_id'], на $_COOKIE['session_id'] другого пользователя, если его каким-то образом получит. Но по-сути, это эквивалентно тому, что злоумышленник, сел за ПК другого пользователя и использует браузер, чтобы делать, что-то там на вашем сайте.
Злоумышленник может скопировать куки, чтобы уже на своем ПК зловредить, но чтобы этого не произошло, вы должны ограничить время жизни сессии и\или вовремя генерировать новую. Как-то так, надеюсь помог.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Ведисофт Екатеринбург
от 25 000 ₽
YCLIENTS Москва
от 200 000 до 350 000 ₽
Бюро Цифровых Технологий Санкт-Петербург
от 120 000 до 180 000 ₽
04 мая 2024, в 22:32
2000 руб./за проект
04 мая 2024, в 22:10
2001 руб./за проект
04 мая 2024, в 21:12
10000 руб./за проект