@del993788

Может ли злоумышленник изменить значение переменной в сессии yii2?

Здравствуйте. У меня интернет магазин построен на сессиях. Добавляю в корзину товар - создаётся сессия, и записываются туда данные. Вот у меня созрел вопрос: может ли злоумышленник изменить значение переменной сессии, к примеру, "сумма заказа" на свою? То есть, добавил он себе в корзину несколько товаров, общая сумма вышла на 1000 рублей, а потом взял и изменил в сессии значение суммы на 1 рубль.
В сессии записываются данные, которые берутся из бд, но потом же они, сессии, с бд никак не взаимодействуют, живут отдельно.
Подскажите, я где-то ошибаюсь?
  • Вопрос задан
  • 341 просмотр
Решения вопроса 2
sessions - хранятся на сервере.
cookies - хранятся на клиенте.

Подменить сессию врятли сможет. Но логика построена не правильно, вы должны хранить в сессии только ид товара и количество. А при покупке - затрагивать данные из БД.

Вдруг человек добавит товар в корзину, а вы цену поменяете, тогда он по старой купит?)
Ответ написан
Комментировать
riky
@riky
Laravel
в сессии никак не изменит.
если только в вашем коде нет дыры. но если есть дыра, то уже ничего не спасет.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@dev400
Храните в сессии ид товара и количество, а при заказе выбирайте из базы цену. Пусть меняет, можно корзину хоть на клиенте держать с таким подходом.
Ответ написан
Комментировать
@Jony1337
Заноси всё это в бд .
Вот допусти есть Вася , его id к примеру 7477545 , он добавил в корзину 4 товара на сумму 1к руб . Ты всё это заноси в БД , если он передумал покупать и удалил их из корзины просто удали записи , если добавил ещё что то , редактируется записи в БД .
Чем плоха это реализация сэр ?
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы