Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain valid Stripe payment object ID
-
ExploitCraft public WPForms form submission
-
ExecutionServer acts on unverified payment object
-
ImpactTrigger full refund and subscription cancellation
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Access control enforcement
MITRE ATT&CK
1 technique across 1 tactic: Defense Evasion The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires a WordPress site running WPForms (before 2.0.2) with Stripe payment integration active, and the site owner's Stripe account must also process payments for other applications (whose payment/subscription objects become the targets). Exploitation is remote and unauthenticated via a normal public form submission (PR:N/UI:N), but is limited by AC:H: the attacker must supply a specific, valid Stripe payment object identifier belonging to another application on that account - the vulnerability does not let an attacker enumerate or discover those IDs, so success depends on already knowing a legitimate payment/subscription reference. Impact is confined to refunding payments and cancelling subscriptions (integrity); there is no data disclosure. |
| Impact | This is a genuine but moderate-priority issue, not an inflated high-CVSS score. The CVSS 3.1 vector (AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:H/A:N = 6.8) is internally consistent with the description: unauthenticated network reachability via a public form submission (PR:N/UI:N), but AC:H because the attacker must supply a valid Stripe payment object identifier belonging to another application on the owner's account - that dependency on obtaining/guessing a legitimate payment reference is a real barrier, not attacker-controlled. Impact is integrity-only (I:H: unauthorized refunds and subscription cancellations) with no confidentiality or availability effect, and S:C reflects that the damage crosses into a separate security authority (the owner's Stripe account and unrelated applications billing through it). The signals partly diverge: a public POC exists (WPScan) and a patch is available, yet SSVC records Exploitation=none, Automatable=no, Technical Impact=partial, and there is no EPSS score or CISA KEV listing provided. So exploit code is public but there is no evidence of active exploitation, and the AC:H plus non-automatable nature argues against opportunistic mass abuse - realistic risk is targeted financial sabotage against a specific site whose Stripe payment references an attacker can learn. Net: patch promptly on high-value/e-commerce sites, but this is not a wormable, drive-by threat. |
| Exploit ScenarioDerived | An attacker who has obtained a valid Stripe payment or subscription object ID tied to the site owner's Stripe account (e.g., from another application billing through that same account) submits a crafted public WPForms form that references that object. Because the plugin never verifies the payment object belongs to it, the request triggers a full refund and immediate subscription cancellation. A public proof-of-concept is available via WPScan, though there is no indication of active exploitation. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 24, 2026
Unauthenticated attackers can force full refunds and immediate subscription cancellations on WordPress sites running the WPForms plugin before 2.0.2 by submitting a Stripe payment object that actually belongs to a different application sharing the same Stripe account. Because the plugin never verifies that the referenced Stripe object was created by WPForms (CWE-284, improper access control), any public form submission carrying a known, valid payment or subscription identifier is acted upon directly against the site owner's Stripe account. Exploitation is remote and unauthenticated per the assessed vector (PR:N/UI:N) but is constrained by high attack complexity (AC:H): Stripe identifiers cannot be enumerated through the flaw, so an attacker must already possess a legitimate reference. Publicly available exploit code exists; no active exploitation has been confirmed (CISA SSVC Exploitation: none), and impact is limited to integrity - refunds and cancellations - with no data disclosure.
RemediationAI
Upgrade WPForms to version 2.0.2 or later - the vendor-released patch that adds the missing ownership validation on Stripe payment objects (patch available per vendor advisory; see https://wpscan.com/vulnerability/e539d37e-91bb-4d79-b812-ac3c6c1a0f70/). Because the exploit path requires only a public form submission, patching should be treated as urgent on any site with Stripe integration enabled. If an immediate upgrade is not feasible, the most effective compensating control is to isolate the WPForms Stripe integration onto a dedicated Stripe account that processes no other applications' payments; this removes the cross-application target set entirely but requires reconfiguring API keys and re-onboarding the checkout flow, and it does not fix sites that legitimately share one account. Disabling the WPForms Stripe add-on or turning off Stripe-based form submissions stops the attack but breaks paid forms and subscriptions for legitimate customers. Additionally, review Stripe logs for unexpected refunds or cancelled subscriptions, enable Stripe webhook/email alerts for refund and subscription-cancellation events, and rotate Stripe API keys as a precaution. Note that because the affected payment identifiers cannot be enumerated through the flaw itself, there is no filtering rule that reliably blocks the request at the WAF layer; validation must come from the patched plugin code.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw sits in the Stripe payment integration of the WPForms WordPress plugin, a widely deployed form-builder that handles checkout and subscription flows on behalf of the site. WPForms passes a Stripe payment object - essentially a payment intent, charge, or subscription reference supplied within the public form submission payload - into Stripe API calls such as refund and subscription-cancel operations without first confirming that the object was created by, and belongs to, this plugin instance. This is a classic CWE-284 improper access control / missing ownership check: the application trusts a caller-supplied identifier and treats authorization as implied by possession of the reference. The CVSS vector (AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:H/A:N) confirms the request path is reachable anonymously over the network from an ordinary form submission, that no privileges or user interaction are needed, and that the security scope changes (S:C) because the manipulated action lands on a third-party Stripe account object rather than within the plugin's own security authority. Confidentiality is unaffected; the sole impact is high integrity loss, since refunds and subscription cancellations are irreversible state changes to billing records. The affected CPE resolves to the WPForms plugin component (cpe:2.3:a:unknown:wpforms), and the EUVD record scopes affected releases to WPForms 1.8.8.2 through 2.0.1.
Know when Wpforms gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:H/A:N
Unauthenticated public form submission (PR:N/AV:N) but AC:H because a valid external Stripe payment object ID is required; S:C and I:H as it manipulates payments in the separate Stripe authority.
Primary rating from Vendor (WPScan).
CVSS VectorVendor: WPScan
Lifecycle Timeline
4DescriptionCVE.org
The WPForms WordPress plugin before 2.0.2 does not verify that a Stripe payment object supplied during a public form submission belongs to it before acting on it, allowing unauthenticated users to trigger a full refund and an immediate subscription cancellation against payments created by other applications on the site owner's Stripe account.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
The WPForms Pro WordPress plugin before 1.7.7 does not validate its form data when generating the exported CSV, which co
The Contact Form & SMTP Plugin by PirateForms plugin for WordPress is vulnerable to HTML injection in the ‘public/class-
Unauthenticated shortcode injection in WPForms Lite (versions 1.5.0.1 through 2.0.2) lets remote attackers execute arbit
The Contact Form & SMTP Plugin for WordPress by PirateForms WordPress plugin before 2.6.0 does not sanitise and escape s
WPForms 1.7.8 contains a cross-site scripting vulnerability in the slider import search feature and tab parameter. Attac
A stored cross-site scripting (XSS) vulnerability exists in the WPForms Contact Form (aka wpforms-lite) plugin before 1.
The WPForms WordPress plugin before 1.9.2.3 does not sanitise and escape some of its settings, which could allow high pr
The WPForms WordPress plugin before 1.9.1.6 does not sanitise and escape some of its settings, which could allow high pr
Stored Cross-Site Scripting in WPForms Pro for WordPress (all versions through 2.0.0.2) allows unauthenticated remote at
The WPForms plugin for WordPress is vulnerable to unauthorized modification of data due to a missing capability check on
The WPForms - Easy Form Builder for WordPress - Contact Forms, Payment Forms, Surveys, & More plugin for WordPress is vu
Unauth. Rated medium severity (CVSS 6.1), this vulnerability is remotely exploitable, no authentication required, low at
EUVD-2026-85794
GHSA-9x97-gpc7-wm62
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB