Kns Dynamic Discounts for WooCommerce Security & Risk Analysis

wordpress.org/plugins/kns-dynamic-discounts-for-woocommerce

A flexible WooCommerce discount plugin with BOGO campaigns, tiered quantity pricing, customer segmentation, usage limits, and scheduling.

0 active installs v1.0.0 PHP 7.4+ WP 5.8+ Updated Mar 3, 2026
bogobulk-discountsdiscountsdynamic-pricingwoocommerce
100
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Kns Dynamic Discounts for WooCommerce Safe to Use in 2026?

Generally Safe

Score 100/100

Kns Dynamic Discounts for WooCommerce has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 2mo ago
Risk Assessment

The plugin "kns-dynamic-discounts-for-woocommerce" v1.0.0 demonstrates a generally good security posture due to its consistent use of prepared statements for SQL queries and strong output escaping. The absence of known CVEs and recorded vulnerability history further suggests a mature development process regarding security. However, a significant concern arises from the substantial attack surface exposed through AJAX handlers, with 14 out of 21 handlers lacking authentication checks. This presents a notable risk of unauthorized access and potential exploitation of functionality by unauthenticated users. The presence of bundled libraries like Select2 and Freemius, while not inherently problematic, warrants attention for potential outdated versions and associated vulnerabilities in future assessments.

Key Concerns

  • 14 AJAX handlers without auth checks
  • Bundled libraries (Select2, Freemius)
Vulnerabilities
None known

Kns Dynamic Discounts for WooCommerce Security Vulnerabilities

No known vulnerabilities — this is a good sign.
Version History

Kns Dynamic Discounts for WooCommerce Release Timeline

v1.0.0Current
Code Analysis
Analyzed Apr 16, 2026

Kns Dynamic Discounts for WooCommerce Code Analysis

Dangerous Functions
0
Raw SQL Queries
0
58 prepared
Unescaped Output
13
775 escaped
Nonce Checks
8
Capability Checks
7
File Operations
1
External Requests
0
Bundled Libraries
2

Bundled Libraries

Select2Freemius

SQL Query Safety

100% prepared58 total queries

Output Escaping

98% escaped788 total outputs
Attack Surface
14 unprotected

Kns Dynamic Discounts for WooCommerce Attack Surface

Entry Points24
Unprotected14

AJAX Handlers 21

authwp_ajax_knsdd_add_groupincludes/ajax/class-knsdd-ajax-groups.php:14
authwp_ajax_knsdd_delete_groupincludes/ajax/class-knsdd-ajax-groups.php:15
authwp_ajax_knsdd_edit_groupincludes/ajax/class-knsdd-ajax-groups.php:16
authwp_ajax_knsdd_save_group_datesincludes/ajax/class-knsdd-ajax-groups.php:17
authwp_ajax_knsdd_duplicate_groupincludes/ajax/class-knsdd-ajax-groups.php:18
authwp_ajax_knsdd_toggle_group_pausedincludes/ajax/class-knsdd-ajax-groups.php:19
authwp_ajax_knsdd_export_groupsincludes/ajax/class-knsdd-ajax-groups.php:20
authwp_ajax_knsdd_import_groupsincludes/ajax/class-knsdd-ajax-groups.php:21
authwp_ajax_knsdd_bulk_actionincludes/ajax/class-knsdd-ajax-groups.php:22
authwp_ajax_knsdd_get_product_promoincludes/ajax/class-knsdd-ajax-promos.php:6
noprivwp_ajax_knsdd_get_product_promoincludes/ajax/class-knsdd-ajax-promos.php:7
authwp_ajax_knsdd_save_rulesincludes/ajax/class-knsdd-ajax-rules.php:10
authwp_ajax_knsdd_get_product_categoriesincludes/ajax/class-knsdd-ajax-rules.php:11
authwp_ajax_knsdd_search_productsincludes/ajax/class-knsdd-ajax-search.php:10
authwp_ajax_knsdd_search_customersincludes/ajax/class-knsdd-ajax-search.php:11
authwp_ajax_knsdd_get_products_by_idsincludes/ajax/class-knsdd-ajax-search.php:12
authwp_ajax_knsdd_get_tier_tableincludes/ajax/class-knsdd-ajax-tiers.php:6
noprivwp_ajax_knsdd_get_tier_tableincludes/ajax/class-knsdd-ajax-tiers.php:7
authwp_ajax_knsdd_get_notificationsincludes/notifications/class-knsdd-notifications.php:55
authwp_ajax_knsdd_dismiss_notificationincludes/notifications/class-knsdd-notifications.php:56
authwp_ajax_knsdd_mark_notification_readincludes/notifications/class-knsdd-notifications.php:57

