Every CVESearch/Get API key

CVE-2026-9832

Payment Gateway of Stripe for WooCommerce <= 5.0.8 - Unauthenticated Improper Verification of Cryptographic Signature via woocommerce_api_wt_stripe Webhook Endpoint

5.3 Medium

CVE-2026-9832 is a medium vulnerability (CVSS 5.3) in Themehigh Payment Gateway Of Stripe For Woocommerce, published September 19, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.56%, the 46th percentile. No source names a fixed version.

What does this mean?
Severity
5.3 MediumCVSS 3.1, CVE List
Exploit chance
0.56%EPSS, 46th percentile
Exploitation
None knownNot on CISA’s or ENISA’s lists
Fixed in
No fix listedNo source names one

Description

The Payment Gateway of Stripe for WooCommerce plugin for WordPress is vulnerable to Improper Verification of Cryptographic Signature in all versions up to, and including, 5.0.8. This is due to the publicly accessible woocommerce_api_wt_stripe webhook endpoint (EH_Stripe_Webhook_Handler::handle()) wrapping the only call to \Stripe\Webhook::constructEvent() inside an if (!empty($endpoint_secret)) guard that is never entered on default installations — because the eh_stripe_webhook_secret option is empty after a fresh plugin install — causing the raw, attacker-controlled POST body to be decoded and processed as a fully trusted Stripe event without any signature verification, authentication, or authorization. This makes it possible for unauthenticated attackers to send forged Stripe webhook events to manipulate WooCommerce order statuses, including marking unpaid orders as paid or completed via payment_complete(), forcing legitimate orders into a failed state, fabricating dispute notifications, and injecting forged refund events. This vulnerability is only exploitable when the Stripe webhook signing secret has not been configured by an administrator; once a valid signing secret is saved, \Stripe\Webhook::constructEvent() is enforced and forged requests are rejected.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
Low
Availability
None

Exploit likelihood

0.56%Up 0.3 points since Sep 19, 2026
90%50%10%1%

Discussion

Quiet in the last day.
14 days ago: 0 people13 days ago: 0 people12 days ago: 0 people11 days ago: 0 people10 days ago: 0 people9 days ago: 0 people8 days ago: 0 people7 days ago: 0 people6 days ago: 2 people5 days ago: 0 people4 days ago: 0 people3 days ago: 0 people2 days ago: 0 people1 day ago: 0 peopleLast 24 hours: 0 people

Affected products

What each source reports

CVE List Score used5.3

Payment Gateway of Stripe for WooCommerce <= 5.0.8 - Unauthenticated Improper Verification of Cryptographic Signature via woocommerce_api_wt_stripe Webhook Endpoint

The Payment Gateway of Stripe for WooCommerce plugin for WordPress is vulnerable to Improper Verification of Cryptographic Signature in all versions up to, and including, 5.0.8. This is due to the publicly accessible woocommerce_api_wt_stripe webhook endpoint (EH_Stripe_Webhook_Handler::handle()) wrapping the only call to \Stripe\Webhook::constructEvent() inside an if (!empty($endpoint_secret)) guard that is never entered on default installations — because the eh_stripe_webhook_secret option is empty after a fresh plugin install — causing the raw, attacker-controlled POST body to be decoded and processed as a fully trusted Stripe event without any signature verification, authentication, or authorization. This makes it possible for unauthenticated attackers to send forged Stripe webhook events to manipulate WooCommerce order statuses, including marking unpaid orders as paid or completed via payment_complete(), forcing legitimate orders into a failed state, fabricating dispute notifications, and injecting forged refund events. This vulnerability is only exploitable when the Stripe webhook signing secret has not been configured by an administrator; once a valid signing secret is saved, \Stripe\Webhook::constructEvent() is enforced and forged requests are rejected.

Record
CVE-2026-9832
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Weakness
CWE-347
Updated
2026-11-02
EUVDEUVD-2026-835405.3

The Payment Gateway of Stripe for WooCommerce plugin for WordPress is vulnerable to Improper Verification of Cryptographic Signature in all versions up to, and including, 5.0.8. This is due to the publicly accessible woocommerce_api_wt_stripe webhook endpoint (EH_Stripe_Webhook_Handler::handle()) wrapping the only call to \Stripe\Webhook::constructEvent() inside an if (!empty($endpoint_secret)) guard that is never entered on default installations — because the eh_stripe_webhook_secret option is empty after a fresh plugin install — causing the raw, attacker-controlled POST body to be decoded and processed as a fully trusted Stripe event without any signature verification, authentication, or authorization. This makes it possible for unauthenticated attackers to send forged Stripe webhook events to manipulate WooCommerce order statuses, including marking unpaid orders as paid or completed via payment_complete(), forcing legitimate orders into a failed state, fabricating dispute notifications, and injecting forged refund events. This vulnerability is only exploitable when the Stripe webhook signing secret has not been configured by an administrator; once a valid signing secret is saved, \Stripe\Webhook::constructEvent() is enforced and forged requests are rejected.

Record
EUVD-2026-83540
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Updated
2026-11-02
GitHub AdvisoriesGHSA-7cxm-23jc-4x3x5.3

The Payment Gateway of Stripe for WooCommerce plugin for WordPress is vulnerable to Improper...

The Payment Gateway of Stripe for WooCommerce plugin for WordPress is vulnerable to Improper Verification of Cryptographic Signature in all versions up to, and including, 5.0.8. This is due to the publicly accessible woocommerce_api_wt_stripe webhook endpoint (EH_Stripe_Webhook_Handler::handle()) wrapping the only call to \Stripe\Webhook::constructEvent() inside an if (!empty($endpoint_secret)) guard that is never entered on default installations — because the eh_stripe_webhook_secret option is empty after a fresh plugin install — causing the raw, attacker-controlled POST body to be decoded and processed as a fully trusted Stripe event without any signature verification, authentication, or authorization. This makes it possible for unauthenticated attackers to send forged Stripe webhook events to manipulate WooCommerce order statuses, including marking unpaid orders as paid or completed via payment_complete(), forcing legitimate orders into a failed state, fabricating dispute notifications, and injecting forged refund events. This vulnerability is only exploitable when the Stripe webhook signing secret has not been configured by an administrator; once a valid signing secret is saved, \Stripe\Webhook::constructEvent() is enforced and forged requests are rejected.

Record
GHSA-7cxm-23jc-4x3x
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Weakness
CWE-347
Updated
2026-11-02
NVD5.3

The Payment Gateway of Stripe for WooCommerce plugin for WordPress is vulnerable to Improper Verification of Cryptographic Signature in all versions up to, and including, 5.0.8. This is due to the publicly accessible woocommerce_api_wt_stripe webhook endpoint (EH_Stripe_Webhook_Handler::handle()) wrapping the only call to \Stripe\Webhook::constructEvent() inside an if (!empty($endpoint_secret)) guard that is never entered on default installations — because the eh_stripe_webhook_secret option is empty after a fresh plugin install — causing the raw, attacker-controlled POST body to be decoded and processed as a fully trusted Stripe event without any signature verification, authentication, or authorization. This makes it possible for unauthenticated attackers to send forged Stripe webhook events to manipulate WooCommerce order statuses, including marking unpaid orders as paid or completed via payment_complete(), forcing legitimate orders into a failed state, fabricating dispute notifications, and injecting forged refund events. This vulnerability is only exploitable when the Stripe webhook signing secret has not been configured by an administrator; once a valid signing secret is saved, \Stripe\Webhook::constructEvent() is enforced and forged requests are rejected.

Record
CVE-2026-9832
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Weakness
CWE-347
Updated
2026-11-02

History

History
RecordedChangedSources
first indexedCVE List, EUVD, GitHub Advisories, NVD

Dates are when Every CVE recorded each change. Upstream dates may differ.

References

MoveEnter Open