Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Network-accessible unauthenticated AJAX endpoint with no special attack conditions; impact limited to low integrity (payment status write) with no confidentiality or availability effect.
Primary rating from NVD.
CVSS VectorNVD
Lifecycle Timeline
3DescriptionCVE.org
The Fluent Forms - Customizable Contact Forms, Survey, Quiz, & Conversational Form Builder plugin for WordPress is vulnerable to Insecure Direct Object Reference via the 'submission_id' parameter in versions up to, and including, 6.1.21. This is due to missing authorization and ownership validation on a user controlled key in the Stripe SCA confirmation AJAX endpoint. This makes it possible for unauthenticated attackers to modify payment status of targeted pending submissions (for example, setting the status to "failed").
AnalysisAI
Payment status manipulation in the Fluent Forms WordPress plugin (versions up to and including 6.1.21) allows unauthenticated remote attackers to alter Stripe SCA payment submission statuses - for example, forcing a pending payment to 'failed' - by supplying an arbitrary submission_id to an unprotected AJAX endpoint. The vulnerability stems from missing authorization and ownership validation on a user-controlled parameter in the Stripe SCA confirmation flow. No public exploit code has been identified at time of analysis, and EPSS places exploitation probability at 0.03%, though SSVC flags the attack as automatable, making bulk interference with payment workflows theoretically feasible at scale.
Technical ContextAI
This is a CWE-639 (Authorization Bypass Through User-Controlled Key) vulnerability, a subclass of IDOR, within the Stripe Strong Customer Authentication (SCA) AJAX confirmation endpoint of the Fluent Forms plugin for WordPress (vendor: techjewel; CPE: cpe:2.3:a:techjewel:fluent_forms_-_customizable_contact_forms,_survey,_quiz,_&_conversational_form_builder:*:*:*:*:*:*:*:*). WordPress AJAX endpoints require explicit capability checks and nonce validation; in this case the endpoint accepts a client-supplied 'submission_id' and acts on the corresponding database record without verifying that the requesting user owns or has any relationship to that submission. The Stripe SCA payment confirmation flow is designed to update submission state after 3D Secure authentication completes, but because the endpoint is accessible to unauthenticated users and the record lookup uses a caller-supplied key with no ownership check, any actor who can enumerate or guess submission IDs can drive state transitions on arbitrary submissions.
RemediationAI
Update the Fluent Forms plugin to a version beyond 6.1.21 via the WordPress admin plugin update mechanism or by applying the patch available in SVN changeset 3496638 (https://plugins.trac.wordpress.org/changeset/3496638/fluentform). The exact released version number containing the fix has not been independently confirmed from available data - verify the installed version in the WordPress plugins dashboard after updating. If an immediate update is not possible, a compensating control is to disable or remove the Stripe SCA payment integration within Fluent Forms until the patch is applied; this eliminates the vulnerable endpoint entirely but will prevent Stripe 3D Secure payment collection. Alternatively, a Web Application Firewall rule blocking unauthenticated POST requests to the specific Fluent Forms Stripe SCA AJAX action can limit exposure, though this requires identifying the exact action name from the plugin source and may interfere with legitimate payment confirmations. Monitoring for anomalous spikes in submission status change events can serve as a detection signal.
Insecure Direct Object Reference in the WordPress Fluent Forms plugin (versions through 6.2.0) allows authenticated user
Stored Cross-Site Scripting in the Fluent Forms WordPress plugin (all versions through 6.2.11) allows unauthenticated at
Stored cross-site scripting in the Fluent Forms plugin for WordPress (all versions through 6.2.7) lets unauthenticated a
Stored Cross-Site Scripting (XSS) in Fluent Forms WordPress plugin versions up to 6.2.1 allows authenticated contributor
Incorrect authorization in the Fluent Forms WordPress plugin (versions up to and including 6.2.1) enables any authentica
Insecure Direct Object Reference in Fluent Forms for WordPress (versions up to and including 6.2.8) exposes other users'
Fluent Forms plugin for WordPress up to version 6.2.1 allows authenticated administrators to read arbitrary files readab
Same technique Authentication Bypass
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-23237
GHSA-23m2-3g75-jvc8