Description
The Zarinpal Gateway for WooCommerce plugin for WordPress is vulnerable to Improper Access Control to Payment Status Update in all versions up to and including 5.0.16. This is due to the payment callback handler 'Return_from_ZarinPal_Gateway' failing to validate that the authority token provided in the callback URL belongs to the specific order being marked as paid. This makes it possible for unauthenticated attackers to potentially mark orders as paid without proper payment by reusing a valid authority token from a different transaction of the same amount.
Problem types
CWE-284 Improper Access Control
Product status
* (semver)
Timeline
| 2026-02-16: | Disclosed |
Credits
Angus Girvan
References
www.wordfence.com/...-318b-408e-86bf-b4ece46121cc?source=cve
plugins.trac.wordpress.org/.../class-wc-gateway-zarinpal.php
plugins.trac.wordpress.org/.../class-wc-gateway-zarinpal.php
plugins.trac.wordpress.org/.../class-wc-gateway-zarinpal.php
plugins.trac.wordpress.org/.../class-wc-gateway-zarinpal.php
plugins.trac.wordpress.org/.../class-wc-gateway-zarinpal.php
plugins.trac.wordpress.org/changeset/3445917/