Насколько безопасны переменные сеанса php

На моем веб-сайте есть панель администратора, из которой я могу войти в систему для управления своим веб-сайтом, а для аутентификации при входе я использую код, который проверяет, существуют ли имя пользователя и пароль в дБ, и если да, я устанавливаю переменная в true следующим образом: $_SESSION['admin_logged']= true ;

Я хочу знать, безопасен ли этот путь или нет. Потому что я где-то слышал, что переменные сеанса могут быть украдены или перехвачены или что-то в этом роде. но я действительно понятия не имею, что это значит. И как кто-то может украсть переменные, пока они сохраняются на стороне сервера? И если возможно, как я могу предотвратить это. Заранее большое спасибо.


person Kadir Damene    schedule 20.09.2015    source источник
comment
Думаю, это более актуально для security.stackexchange. У них уже есть вопрос по этому поводу, security.stackexchange.com/questions/81519/   -  person chris85    schedule 21.09.2015
comment
я склонен думать, что если вы не управляете банком, сеансы из коробки в порядке   -  person    schedule 21.09.2015
comment
Я буквально ответил на очень похожий вопрос месяц назад: безопасны ли переменные сеанса Laravel 4?   -  person Scott Arciszewski    schedule 21.09.2015


Ответы (1)


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

person Chuksy    schedule 20.09.2015
comment
Это не обязательно правда. Вы можете хранить их в базе данных или в файловой системе, подключенной через небезопасное соединение; в этот момент любой, кто может прослушивать сетевой трафик, может испортить вашу систему. - person Scott Arciszewski; 21.09.2015