WordPress
CVE-2025-12834
MEDIUM
Severity by source
AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Primary rating from NVD · only source for this CVE.
CVSS VectorNVD
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Lifecycle Timeline
2DescriptionCVE.org
The Accept Stripe Payments Using Contact Form 7 plugin for WordPress is vulnerable to Reflected Cross-Site Scripting via the 'failure_message' parameter in versions up to, and including, 3.1 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that execute if they can successfully trick a user into performing an action such as clicking on a link.
AnalysisAI
Reflected cross-site scripting (XSS) in Accept Stripe Payments Using Contact Form 7 WordPress plugin versions up to 3.1 allows unauthenticated attackers to inject arbitrary JavaScript via the 'failure_message' parameter due to insufficient input sanitization and output escaping. An attacker can craft a malicious link that, when clicked by a victim, executes JavaScript in the victim's browser session with access to sensitive data or session tokens. No public exploit code or active exploitation has been confirmed at the time of analysis.
Technical ContextAI
The vulnerability stems from CWE-79 (Improper Neutralization of Input During Web Page Generation), a classic reflected XSS flaw. The Accept Stripe Payments Using Contact Form 7 plugin, which integrates Stripe payment processing with Contact Form 7, fails to properly sanitize and escape the 'failure_message' parameter before outputting it in HTML context. The vulnerable code path is in class.cf7sa.lib.php (line 696 per the plugin repository reference), where user-supplied input is reflected directly into the page response without adequate sanitization via functions like sanitize_text_field() or escaping via wp_kses_post(). WordPress plugins must follow strict output escaping practices (esc_html(), esc_attr(), wp_kses_post()) to prevent XSS, particularly for parameters exposed in URLs or form submissions.
Affected ProductsAI
The Accept Stripe Payments Using Contact Form 7 WordPress plugin is affected in all versions up to and including 3.1. This plugin extends Contact Form 7 to accept Stripe payments and is distributed through the official WordPress plugin repository (https://plugins.trac.wordpress.org/browser/accept-stripe-payments-using-contact-form-7/). Wordfence reported the vulnerability with reference ID d9e77e3f-dcd8-426a-be0f-24eb65c6709e, and the plugin repository references changeset 3418155 and line 696 of class.cf7sa.lib.php as the vulnerable code location.
RemediationAI
Update the Accept Stripe Payments Using Contact Form 7 plugin to a patched version released after 3.1. The WordPress plugin repository changeset 3418155 indicates a fix has been committed; install the latest available version of the plugin via WordPress admin dashboard (Plugins > Updates) or manually download the patched version from https://plugins.trac.wordpress.org/. Ensure the 'failure_message' parameter and all user-controlled input is properly sanitized using WordPress sanitization functions (sanitize_text_field(), sanitize_textarea_field()) on input and escaped using appropriate escaping functions (esc_html(), esc_attr(), wp_kses_post()) on output before rendering in HTML. As an interim mitigation, disable the plugin if not actively required, or restrict access to payment pages via IP whitelisting or authentication until patched. For additional guidance, reference Wordfence's vulnerability report at https://www.wordfence.com/threat-intel/vulnerabilities/id/d9e77e3f-dcd8-426a-be0f-24eb65c6709e.
The isMail transport in PHPMailer before 5.2.20 might allow remote attackers to pass extra parameters to the mail comman
The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
The Hash Form - Drag & Drop Form Builder plugin for WordPress is vulnerable to arbitrary file uploads due to missing fil
The GiveWP - Donation Plugin and Fundraising Platform plugin for WordPress is vulnerable to PHP Object Injection in all
The Simple File List plugin for WordPress through version 4.2.2 contains an unauthenticated remote code execution vulner
The AI Engine WordPress plugin through version 3.1.3 exposes Bearer Token values through the /mcp/v1/ REST API endpoint
The Ninja Forms plugin before 2.9.42.1 for WordPress allows remote attackers to conduct PHP object injection attacks via
The Business Directory Plugin - Easy Listing Directories for WordPress plugin for WordPress is vulnerable to time-based
SQL injection in the NotificationX WordPress plugin (versions up to and including 2.8.2) allows unauthenticated remote a
The POST SMTP Mailer - Email log, Delivery Failure Notifications and Best Mail SMTP for WordPress plugin for WordPress i
The MasterStudy LMS WordPress Plugin - for Online Courses and Education plugin for WordPress is vulnerable to union base
The Country State City Dropdown CF7 plugin for WordPress is vulnerable to SQL Injection via the ‘cnt’ and 'sid' paramete
Same weakness CWE-79 – Cross-site Scripting (XSS)
View allShare
External POC / Exploit Code
Leaving vuln.today