Wallet for WooCommerce <= 1.7.3 - Authenticated (Subscriber+) Wallet Balance Manipulation via REST Top-Up 'currency' Parameter

Medium 5.3 CWE-840Fixed in 1.7.4
ID
WPSEC-2026-2195
Plugin
Wallet for WooCommerce (woo-wallet)
Affected
all versions before 1.7.4
Remediation
Update to 1.7.4 or later.
CVSS 3.1
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:N
Weakness
CWE-840
Usage
Plugin Medium · Affected versions Medium among sites WPSec scans, 2026-11-03
Attack surface
Wallet for WooCommerce on WPSec AttackSurface
Fix released
Published

Description

The Wallet for WooCommerce plugin for WordPress is vulnerable to wallet balance manipulation via the 'currency' parameter of the terawallet/v1/me/topup REST endpoint in all versions up to, and including, 1.7.3, due to the endpoint accepting any three-letter currency code for the top-up order while the wallet credit converts the order currency to the store base currency at a 1:1 rate whenever no exchange rate is known (the default when no supported currency switcher is active), and comparing the minimum/maximum top-up limits against the unconverted amount. This makes it possible for authenticated attackers, with subscriber-level access and above, to pay for a top-up in a low-value currency and receive the same nominal amount as wallet credit in the store currency, provided the payment gateway accepts that currency.

References

Published by WPSec. Provided as is, without warranty. Corrections: contact us.

This advisory as JSON or Markdown · All advisories: JSON, RSS

License: CC BY 4.0