Плагин Subscriptions for WooCommerce WordPress до версии 2.0.1 не проверяет сумму платежа и не привязывает токен заказа PayPal к выполненному заказу в потоке полученных заказов WooCommerce: он фиксирует предоставленный клиентом токен и отмечает оплаченный заказ всякий раз, когда статус захвата ЗАВЕРШЕН, без сравнения полученной суммы с общей суммой заказа. Это позволяет злоумышленнику (не прошедшему аутентификацию, если включена гостевая оплата) подменить утвержденный, незахваченный токен заказа PayPal и пометить дорогой заказ как оплаченный, не уплатив его цену.
Показать оригинальное описание (EN)
The Subscriptions for WooCommerce WordPress plugin before 2.0.1 does not validate the payment amount or bind the PayPal order token to the order being completed on the WooCommerce order-received flow: it captures a client-supplied token and marks the order paid whenever the capture status is COMPLETED, without comparing the captured amount to the order total. This allows an attacker (unauthenticated where guest checkout is enabled) to substitute an approved, uncaptured PayPal order token and have an expensive order marked paid without paying its price.
Характеристики атаки
Последствия
Строка CVSS v3.1