Description
The Otter Blocks plugin for WordPress is vulnerable to Purchase Verification Bypass in all versions up to, and including, 3.1.4. This is due to the 'get_customer_data' method relying on an unsigned 'o_stripe_data' cookie to determine Stripe product ownership for unauthenticated users. The 'check_purchase' method trusts this cookie data without performing server-side verification against the Stripe API for one-time 'payment' mode purchases. This makes it possible for unauthenticated attackers to bypass Stripe purchase-gated content visibility conditions by forging the 'o_stripe_data' cookie with a target product ID, which is publicly exposed in the checkout block's HTML source.
Problem types
CWE-285 Improper Authorization
Product status
Any version
Timeline
| 2026-02-20: | Vendor Notified |
| 2026-04-29: | Disclosed |
Credits
Drew Webber
References
www.wordfence.com/...-1f94-4e0b-8906-1a9b9602a746?source=cve
plugins.trac.wordpress.org/...c/plugins/class-stripe-api.php
plugins.trac.wordpress.org/...c/plugins/class-stripe-api.php
plugins.trac.wordpress.org/...ins/class-block-conditions.php
plugins.trac.wordpress.org/changeset/3471326/