CVE-2024-10854

4.3 MEDIUM

📋 TL;DR

The Buy one click WooCommerce WordPress plugin has an authorization vulnerability that allows authenticated users with Subscriber-level access or higher to import plugin settings without proper permission checks. This affects all versions up to 2.2.9. Attackers can modify plugin configuration, potentially disrupting e-commerce functionality.

💻 Affected Systems

Products:
  • Buy one click WooCommerce WordPress plugin
Versions: All versions up to and including 2.2.9
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress installation with the vulnerable plugin activated. Any user with Subscriber role or higher can exploit this.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

An attacker could import malicious plugin settings that disrupt checkout functionality, modify pricing, redirect payments, or inject malicious code into the e-commerce flow.

🟠

Likely Case

Attackers modify plugin settings to disrupt the one-click purchase functionality, potentially causing checkout errors or modifying product display settings.

🟢

If Mitigated

With proper user role management and plugin updates, impact is limited to configuration changes that can be reverted by administrators.

🌐 Internet-Facing: MEDIUM
🏢 Internal Only: LOW

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires authenticated access with at least Subscriber privileges. The vulnerability is in a specific AJAX endpoint that lacks proper capability checks.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.3.0 or later

Vendor Advisory: https://wordpress.org/plugins/buy-one-click-woocommerce/#developers

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find 'Buy one click WooCommerce' plugin. 4. Click 'Update Now' if available, or download version 2.3.0+ from WordPress repository. 5. Activate the updated plugin.

🔧 Temporary Workarounds

Temporary Plugin Deactivation

all

Deactivate the vulnerable plugin until patched

wp plugin deactivate buy-one-click-woocommerce

Restrict User Registration

all

Temporarily disable new user registration to limit attack surface

wp option update users_can_register 0

🧯 If You Can't Patch

  • Remove Subscriber and higher roles from untrusted users
  • Implement web application firewall rules to block requests to the vulnerable AJAX endpoint

🔍 How to Verify

Check if Vulnerable:

Check plugin version in WordPress admin under Plugins → Installed Plugins. If version is 2.2.9 or lower, system is vulnerable.

Check Version:

wp plugin get buy-one-click-woocommerce --field=version

Verify Fix Applied:

Verify plugin version is 2.3.0 or higher in WordPress admin panel. Test that only administrators can access plugin import functionality.

📡 Detection & Monitoring

Log Indicators:

  • POST requests to /wp-admin/admin-ajax.php with action=buy_one_click_import_options from non-admin users
  • Unusual plugin setting changes in WordPress logs

Network Indicators:

  • HTTP POST requests to admin-ajax.php with specific action parameter from unexpected user roles

SIEM Query:

source="wordpress" AND uri_path="/wp-admin/admin-ajax.php" AND http_method="POST" AND form_data.action="buy_one_click_import_options" AND user_role!="administrator"

🔗 References

📤 Share & Export