Quotes for WooCommerce Security & Risk Analysis

wordpress.org/plugins/quotes-for-woocommerce

This plugin allows the site admin the ability to accept quote requests for products. Prices can be hidden. No payments will be taken at Checkout.

4K active installs v2.12 PHP 7.4+ WP 4.5+ Updated Mar 6, 2026
hide-priceproposalsquoteswoocommercewoocommerce-request-quote
99
A · Safe
CVEs total2
Unpatched0
Last CVENov 30, 2023
Download
Safety Verdict

Is Quotes for WooCommerce Safe to Use in 2026?

Generally Safe

Score 99/100

Quotes for WooCommerce has a strong security track record. Known vulnerabilities have been patched promptly.

2 known CVEsLast CVE: Nov 30, 2023Updated 28d ago
Risk Assessment

The "quotes-for-woocommerce" plugin, in version 2.12, presents a generally good security posture based on the provided static analysis. The absence of unprotected AJAX handlers, REST API routes, shortcodes, and cron events significantly limits the plugin's attack surface. The code also demonstrates strong security practices with 100% of SQL queries using prepared statements, a high percentage of properly escaped output, and the presence of nonce and capability checks on its entry points. The limited external HTTP requests and lack of file operations further contribute to a favorable security profile. Taint analysis also shows no critical or high severity unsanitized flows.

However, the plugin's vulnerability history is a significant concern. With two known medium severity vulnerabilities in the past, specifically related to Missing Authorization and Cross-Site Request Forgery (CSRF), it indicates a recurring pattern of security weaknesses. While there are currently no unpatched vulnerabilities, the existence of past issues, especially those related to authorization and CSRF, suggests potential for similar flaws to re-emerge. The last vulnerability was noted in late 2023, indicating that these types of issues have been present relatively recently.

In conclusion, while the current version of "quotes-for-woocommerce" exhibits good coding practices and a small attack surface, the historical pattern of medium severity vulnerabilities, particularly in authorization and CSRF, warrants caution. Users should remain vigilant and ensure the plugin is always updated to the latest version to mitigate any potential risks stemming from past vulnerability types.

Key Concerns

  • Past medium severity vulnerabilities (2 total)
  • Past vulnerabilities related to Missing Authorization
  • Past vulnerabilities related to CSRF
  • Minor unescaped output (5% of outputs)
Vulnerabilities
2

Quotes for WooCommerce Security Vulnerabilities

CVEs by Year

2 CVEs in 2023
2023
Patched Has unpatched

Severity Breakdown

Medium
2

2 total CVEs

CVE-2023-51680medium · 4.3Missing Authorization

Quotes for WooCommerce <= 2.0.1 - Missing Authorization

Nov 30, 2023 Patched in 2.0.2 (54d)
WF-6954364e-567c-407c-afc6-983b7257cc88-quotes-for-woocommercemedium · 4.3Cross-Site Request Forgery (CSRF)

Quotes for WooCommerce <= 2.0.1 - Cross-Site Request Forgery

Nov 30, 2023 Patched in 2.0.2 (54d)
Code Analysis
Analyzed Mar 16, 2026

Quotes for WooCommerce Code Analysis

Dangerous Functions
0
Raw SQL Queries
0
4 prepared
Unescaped Output
13
241 escaped
Nonce Checks
5
Capability Checks
4
File Operations
0
External Requests
1
Bundled Libraries
0

SQL Query Safety

100% prepared4 total queries

Output Escaping

95% escaped254 total outputs
Data Flows
All sanitized

Data Flow Analysis

2 flows
init_tracker (includes\tracking\class-vama-plugin-tracking.php:163)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface

Quotes for WooCommerce Attack Surface

Entry Points3
Unprotected0

AJAX Handlers 3