Shortcodes 3

[knsdd_product_promo] includes/class-knsdd-frontend.php:57
[knsdd_tier_table] includes/class-knsdd-frontend.php:59
[knsdd_language_switcher] includes/class-knsdd-i18n.php:19
WordPress Hooks 78
actionadmin_menuincludes/admin/class-knsdd-admin-menu.php:34
actionadmin_enqueue_scriptsincludes/admin/pages/class-knsdd-page-groups.php:12
actionadmin_enqueue_scriptsincludes/admin/pages/class-knsdd-page-rules.php:12
actionadmin_initincludes/admin/pages/class-knsdd-page-settings.php:15
actionadmin_initincludes/admin/pages/class-knsdd-page-settings.php:17
actionadmin_enqueue_scriptsincludes/admin/pages/class-knsdd-page-settings.php:18
actionadmin_enqueue_scriptsincludes/admin/pages/class-knsdd-page-settings.php:19
filterposts_orderbyincludes/ajax/class-knsdd-ajax-search.php:81
actionwoocommerce_before_calculate_totalsincludes/class-knsdd-cart.php:17
actionwoocommerce_before_calculate_totalsincludes/class-knsdd-cart.php:18
actionwoocommerce_checkout_create_order_fee_itemincludes/class-knsdd-cart.php:19
actionwoocommerce_checkout_create_order_line_itemincludes/class-knsdd-cart.php:21
actioninitincludes/class-knsdd-frontend.php:20
actionwoocommerce_widget_shopping_cart_before_buttonsincludes/class-knsdd-frontend.php:23
actionwoocommerce_cart_totals_before_order_totalincludes/class-knsdd-frontend.php:30
actionwoocommerce_review_order_before_order_totalincludes/class-knsdd-frontend.php:34
actionwoocommerce_checkout_billingincludes/class-knsdd-frontend.php:36
actionwoocommerce_checkout_before_customer_detailsincludes/class-knsdd-frontend.php:38
actionwoocommerce_before_checkout_formincludes/class-knsdd-frontend.php:40
actionwp_enqueue_scriptsincludes/class-knsdd-frontend.php:43
filterwoocommerce_cart_item_nameincludes/class-knsdd-frontend.php:47
filterwoocommerce_mini_cart_item_nameincludes/class-knsdd-frontend.php:49
filterwoocommerce_cart_item_priceincludes/class-knsdd-frontend.php:52
filterwoocommerce_cart_item_subtotalincludes/class-knsdd-frontend.php:53
filterwoocommerce_widget_cart_item_quantityincludes/class-knsdd-frontend.php:54
actioninitincludes/class-knsdd-frontend.php:96
actionwoocommerce_single_product_summaryincludes/class-knsdd-frontend.php:239
actionwoocommerce_before_add_to_cart_formincludes/class-knsdd-frontend.php:243
actionwoocommerce_after_add_to_cart_formincludes/class-knsdd-frontend.php:247
actionwoocommerce_single_product_summaryincludes/class-knsdd-frontend.php:252
actionwoocommerce_before_add_to_cart_formincludes/class-knsdd-frontend.php:258
actionwoocommerce_single_product_summaryincludes/class-knsdd-frontend.php:262
actionwoocommerce_after_add_to_cart_formincludes/class-knsdd-frontend.php:265
actionwp_footerincludes/class-knsdd-frontend.php:284
actionwoocommerce_single_product_summaryincludes/class-knsdd-frontend.php:292
actionwoocommerce_before_add_to_cart_formincludes/class-knsdd-frontend.php:296
actionwoocommerce_after_add_to_cart_formincludes/class-knsdd-frontend.php:300
actionwoocommerce_single_product_summaryincludes/class-knsdd-frontend.php:306
actionwoocommerce_before_add_to_cart_formincludes/class-knsdd-frontend.php:312
actionwoocommerce_single_product_summaryincludes/class-knsdd-frontend.php:316
actionwoocommerce_after_add_to_cart_formincludes/class-knsdd-frontend.php:319
filterplugin_localeincludes/class-knsdd-i18n.php:16
actioninitincludes/class-knsdd-i18n.php:17
filtergettextincludes/class-knsdd-i18n.php:18
actionwoocommerce_payment_completeincludes/class-knsdd-tracker.php:13
actionwoocommerce_order_status_processingincludes/class-knsdd-tracker.php:14
actionwoocommerce_order_status_completedincludes/class-knsdd-tracker.php:15
actionwoocommerce_order_status_on-holdincludes/class-knsdd-tracker.php:17
actionwoocommerce_order_status_pendingincludes/class-knsdd-tracker.php:19
actionwoocommerce_checkout_order_processedincludes/class-knsdd-tracker.php:20
actionwoocommerce_order_refundedincludes/class-knsdd-tracker.php:22
actionwoocommerce_order_status_cancelledincludes/class-knsdd-tracker.php:23
actionwoocommerce_order_status_failedincludes/class-knsdd-tracker.php:24
actionwoocommerce_order_status_changedincludes/class-knsdd-tracker.php:26
actionwp_trash_postincludes/class-knsdd-tracker.php:27
actionbefore_delete_postincludes/class-knsdd-tracker.php:28
actiondelete_postincludes/class-knsdd-tracker.php:29
actionwoocommerce_before_delete_orderincludes/class-knsdd-tracker.php:31
actionwoocommerce_trash_orderincludes/class-knsdd-tracker.php:32
actionwoocommerce_thankyouincludes/class-knsdd-tracker.php:34
actionwoocommerce_before_checkout_processincludes/frontend/services/class-knsdd-checkout-protection.php:9
actionwoocommerce_checkout_order_processedincludes/frontend/services/class-knsdd-checkout-protection.php:10
actionwoocommerce_after_checkout_validationincludes/frontend/services/class-knsdd-checkout-protection.php:11
actionwoocommerce_after_checkout_validationincludes/frontend/services/class-knsdd-checkout-protection.php:14
actionwoocommerce_after_checkout_validationincludes/frontend/services/class-knsdd-checkout-protection.php:17
actionwp_enqueue_scriptsincludes/frontend/services/class-knsdd-checkout-protection.php:20
actioninitincludes/notifications/class-knsdd-notifications.php:48
actionadmin_enqueue_scriptsincludes/notifications/class-knsdd-notifications.php:51
actionadmin_footerincludes/notifications/class-knsdd-notifications.php:52
actionknsdd_group_updatedincludes/notifications/class-knsdd-notifications.php:60
actionknsdd_rules_updatedincludes/notifications/class-knsdd-notifications.php:61
actionknsdd_check_notifications_cronincludes/notifications/class-knsdd-notifications.php:68
actionafter_uninstallkns-dynamic-discounts-for-woocommerce.php:66
actionbefore_woocommerce_initkns-dynamic-discounts-for-woocommerce.php:139
actionadmin_initkns-dynamic-discounts-for-woocommerce.php:204
actionplugins_loadedkns-dynamic-discounts-for-woocommerce.php:233
actionadmin_noticeskns-dynamic-discounts-for-woocommerce.php:256
actionplugins_loadedkns-dynamic-discounts-for-woocommerce.php:264

