CVE-2025-68025
Executive Summary
CVE-2025-68025 is a Missing Authorization vulnerability in the Addonify Floating Cart For WooCommerce WordPress plugin (versions <= 1.2.17). This flaw allows an unauthenticated attacker to exploit incorrectly configured access control security levels, potentially leading to unauthorized actions within the WooCommerce floating cart functionality. The vulnerability is classified as a WordPress ecosystem issue, not related to Apache or Nginx. With a CVSS score of 6.5 (Medium), it poses a moderate risk, primarily affecting the integrity of the cart operations. No public proof-of-concept (PoC) or exploit code is currently available, and the patch status remains unknown.
This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.
No signup required
Supply Chain & Package Security
This vulnerability affects a WordPress plugin distributed via the official WordPress plugin repository. Users should verify the integrity of their plugin files and monitor for updates from the vendor. Since no patch is available, supply chain risk is elevated, and users must implement compensating controls.
CVSS Breakdown & Threat Level
- CVSS Score: 6.5 (Medium)
- Vector: 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
- Confidentiality Impact: None
- Integrity Impact: Low
- Availability Impact: None
The threat level is Medium due to the low complexity and no required privileges, but the impact is limited to integrity only.
Deep Dive & Mechanics
The vulnerability resides in the Addonify Floating Cart For WooCommerce plugin, specifically in its AJAX handlers or REST API endpoints that manage cart operations. The plugin fails to properly verify user capabilities or nonces before executing sensitive actions, such as updating cart quantities, applying coupons, or modifying cart items. This allows an unauthenticated attacker to send crafted HTTP requests to manipulate the floating cart state.
The core issue is a Missing Authorization check (CWE-862), where the plugin does not validate whether the current user has the necessary permissions (e.g., edit_shop_orders or manage_woocommerce) to perform the action. In a typical WooCommerce setup, cart modifications are allowed for authenticated users, but this plugin may expose endpoints that bypass standard WooCommerce access controls.
Vulnerable vs. Patched Code
Since no patch is available, we can only analyze the vulnerable code pattern. The vulnerable version likely contains code similar to:
// Vulnerable: No capability check
add_action('wp_ajax_nopriv_addonify_update_cart', 'addonify_update_cart_callback');
function addonify_update_cart_callback() {
// Process cart update without checking user permissions
$cart_item_key = sanitize_text_field($_POST['cart_item_key']);
$quantity = intval($_POST['quantity']);
WC()->cart->set_quantity($cart_item_key, $quantity);
wp_send_json_success();
}
A patched version would include a capability check:
// Patched: Added capability check
add_action('wp_ajax_nopriv_addonify_update_cart', 'addonify_update_cart_callback');
function addonify_update_cart_callback() {
if (!current_user_can('edit_shop_orders')) {
wp_send_json_error('Unauthorized', 403);
return;
}
// Process cart update
$cart_item_key = sanitize_text_field($_POST['cart_item_key']);
$quantity = intval($_POST['quantity']);
WC()->cart->set_quantity($cart_item_key, $quantity);
wp_send_json_success();
}
Exploitation & Lab Setup
Red Team
To exploit this vulnerability, an attacker would send a crafted HTTP POST request to the WordPress AJAX endpoint. Since no public exploit exists, the following is a conceptual example:
# Exploit: Manipulate floating cart without authentication
curl -X POST http://target.com/wp-admin/admin-ajax.php \
-d "action=addonify_update_cart&cart_item_key=abc123&quantity=999"
Lab Setup:
- Install WordPress with WooCommerce and Addonify Floating Cart For WooCommerce <= 1.2.17.
- Ensure the plugin is active.
- Use a tool like Burp Suite or cURL to send unauthenticated requests to the AJAX endpoint.
- Observe that the cart is modified without requiring login.
Blue Team
Detection:
- Monitor for unusual AJAX requests to
admin-ajax.phpwithactionparameters starting withaddonify_. - Look for requests from unauthenticated users (no
wordpress_logged_incookie) that modify cart data. - Check for abnormal quantity values or cart item keys in logs.
Hunting:
- Search web server logs for
POST /wp-admin/admin-ajax.phpwithaction=addonify_*and no authentication cookie. - Use the Sigma rule below to detect such patterns.
Indicators of Compromise (IOCs)
- Network: HTTP POST requests to
/wp-admin/admin-ajax.phpwithaction=addonify_*parameters. - File: Presence of plugin files in
/wp-content/plugins/addonify-floating-cart/with version <= 1.2.17. - Log: Web server logs showing repeated AJAX calls from the same IP without authentication.
- Behavior: Unauthorized changes to WooCommerce cart items or quantities.
Detection Engineering
YARA Rule
rule Detect_Addonify_Floating_Cart_Vuln {
meta:
description = "Detects vulnerable Addonify Floating Cart For WooCommerce plugin files"
author = "Valters IT"
date = "2025-04-10"
reference = "CVE-2025-68025"
strings:
$vuln_func = "addonify_update_cart_callback" nocase
$ajax_hook = "wp_ajax_nopriv_addonify" nocase
$no_check = "current_user_can" nocase
condition:
$vuln_func and $ajax_hook and not $no_check
}
Sigma Rule
title: Unauthenticated Addonify Floating Cart AJAX Request
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects unauthenticated AJAX requests to Addonify Floating Cart endpoints
author: Valters IT
date: 2025-04-10
logsource:
category: webserver
product: apache
detection:
selection:
cs-method: POST
cs-uri-query|contains: admin-ajax.php
cs-uri-query|contains|all:
- action=addonify_
condition: selection
falsepositives:
- Legitimate admin actions (rare)
level: medium
Suricata Rule
alert http any any -> any any (msg:"CVE-2025-68025 - Addonify Floating Cart Unauthenticated AJAX"; flow:to_server,established; content:"POST"; http_method; content:"/wp-admin/admin-ajax.php"; http_uri; content:"action=addonify_"; http_client_body; classtype:attempted-admin; sid:1000001; rev:1;)
Remediation & Mitigation
Immediate Actions:
- Disable the plugin until a patch is released.
- Implement a Web Application Firewall (WAF) rule to block unauthenticated requests to
admin-ajax.phpwithaction=addonify_*parameters. - Monitor logs for exploitation attempts using the provided Sigma rule.
Long-term Fix:
- Apply the vendor patch once available (check the WordPress plugin repository for updates).
- If patching is not possible, consider replacing the plugin with an alternative that has proper access controls.
Compensating Controls:
- Use a security plugin like Wordfence to add additional authentication checks.
- Restrict access to
admin-ajax.phpvia.htaccessfor non-logged-in users (if feasible).
Valters IT
Securing Digital Frontiers
What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.
💣 PoC CODE AVAILABLE
Exploit code for this CVE is tracked in our database.
Access poc_code via API Pro.