Владельцы сайтов, на которые установлена система оплаты через популярного агрегатора платежей «OnPay», рискуют продать свой товар или услугу бесплатно.
Интегрируя default API* (рекомендованное агрегатором для скачивания и установки) в движок сайта заказчика, наткнулся на фрагмент следующего кода:
Обратите внимание!
После слова «Ожидается» выводится MD5 сигнатура, сформированная для сверки с сигнатурой, посланной от системы уведомления.
Немного поковырявшись (минут 5), был найден способ, как эмитировать «pay» уведомление, в ответ на которое выводится это сообщение. Дальше дел на пару кликов и в результате полноценное уведомление об оплате, которое подтвердит поступление платежа.
Как оказалось, API написанное для платформ, тоже не лишено этого изъяна.
(Из 2-х проверенных навскидку, нашел в JoomShopping.)
Интегрируя default API* (рекомендованное агрегатором для скачивания и установки) в движок сайта заказчика, наткнулся на фрагмент следующего кода:
#onpay_functions.php - line: 174-176
# $md5fb - созданную нами
# $md5 - присланную
//сверяем строчки хеша (присланную и созданную нами)
if ($md5fb != $md5) {
$rezult = answerpay($_REQUEST['type'], 8, $pay_for, $order_amount, $order_currency, 'Md5 signature is wrong. Expected '.$md5fb, $onpay_id);
}
Обратите внимание!
'Md5 signature is wrong. Expected '.$md5fb( рус. «Неправильная MD5 сигнатура. Ожидается ...» )
После слова «Ожидается» выводится MD5 сигнатура, сформированная для сверки с сигнатурой, посланной от системы уведомления.
Немного поковырявшись (минут 5), был найден способ, как эмитировать «pay» уведомление, в ответ на которое выводится это сообщение. Дальше дел на пару кликов и в результате полноценное уведомление об оплате, которое подтвердит поступление платежа.
Как оказалось, API написанное для платформ, тоже не лишено этого изъяна.
(Из 2-х проверенных навскидку, нашел в JoomShopping.)
ЗАЩИТА
- Убрать $md5fb из результата выдачи.
- Запретить принимать «pay» и «check» уведомления, с IP отличных от агрегатора OnPay*.
- Внимательно проверять и перепроверять подобные API.
ССЫЛКИ
- default API (.rar) — исходный код API с сайта агрегатора.
- IP OnPay — можно посмотреть тут.