Mesuti
@Mesuti

Возможно ли эмулировать оплату в интернет магазине второй раз?

Привет!
Интересуюсь теорией с целью защиты при создании шлюза. Магазин - Банк.

Как обычно происходит:
В магазине нажимают купить -> Редирект в банк -> После оплаты идет направление обратно в магазин с отметкой, что платеж прошел.

- Если пройтись по ссылкам, то платеж отметится в магазине?
- Если подставить себе кеш и пройтись по ссылкам, то платеж отметится в магазине?

Вообще магазин и банк генерируют свой секретный токен? Чтобы повторно не эмулировать оплату и не получить товар еще раз?
  • Вопрос задан
  • 121 просмотр
Решения вопроса 3
SagePtr
@SagePtr
Еда - это святое
В магазине нажимают купить -> Редирект в банк -> После оплаты идет направление обратно в магазин с отметкой, что платеж прошел.

На самом деле происходит примерно так:
В магазине нажимают купить -> Редирект в банк -> [после оплаты банк дёргает секретный URL на сервере магазина, в параметрах передаёт информацию о платеже и хэш-сумму с секретной солью, взаимно известной только сайту и банку -> магазин проверяет эту информацию и если хэш совпадает, то считается, что платёж прошёл -> магазин производит операции по добавлению товара пользователю (если он виртуален), либо по уведомлению сотрудников, что такой-то товар оплачен и его нужно доставить такому-то покупателю] -> После оплаты идет направление обратно в магазин с отметкой, что платеж прошел.
То, что в квадратных скобках, происходит на стороне сервера, и пользователь никак не может вмешаться в этот процесс, сколько ни дублируй запросы. Соответственно, доверять тому, что вне скобок, нельзя, и даже если пользователя перенаправило на страницу с уведомлением об успешной оплате - это вовсе не значит, что оплата прошла, эту страницу он может вызвать сам когда захочет.
Ответ написан
Комментировать
Noizefan
@Noizefan
Какой магазин и какой банк?
Каков код - таков и результат.

Я так однажды прошёлся по истории и на хостинг себе ещё раз сумму пополнил без списания с карты. Естественно, оповестил техническую поддержку, исправили.
Ответ написан
Комментировать
402d
@402d
начинал с бейсика на УКНЦ в 1988
Никогда не верил переходу по success урлу юзером, только вызову хука с авизо после всех проверок.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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