Scheduled Events 1

knsdd_check_notifications_cron
Maintenance & Trust

Kns Dynamic Discounts for WooCommerce Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedMar 3, 2026
PHP min version7.4
Downloads237

Community Trust

Rating0/100
Number of ratings0
Active installs0
Developer Profile

Kns Dynamic Discounts for WooCommerce Developer Profile

knsapp

1 plugin · 0 total installs

94
trust score
Avg Security Score
100/100
Avg Patch Time
30 days
View full developer profile
Detection Fingerprints

How We Detect Kns Dynamic Discounts 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/kns-dynamic-discounts-for-woocommerce/includes/frontend/renderers/class-knsdd-wc-notice-presenter.php/wp-content/plugins/kns-dynamic-discounts-for-woocommerce/includes/frontend/renderers/class-knsdd-checkout-notices-co

HTML / DOM Fingerprints

CSS Classes
knsdd-promotion-message
HTML Comments
<!-- KNS Dynamic Discounts for WooCommerce --><!-- KNSDD: Discount Engine --><!-- KNSDD: Usage Tracker --><!-- KNSDD: Campaigns -->+11 more
Data Attributes
data-knsdd-campaign-iddata-knsdd-promotion-iddata-knsdd-campaign-type
JS Globals
knsdd_promo_ajax_objectknsdd_promo_params
REST Endpoints
/wp-json/knsdd/v1/promo/wp-json/knsdd/v1/cart
Shortcode Output
[knsdd_promo_message]
FAQ

Frequently Asked Questions about Kns Dynamic Discounts for WooCommerce