Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/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:N/S:U/C:N/I:L/A:N
Lifecycle Timeline
2DescriptionCVE.org
The Cost Calculator Builder plugin for WordPress is vulnerable to Unauthenticated Price Manipulation and Insecure Direct Object Reference (IDOR) in all versions up to, and including, 4.0.1 only when used in combination with Cost Calculator Builder PRO. This is due to the ccb_woocommerce_payment AJAX action being registered via wp_ajax_nopriv, making it accessible to unauthenticated users, and the renderWooCommercePayment() function passing user-controlled data directly to CCBWooCheckout::init() without authorization checks. This makes it possible for unauthenticated attackers to add WooCommerce products to their cart with attacker-controlled prices.
AnalysisAI
Unauthenticated attackers can manipulate product prices in WooCommerce carts via an unprotected AJAX action in the Cost Calculator Builder plugin for WordPress (versions up to 4.0.1) when used with Cost Calculator Builder PRO. The vulnerability stems from the ccb_woocommerce_payment AJAX endpoint being registered without authentication requirements (wp_ajax_nopriv) and failing to validate user input before passing it to checkout initialization, allowing price modification without authorization. This is an Insecure Direct Object Reference (IDOR) flaw with moderate CVSS score (5.3) that enables integrity violations but not confidentiality breaches or availability impact.
Technical ContextAI
The Cost Calculator Builder plugin registers AJAX actions accessible to unauthenticated users via WordPress's wp_ajax_nopriv hook, which bypasses standard WordPress nonce and capability checks. The vulnerable renderWooCommercePayment() function accepts user-controlled pricing data and passes it directly to CCBWooCheckout::init() without performing authorization verification or input sanitization. This is a classic IDOR vulnerability (CWE-862: Missing Authorization) where the application trusts client-supplied values that should be derived from server-side inventory and pricing data. The flaw only manifests when Cost Calculator Builder PRO is active, suggesting the PRO version extends core functionality with payment handling logic that exposes this authorization gap.
RemediationAI
Update Cost Calculator Builder plugin to version 4.0.2 or later, which addresses the authorization bypass by adding proper authentication and capability checks to the ccb_woocommerce_payment AJAX action. Ensure Cost Calculator Builder PRO is also updated concurrently, as the vulnerability requires both plugins to manifest. In the interim, if immediate patching is not possible, disable the Cost Calculator Builder PRO payment integration by deactivating the plugin or using a Web Application Firewall (WAF) rule to block POST requests to /wp-admin/admin-ajax.php?action=ccb_woocommerce_payment; note that this will prevent legitimate price-calculation checkout flows until patching is complete. Additionally, implement server-side price validation in WooCommerce by enforcing that all cart prices must be verified against the product database before order processing, ensuring that client-submitted prices are rejected if they do not match server records. See Wordfence advisory for technical details: https://www.wordfence.com/threat-intel/vulnerabilities/id/fe684f43-8442-4b29-84a8-da8c6863e62b?source=cve
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-862 – Missing Authorization
View allSame technique Authentication Bypass
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2025-209816