authwp_ajax_qwc_update_statusclass-quotes-wc.php:534
authwp_ajax_qwc_send_quoteclass-quotes-wc.php:535
authwp_ajax_qwc_menu_notice_dismissedclass-quotes-wc.php:536
WordPress Hooks 66
actionadmin_initclass-quotes-wc.php:47
filterwoocommerce_get_settings_pagesclass-quotes-wc.php:50
filterwoocommerce_variable_sale_price_htmlclass-quotes-wc.php:52
filterwoocommerce_variable_price_htmlclass-quotes-wc.php:53
filterwoocommerce_get_price_htmlclass-quotes-wc.php:54
filterwoocommerce_composited_product_price_stringclass-quotes-wc.php:56
filterwoocommerce_product_add_to_cart_textclass-quotes-wc.php:59
filterwoocommerce_product_single_add_to_cart_textclass-quotes-wc.php:60
filterwp_enqueue_scriptsclass-quotes-wc.php:63
filterwoocommerce_cart_item_priceclass-quotes-wc.php:65
actionwoocommerce_widget_shopping_cart_totalclass-quotes-wc.php:68
actionwoocommerce_widget_shopping_cart_totalclass-quotes-wc.php:70
filterwoocommerce_add_to_cart_validationclass-quotes-wc.php:73
filterwoocommerce_cart_needs_paymentclass-quotes-wc.php:75
filterwoocommerce_cancel_unpaid_orderclass-quotes-wc.php:78
actioninitclass-quotes-wc.php:81
actionadmin_initclass-quotes-wc.php:82
actionwoocommerce_payment_gatewaysclass-quotes-wc.php:83
filterwoocommerce_available_payment_gatewaysclass-quotes-wc.php:86
actionwoocommerce_checkout_update_order_metaclass-quotes-wc.php:89
filterwoocommerce_my_account_my_orders_actionsclass-quotes-wc.php:91
actionwoocommerce_order_item_add_action_buttonsclass-quotes-wc.php:94
actionadmin_enqueue_scriptsclass-quotes-wc.php:97
actionwp_enqueue_scriptsclass-quotes-wc.php:99
actionadmin_initclass-quotes-wc.php:101
filterwc_add_to_cart_message_htmlclass-quotes-wc.php:104
filterthe_titleclass-quotes-wc.php:107
filterwoocommerce_cart_needs_shippingclass-quotes-wc.php:110
filterwoocommerce_billing_fieldsclass-quotes-wc.php:113
filterwoocommerce_checkout_fieldsclass-quotes-wc.php:114
actionwoocommerce_blocks_loadedclass-quotes-wc.php:121
actionwoocommerce_proceed_to_checkoutclass-quotes-wc.php:124
actionadmin_noticesclass-quotes-wc.php:127
actioninitclass-quotes-wc.php:129
actionwoocommerce_blocks_payment_method_type_registrationclass-quotes-wc.php:1131
actionwoocommerce_process_product_metaincludes\admin\class-quotes-product-settings.php:20
actionadmin_initincludes\admin\class-quotes-wc-general-settings.php:36
actionadd_option_qwc_enable_global_quoteincludes\admin\class-quotes-wc-general-settings.php:39
actionupdate_option_qwc_enable_global_quoteincludes\admin\class-quotes-wc-general-settings.php:40
actionadd_option_qwc_enable_global_pricesincludes\admin\class-quotes-wc-general-settings.php:41
actionupdate_option_qwc_enable_global_pricesincludes\admin\class-quotes-wc-general-settings.php:42
actionwoocommerce_admin_settings_sanitize_option_qwc_enable_global_quoteincludes\admin\class-quotes-wc-general-settings.php:44
actionwoocommerce_admin_settings_sanitize_option_qwc_enable_global_pricesincludes\admin\class-quotes-wc-general-settings.php:45
actionwoocommerce_admin_settings_sanitize_option_qwc_hide_address_fieldsincludes\admin\class-quotes-wc-general-settings.php:46
filterwoocommerce_get_sections_qwc_quotes_tabincludes\admin\class-quotes-wc-settings-section.php:19
actioninitincludes\admin\class-quotes-wc-settings-section.php:20
actionwoocommerce_store_api_checkout_update_order_from_requestincludes\blocks\class-quotes-wc-blocks-integration.php:21
actionwoocommerce_store_api_checkout_order_processedincludes\blocks\class-quotes-wc-blocks-integration.php:23
filterwoocommerce_thankyou_order_received_textincludes\class-quotes-payment-gateway.php:52
actionadmin_footerincludes\class-qwc-data-tracking.php:24
actionqwc_init_tracker_completedincludes\class-qwc-data-tracking.php:26
filterqwc_tracker_display_noticeincludes\class-qwc-data-tracking.php:27
filterqwc_tracker_dataincludes\class-qwc-data-tracking.php:29
filterwoocommerce_product_data_store_cpt_get_products_queryincludes\class-qwc-data-tracking.php:31
actionwoocommerce_checkout_order_processedincludes\class-qwc-email-manager.php:19
filterwoocommerce_email_classesincludes\class-qwc-email-manager.php:20
filterpllwc_order_email_actionsincludes\class-qwc-email-manager.php:21
filterwoocommerce_template_directoryincludes\class-qwc-email-manager.php:36
actionqwc_pending_quote_notificationincludes\emails\class-qwc-request-new-quote.php:33
actionqwc_request_sent_notificationincludes\emails\class-qwc-request-sent.php:35
actionqwc_send_quote_notificationincludes\emails\class-qwc-send-quote.php:34
actionadmin_noticesincludes\tracking\class-vama-plugin-tracking.php:78
actionadmin_initincludes\tracking\class-vama-plugin-tracking.php:80
actionplugins_loadedincludes\tracking\class-vama-plugin-tracking.php:86
actionadmin_noticesquotes-woocommerce.php:31
actionbefore_woocommerce_initquotes-woocommerce.php:52
Maintenance & Trust

Quotes for WooCommerce Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedMar 6, 2026
PHP min version7.4
Downloads103K

Community Trust

Rating92/100
Number of ratings61
Active installs4K
Developer Profile

Quotes for WooCommerce Developer Profile

pinal.shah

2 plugins · 4K total installs

85
trust score
Avg Security Score
96/100
Avg Patch Time
54 days
View full developer profile
Detection Fingerprints

How We Detect Quotes for WooCommerce

Patterns used to identify this plugin on WordPress sites during automated security audits and web crawling.

Asset Fingerprints

Asset Paths
/wp-content/plugins/quotes-for-woocommerce/css/qwc-admin-style.css/wp-content/plugins/quotes-for-woocommerce/css/qwc-frontend-style.css/wp-content/plugins/quotes-for-woocommerce/js/qwc-admin-script.js/wp-content/plugins/quotes-for-woocommerce/js/qwc-frontend-script.js
Script Paths
/wp-content/plugins/quotes-for-woocommerce/js/qwc-admin-script.js/wp-content/plugins/quotes-for-woocommerce/js/qwc-frontend-script.js
Version Parameters
quotes-for-woocommerce/css/qwc-admin-style.css?ver=quotes-for-woocommerce/css/qwc-frontend-style.css?ver=quotes-for-woocommerce/js/qwc-admin-script.js?ver=quotes-for-woocommerce/js/qwc-frontend-script.js?ver=

HTML / DOM Fingerprints

CSS Classes
qwc-hide-priceqwc-quote-buttonqwc-add-quote-button
Data Attributes
data-qwc-id
JS Globals
qwc_params
FAQ

Frequently Asked Questions about Quotes for WooCommerce