CVE-2025-12468

5.3 MEDIUM

📋 TL;DR

This vulnerability allows unauthenticated attackers to access all WooCommerce coupon codes, IDs, and expiration status through a misconfigured REST API endpoint in the FunnelKit Automations WordPress plugin. Any WordPress site using the vulnerable plugin version is affected, potentially exposing sensitive promotional data.

💻 Affected Systems

Products:
  • FunnelKit Automations – Email Marketing Automation and CRM for WordPress & WooCommerce
Versions: All versions up to and including 3.6.4.1
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress with WooCommerce and the FunnelKit Automations plugin installed. The vulnerability exists in default plugin configuration.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could harvest all active coupon codes, leading to revenue loss through unauthorized discounts, or use coupon IDs for further attacks on the WooCommerce system.

🟠

Likely Case

Unauthorized users extract coupon data for personal use or resale, causing financial loss through coupon abuse and undermining marketing campaigns.

🟢

If Mitigated

With proper authentication controls, only authorized users can access coupon data, preventing information exposure.

🌐 Internet-Facing: HIGH - The vulnerable endpoint is publicly accessible without authentication, making any exposed WordPress site immediately vulnerable.
🏢 Internal Only: LOW - This is primarily an internet-facing vulnerability since the REST API endpoint is designed for web access.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Exploitation requires only HTTP requests to the vulnerable endpoint. No authentication or special tools needed.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Version 3.6.4.2 or later

Vendor Advisory: https://plugins.trac.wordpress.org/browser/wp-marketing-automations/trunk/includes/api/wc/class-bwfan-api-wc-coupons.php

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find 'FunnelKit Automations' and check for updates. 4. Update to version 3.6.4.2 or newer. 5. Verify the update completed successfully.

🔧 Temporary Workarounds

Block vulnerable REST endpoint

linux

Add .htaccess rule to block access to the vulnerable API endpoint

RewriteEngine On
RewriteRule ^wp-json/funnelkit-automations/wc-coupons - [F,L]

Disable plugin temporarily

all

Deactivate FunnelKit Automations plugin until patched

wp plugin deactivate wp-marketing-automations

🧯 If You Can't Patch

  • Implement web application firewall (WAF) rules to block requests to /wp-json/funnelkit-automations/wc-coupons
  • Restrict access to WordPress REST API endpoints using authentication middleware or IP whitelisting

🔍 How to Verify

Check if Vulnerable:

Send GET request to https://[your-site]/wp-json/funnelkit-automations/wc-coupons. If it returns coupon data without authentication, the site is vulnerable.

Check Version:

wp plugin get wp-marketing-automations --field=version

Verify Fix Applied:

After updating, attempt the same GET request. It should return 401 Unauthorized or no coupon data.

📡 Detection & Monitoring

Log Indicators:

  • Multiple GET requests to /wp-json/funnelkit-automations/wc-coupons from unauthenticated users
  • Unusual coupon usage patterns in WooCommerce logs

Network Indicators:

  • HTTP 200 responses to /wp-json/funnelkit-automations/wc-coupons without authentication headers
  • Burst of requests to coupon API endpoint

SIEM Query:

source="web_logs" AND uri_path="/wp-json/funnelkit-automations/wc-coupons" AND http_method="GET" AND NOT auth_token=*

🔗 References

📤 Share & Export