CVE-2026-89100
MediumCVSS 6.1Summary
The Payment Plugins for Stripe WooCommerce plugin for WordPress is vulnerable to Reflected Cross-Site Scripting via '#response' URL Fragment in all versions up to and including 4.0.17 due to insufficient input sanitization and output escaping. This allows unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. Exploitation requires that the 'Generic Errors' setting is unchecked, causing getErrorMessage() to return the raw Stripe error string unchanged rather than substituting a mapped safe message.
Risk Assessment
An unauthenticated attacker can exploit this to inject malicious scripts that execute in the victim's browser, leading to data theft, session hijacking, or other attacks. The risk is especially high if users click on malicious links.
Recommendation
Update the Payment Plugins for Stripe WooCommerce plugin to the latest version with the fix. Also ensure the 'Generic Errors' setting is enabled to prevent exploitation.
Other vulnerabilities in Payment Plugins for Stripe WooCommerce
See all- CVE-2026-80339Medium
The Payment Plugins for Stripe WooCommerce plugin before version 4.0.12 does not validate the order key before adding order data to the JavaScript configuration output on the front end. This allows unauthenticated users to obtain the billing details of any order, together with the secret that gates access to it, by iterating sequential order identifiers.
- CVE-2026-12654Medium
The Payment Plugins for Stripe WooCommerce plugin for WordPress up to version 4.0.7 fails to properly verify user authorization. An unauthenticated attacker can mark arbitrary pending WooCommerce orders as paid by forging a charge.pending event with attacker-controlled data, triggering payment_complete() and order fulfillment. The vulnerability is exploitable only when the webhook_secret_test or webhook_secret_live field is left blank (default).
Original NVD description (English source)
The Payment Plugins for Stripe WooCommerce plugin for WordPress is vulnerable to Reflected Cross-Site Scripting via '#response' URL Fragment in all versions up to, and including, 4.0.17 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. Exploitation requires that the 'Generic Errors' setting is unchecked, causing getErrorMessage() to return the raw Stripe error string unchanged rather than substituting a mapped safe message.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

