165 / 150 / 58
Регистрация: 15.06.2013
Сообщений: 1,107
1

Сессия вместо формы

21.08.2015, 10:36. Показов 728. Ответов 13
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Уважаемые форумчане. Есть небольшой вопрос. Предположим я не хочу чтобы пользователь каким либо образом мог взаимодействовать с данными передаваемыми с помощью форм. На сколько стабильным и безопасны может считаться такой метод передачи данных?
PHP
1
2
unset($_SESSION['arr']);
$_SESSION['arr']['key'] = 'Value';
Далее в форме передаем ключ и получаем данные
PHP
1
$value = $_SESSION['arr'][$_POST['key']];
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.08.2015, 10:36
Ответы с готовыми решениями:

Не создается сессия после отправки формы
Здравствуйте! Есть код: if (isset($_POST)) { $_SESSION=$_POST; } <form method="post"...

Текст вместо формы авторизации
Формы авторизации--это не очень сложная штука! я пришёл на форум вот зачем: объясните пожалуйста...

Отправки формы с изображением вместо кнопки
Как сделать так чтоб отправить изображения как кнопку Submit? <form action="index.php"...

Подставить значение и перенаправить запрос (Post-Method) вместо кнопки формы
Уважаемые коллеги. Прошу помощи: Есть рабочий исх. код: <html> <head> <title>Перевірка...

13
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
21.08.2015, 10:39 2
Цитата Сообщение от MadHatter Посмотреть сообщение
На сколько стабильным и безопасны может считаться такой метод передачи данных?
Стабильно, безопасно. Только в чем прикол? Value этот самый Вы каким образом туда пихать будете? Или оно у всех пользователей одинаковое?
1
165 / 150 / 58
Регистрация: 15.06.2013
Сообщений: 1,107
21.08.2015, 10:44  [ТС] 3
Ну в частности планирую применять этот метод для одной онлайн игры, например в магазине. Где все пользователи будут получать возможность купить одни и те же вещи. Но не особо хочется светить айдишники и давать куллхацкерам лишний повод по-хакерить. Key будет формироваться случайным образом и не будет иметь никакой привязки к айдишнику.
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
22.08.2015, 00:56 4
Цитата Сообщение от MadHatter Посмотреть сообщение
не особо хочется светить айдишники и давать куллхацкерам лишний повод по-хакерить. Key будет формироваться случайным образом и не будет иметь никакой привязки к айдишнику.
а разница..? Делайте хеш id-шника или логина, только что изменит то, что он будет знать свой id ?
0
165 / 150 / 58
Регистрация: 15.06.2013
Сообщений: 1,107
22.08.2015, 10:56  [ТС] 5
Не свой id, а id предмета в базе. И id всех предметов в магазине.
Цитата Сообщение от KOPOJI Посмотреть сообщение
Делайте хеш id-шника или логина
Но он ведь сможет данные расхэшировать, так же как и я. Или есть какие-то хитрые методы хэширования?
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
22.08.2015, 11:07 6
Bcrypt / script и т.п.
0
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
22.08.2015, 11:08 7
Цитата Сообщение от MadHatter Посмотреть сообщение
Но он ведь сможет данные расхэшировать, так же как и я. Или есть какие-то хитрые методы хэширования?
Хэш он потому и хэш - его нельзя "расхэшировать"

Покажите - как вы "расхэшируете" md5-сумму?
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
22.08.2015, 11:08 8
Хеширование это необратимое шифрование вообще-то. Ну и соль используйте
0
165 / 150 / 58
Регистрация: 15.06.2013
Сообщений: 1,107
22.08.2015, 12:03  [ТС] 9
Ну md5 да. Но, а каким образом я потом узнаю какой предмет пользователь выбрал? Радужные таблицы составлять?
0
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
22.08.2015, 12:08 10
Цитата Сообщение от MadHatter Посмотреть сообщение
Ну md5 да. Но, а каким образом я потом узнаю какой предмет пользователь выбрал? Радужные таблицы составлять?
Какие предметы? О каких вообще данных идет речь? Причем тут какой-то там выбранный предмет и радужные таблицы? Вы что все данные с формы собрались загонять в сессию и шифровать их через md5?

Покажите хотябы пример, для чего это все.
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
22.08.2015, 12:12 11
я думал, что вы хотите данный хэш использовать лишь для проверки того, что это тот пользователь (а-ля CSRF-токенов). К тому же зачем разхешировать? Храните хэш в БД и сверяйте его. Ид пользователю неизвестен, наличие хэша ничего не дает => условия выполнены.
Вообще, очень странное решение дать клиенту возможность взаимодействия с сервером, путем устранения этой самой возможности, я в затруднениях
0
165 / 150 / 58
Регистрация: 15.06.2013
Сообщений: 1,107
22.08.2015, 13:13  [ТС] 12
Цитата Сообщение от pav1uxa Посмотреть сообщение
Покажите хотябы пример, для чего это все.
Я выше пытался описать ситуацию.
Цитата Сообщение от MadHatter Посмотреть сообщение
Ну в частности планирую применять этот метод для одной онлайн игры, например в магазине. Где все пользователи будут получать возможность купить одни и те же вещи. Но не особо хочется светить айдишники и давать куллхацкерам лишний повод по-хакерить. Key будет формироваться случайным образом и не будет иметь никакой привязки к айдишнику.
То есть будет форма с кнопочкой купить. И id предмета отправляется на сервер, где будут, естественно, все проверки. Просто получается что пользователь в любой момент сможет посмотреть какие конкретно данные отправляются на сервер. Потому я и хочу как-то скрыть их.
Цитата Сообщение от pav1uxa Посмотреть сообщение
Вы что все данные с формы собрались загонять в сессию и шифровать их через md5?
Нет, шифровать я не собирался. В сессии бы хранились все idшники предметов, которые выведены на экран. А я бы, с помощью формы, отправлял ключ ячейки массива сессий, по которому можно получить id.
Цитата Сообщение от KOPOJI Посмотреть сообщение
я думал, что вы хотите данный хэш использовать лишь для проверки того, что это тот пользователь
Нет, это также проверяется по наличию имени в сессии.
Цитата Сообщение от KOPOJI Посмотреть сообщение
Храните хэш в БД и сверяйте его. Ид пользователю неизвестен, наличие хэша ничего не дает => условия выполнены.
Как вариант для данной ситуации да, это будет проще.

Но вообще нормален ли такой способ? Или лучше поискать другие варианты?
0
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
22.08.2015, 14:20 13
Цитата Сообщение от MadHatter Посмотреть сообщение
Просто получается что пользователь в любой момент сможет посмотреть какие конкретно данные отправляются на сервер. Потому я и хочу как-то скрыть их.
Во-первых, пользователь всегда и в любом случае будет знать какие именно данные он будет отправлять на сервер. Иначе, если данные отправляются без ведома пользователя, это уже жульничество какое-то.
Во-вторых, ничего страшного в этом нет. Ну отправляет он ID предмета и что дальше? Что страшного в этом?
0
165 / 150 / 58
Регистрация: 15.06.2013
Сообщений: 1,107
22.08.2015, 15:41  [ТС] 14
Нет, с моей стороны жульничества никакого нет. На какую кнопку он нажал - то он и получит. Возможно я заморачиваюсь. Но он пользователь будет видеть определенные данные из базы в открытом виде. И, если у меня в коде будет какая-то лазейка, то он возможно сможет применить эти данные.
0
22.08.2015, 15:41
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.08.2015, 15:41
Помогаю со студенческими работами здесь

В режиме кода появляется код формы, вместо самой формы
Здравствуйте. Возникла проблема: не могу визуально посмотреть форму. То есть при дабл клике по...

Вместо редактора формы - редактор кода формы
Редактор формы куда-то пропал в обозревателе. программа компилируется и запускается с Form1 окном....

Ribbon вместо формы
написал небольшой макрос, перевод градусов в градусы, минуты, секунды. Можно все это оформить на...

Кракозябры вместо логин-формы
Здрасьте ;) Общаюсь с сервером он мне отвечает 302.. я поеорно повинуюсь и следую по ним, потом он...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru