Missing authorization in WooCommerce Stripe Payment Gateway
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- None · Low · Low
- Fix status
- No fix listed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-862.
Summary
The WooCommerce Stripe Payment Gateway plugin for WordPress is vulnerable to unauthorized modification of data due to a missing capability check on the `ajax_pay_for_order()` function in all versions up to, and including, 10.7.0 This is due to a missing order ownership or order_key verification when processing payment for an order via the `wc_stripe_pay_for_order` WC-AJAX endpoint. The function only validates a nonce (which is publicly available on any WooCommerce page where Express Checkout is enabled), but does not verify that the requesting user owns the target order and is allowed to modify it. This makes it possible for unauthenticated attackers to force any pending order into a failed status by providing a fake payment method, causing a payment exception that updates the order status to "failed" via sequential order ID enumeration.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| WooCommerce | WooCommerce Stripe Payment Gateway | up to 10.7.0 | — | No fix listed | CNA |
- WooCommerce Stripe Payment Gateway VendorWooCommerce Affected up to 10.7.0 Fixed in — No fix listed CNA
Remediation
No fixed version listed by the sources yet.
Timeline
- 2026-10-02 Threatist record created from CVE-2026-2381
- 2026-10-03 Alias added: GHSA-xpf8-p6c2-qcp9
References
Other 6
- https://www.wordfence.com/threat-intel/vulnerabilities/id/ab3b52f7-e2c3-44f7-8e19-b6c51ccd50e0?source=cve
- https://plugins.trac.wordpress.org/browser/woocommerce-gateway-stripe/tags/10.3.1/includes/payment-methods/class-wc-stripe-express-checkout-ajax-handler.php#L355
- https://plugins.trac.wordpress.org/browser/woocommerce-gateway-stripe/tags/10.3.1/includes/class-wc-gateway-stripe.php#L523
- https://research.cleantalk.org/cve-2026-2381
- https://plugins.trac.wordpress.org/changeset/3564842/woocommerce-gateway-stripe/trunk/includes/payment-methods/class-wc-stripe-express-checkout-ajax-handler.php
- https://plugins.trac.wordpress.org/changeset?old_path=%2Fwoocommerce-gateway-stripe/tags/10.7.0&new_path=%2Fwoocommerce-gateway-stripe/tags/10.8.0
More WooCommerce vulnerabilities
- TI-2023-03274 WooCommerce Pre-Orders < 2.0.3 - Unauthorised Actions via CSRF CVSS 3.1MEDIUM 6.5
- TI-2023-03273 WooCommerce Pre-Orders < 2.0.3 - Arbitrary Pre-Order Canceling via CSRF CVSS 3.1MEDIUM 6.5
- TI-2023-02044 WooCommerce Order Status Change Notifier <= 1.1.0 - Subscriber+ Arbitrary Order Status Update CVSS 3.1MEDIUM 6.5
- TI-2022-00684 WooCommerce < 6.2.1 - Subscriber+ Arbitrary Comment Deletion CVSS 3.1MEDIUM 4.3
- TI-2021-06504 WooCommerce Help Scout < 2.9.1 - Unauthenticated Arbitrary File Upload leading to RCE CVSS 3.1CRITICAL 9.8
- TI-2023-17950 WordPress WooCommerce Product Vendors Plugin <= 2.1.78 is vulnerable to SQL Injection CVSS 3.1CRITICAL 9.8
Sources
- CVE-2026-2381 · CVE Program
- CVE-2026-2381 · NVD
- FIRST EPSS
- GHSA-xpf8-p6c2-qcp9 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences