The Visa Acceptance Solutions plugin for WordPress is vulnerable to Authentication Bypass in all versions up to, and including, 2.1.0. This is due to the `express_pay_product_page_pay_for_order()` function logging users in based solely on a user-supplied billing email address during guest checkout for subscription products, without verifying email ownership, requiring a password, or validating a one-time token. This makes it possible for unauthenticated attackers to log in as any existing user, including administrators, by providing the target user's email address in the billing_details parameter, resulting in complete account takeover and site compromise.
The `express_pay_product_page_pay_for_order()` function during guest checkout for subscription products logs in a user solely based on the email address provided by the client in the `billing_details` parameter. The mechanism does not verify email ownership, does not require a password, and does not check any one-time confirmation token. An attacker can therefore provide the email address of an existing account (e.g., an administrator) and be logged in as that user without any additional obstacles.
An unauthenticated attacker can take over the account of any WordPress platform user, including administrator accounts, leading to complete website compromise — content modification, malicious software installation, and data theft.
Apply patches available from the vendor according to the references. If an update is not available, immediately disable or uninstall the plugin until a patched version is released.
Visa Acceptance Solutions plugin for WordPress — all versions up to and including 2.1.0
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H