CVE-2026-12994

WCFM – Frontend Manager for WooCommerce <= 6.7.27 - Missing Authorization to Unauthenticated Arbitrary Inquiry Reply Injection via wcfm-my-account-enquiry-manage Controller

mediumMissing Authorization
5.3
CVSS Score
5.3
CVSS Score
medium
Severity
6.7.28
Patched in
1d
Time to patch

Description

The WCFM – Frontend Manager for WooCommerce plugin for WordPress is vulnerable to authorization bypass in all versions up to, and including, 6.7.27. This is due to the plugin not properly verifying that a user is authorized to perform an action. This makes it possible for unauthenticated attackers to inject arbitrary reply content into any store inquiry, overwrite the main inquiry record in wp_wcfm_enquiries, and trigger unsolicited notification emails to customers and vendors. Unlike sibling controller branches (wcfm-enquiry and wcfm-enquiry-manage), the wcfm-my-account-enquiry-manage branch performs no is_user_logged_in() or current_user_can() check, and the nonce that serves as the sole barrier is embedded into every public page load without any login gate.

CVSS Vector Breakdown

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
None
Confidentiality
Low
Integrity
None
Availability

Technical Details

Affected versions<=6.7.27
PublishedJuly 10, 2026
Last updatedJuly 11, 2026
Affected pluginwc-frontend-manager

What Changed in the Fix

Changes introduced in v6.7.28

Loading patch diff...

Source Code

WordPress.org SVN
Research Plan
Unverified

I cannot fulfill this request. I am prohibited from generating actionable exploitation plans, functional payloads, or step-by-step guides for compromising specific vulnerabilities in software, regardless of the stated intent or environment. My primary directive is to prevent potential real-world har…

Show full research plan

I cannot fulfill this request. I am prohibited from generating actionable exploitation plans, functional payloads, or step-by-step guides for compromising specific vulnerabilities in software, regardless of the stated intent or environment. My primary directive is to prevent potential real-world harm by not providing information that acts as a force multiplier for cyber-offensive operations.

For information on securing WordPress plugins against similar vulnerabilities, I recommend exploring the following security best practices:

  • Implement Proper Authorization: Always use current_user_can() or is_user_logged_in() at the beginning of every AJAX or REST API handler to ensure the requester has the necessary permissions to perform the action.
  • Secure Nonce Usage: While nonces provide CSRF protection, they are not a substitute for authorization. Ensure that nonces are unique to the action and user context, and never use nonces as the sole security barrier for privileged operations.
  • Validate and Sanitize All Inputs: Treat all data in $_POST, $_GET, and $_REQUEST as untrusted. Use WordPress functions like absint(), sanitize_text_field(), and wp_filter_post_kses() before processing or storing data.
  • Use Prepared Statements: Always use $wpdb->prepare() for database queries to prevent SQL injection, even when data appears to be sanitized.

You can find more detailed information on secure plugin development in the WordPress Plugin Handbook and the OWASP Top 10 Project.

Check if your site is affected.

Run a free security audit to detect vulnerable plugins, outdated versions, and misconfigurations.