Dynamic Variation Images for WooCommerce Security & Risk Analysis

wordpress.org/plugins/dynamic-variation-images

Add custom images to WooCommerce product variations with advanced gallery layouts and multiple display styles.

0 active installs v1.0.3 PHP 7.4+ WP 6.0+ Updated Jan 2, 2026
product-galleryswatchesvariation-imagesvariationswoocommerce
100
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Dynamic Variation Images for WooCommerce Safe to Use in 2026?

Generally Safe

Score 100/100

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

No known CVEs Updated 7mo ago
Risk Assessment

The 'dynamic-variation-images' plugin exhibits a mixed security posture. While it demonstrates strong practices in output escaping (98% proper) and SQL query preparation (63% using prepared statements), and has a clean vulnerability history with no known CVEs, there are significant concerns regarding its attack surface. A substantial portion of its entry points, specifically 10 out of 19, lack authentication checks. This includes 9 AJAX handlers and 1 REST API route, presenting a considerable risk for unauthorized access and manipulation if these endpoints are exploitable. The taint analysis, while reporting no critical or high severity flows, did identify 5 flows with unsanitized paths, which warrants further investigation to confirm the absence of critical vulnerabilities. The plugin's strengths lie in its clean history and diligent output handling, but the lack of robust access control on numerous entry points is a notable weakness that elevates its overall risk profile.

Key Concerns

  • High number of unprotected AJAX handlers
  • Unprotected REST API route
  • Flows with unsanitized paths
Vulnerabilities
None known

Dynamic Variation Images for WooCommerce Security Vulnerabilities

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

Dynamic Variation Images for WooCommerce Release Timeline

v1.0.3Current
v1.0.2
v1.0.1
Code Analysis
Analyzed Mar 17, 2026

Dynamic Variation Images for WooCommerce Code Analysis

Dangerous Functions
0
Raw SQL Queries
6
10 prepared
Unescaped Output
17
922 escaped
Nonce Checks
21
Capability Checks
13
File Operations
2
External Requests
2
Bundled Libraries
0

SQL Query Safety

63% prepared16 total queries

Output Escaping

98% escaped939 total outputs
Data Flows · Security
5 unsanitized

Data Flow Analysis

9 flows5 with unsanitized paths
render_dashboard (includes\admin\class-wcvip-admin.php:159)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
10 unprotected

Dynamic Variation Images for WooCommerce Attack Surface

Entry Points19
Unprotected10

AJAX Handlers 14

authwp_ajax_wcvip_submit_deactivation_feedbackincludes\admin\class-wcvip-deactivation-feedback.php:23
authwp_ajax_wcvip_get_product_variations_designerincludes\admin\class-wcvip-visual-designer.php:22
authwp_ajax_wcvip_save_designer_layoutincludes\admin\class-wcvip-visual-designer.php:23
authwp_ajax_wcvip_preview_variationincludes\admin\class-wcvip-visual-designer.php:24
authwp_ajax_wcvip_refresh_selector_previewincludes\admin\class-wcvip-visual-designer.php:25
authwp_ajax_wcvip_get_productsincludes\class-wcvip-core.php:174
authwp_ajax_wcvip_get_variationsincludes\class-wcvip-core.php:175
authwp_ajax_wcvip_save_imagesincludes\class-wcvip-core.php:176
authwp_ajax_wcvip_get_imagesincludes\class-wcvip-core.php:177
authwp_ajax_wcvip_save_display_styleincludes\class-wcvip-core.php:178
authwp_ajax_wcvip_get_designer_htmlincludes\class-wcvip-core.php:179
authwp_ajax_wcvip_reset_productincludes\class-wcvip-core.php:180
authwp_ajax_wcvip_upload_imageincludes\class-wcvip-core.php:181
authwp_ajax_wcvip_save_preview_designincludes\class-wcvip-core.php:226

REST API Routes 4

POST/wp-json/wcvip/v1/media/uploadincludes\api\class-wcvip-media-endpoint.php:21
GET/wp-json/wcvip/v1/productsincludes\api\class-wcvip-rest-api.php:21
GET/wp-json/wcvip/v1/products/(?P<id>\d+)/variationsincludes\api\class-wcvip-rest-api.php:31
GET/wp-json/wcvip/v1/variations/(?P<id>\d+)/imagesincludes\api\class-wcvip-rest-api.php:48

Shortcodes 1

[wcvip_variation_selector] includes\frontend\class-wcvip-frontend.php:35
WordPress Hooks 58
actionadmin_initincludes\admin\class-wcvip-admin.php:35
actionadmin_post_wcvip_bulk_uploadincludes\admin\class-wcvip-bulk-actions.php:21
actionadmin_post_wcvip_bulk_assignincludes\admin\class-wcvip-bulk-actions.php:22
actionadmin_footerincludes\admin\class-wcvip-deactivation-feedback.php:21
actionadmin_enqueue_scriptsincludes\admin\class-wcvip-deactivation-feedback.php:22
actionadmin_enqueue_scriptsincludes\admin\class-wcvip-visual-designer.php:21
filterwoocommerce_rest_product_responseincludes\api\class-wcvip-products-endpoint.php:21
filterwoocommerce_rest_product_variation_responseincludes\api\class-wcvip-variations-endpoint.php:21
actionadmin_enqueue_scriptsincludes\class-wcvip-core.php:169
actionadmin_enqueue_scriptsincludes\class-wcvip-core.php:170
actionadmin_menuincludes\class-wcvip-core.php:171
actionadd_meta_boxesincludes\class-wcvip-core.php:184
actionsave_postincludes\class-wcvip-core.php:185
actionadmin_initincludes\class-wcvip-core.php:188
actionadmin_menuincludes\class-wcvip-core.php:189
actionadmin_initincludes\class-wcvip-core.php:196
actionadmin_initincludes\class-wcvip-core.php:200
actionwcvip_clean_security_logsincludes\class-wcvip-core.php:203
actionwp_enqueue_scriptsincludes\class-wcvip-core.php:216
actionwp_enqueue_scriptsincludes\class-wcvip-core.php:217
filterwoocommerce_available_variationincludes\class-wcvip-core.php:220
actionwoocommerce_product_thumbnailsincludes\class-wcvip-core.php:221
actionwoocommerce_before_variations_formincludes\class-wcvip-core.php:222
actionwoocommerce_before_single_productincludes\class-wcvip-core.php:223
actionwoocommerce_before_shop_loop_itemincludes\class-wcvip-core.php:231
actionwoocommerce_single_product_summaryincludes\class-wcvip-core.php:236
actionwoocommerce_cart_item_thumbnailincludes\class-wcvip-core.php:241
actionrest_api_initincludes\class-wcvip-core.php:252
actioninitincludes\class-wcvip-core.php:261
actionelementor/widgets/registerincludes\class-wcvip-core.php:266
actioninitincludes\class-wcvip-core.php:271
actionet_builder_readyincludes\class-wcvip-core.php:276
actioninitincludes\class-wcvip-core.php:282
actioninitincludes\class-wcvip-core.php:287
actionwoocommerce_single_product_summaryincludes\frontend\class-wcvip-quick-view.php:21
filterwoocommerce_product_variation_get_imageincludes\frontend\class-wcvip-quick-view.php:22
actionwoocommerce_before_shop_loop_itemincludes\frontend\class-wcvip-shop-page.php:21
filterwoocommerce_product_get_imageincludes\frontend\class-wcvip-shop-page.php:22
actioninitincludes\helpers\class-wcvip-compatibility.php:21
actioninitincludes\helpers\class-wcvip-compatibility.php:22
filterwcvip_gallery_wrapper_classincludes\helpers\class-wcvip-compatibility.php:45
filterwoocommerce_single_product_image_gallery_classesincludes\helpers\class-wcvip-compatibility.php:55
actionwp_enqueue_scriptsincludes\helpers\class-wcvip-compatibility.php:60
actionbefore_woocommerce_initincludes\helpers\class-wcvip-woocommerce-compat.php:22
actionbricks/elements/registerincludes\integrations\bricks\class-wcvip-bricks.php:21
filterwcvip_gallery_wrapperincludes\integrations\class-wcvip-page-builders.php:22
actionet_builder_readyincludes\integrations\divi\class-wcvip-divi.php:21
actioninitincludes\integrations\gutenberg\blocks\variation-gallery\block.php:34
actiondokan_product_edit_after_variationsincludes\integrations\vendors\class-wcvip-dokan.php:26
filterdokan_vendor_can_manage_productincludes\integrations\vendors\class-wcvip-dokan.php:27
actionwcfm_product_manager_variations_endincludes\integrations\vendors\class-wcvip-wcfm.php:26
filterplugins_apiincludes\licensing\class-wcvip-updater.php:26
filtersite_transient_update_pluginsincludes\licensing\class-wcvip-updater.php:27
actionupgrader_process_completeincludes\licensing\class-wcvip-updater.php:28
actionadmin_noticeswc-variation-images-pro.php:40
actionbefore_woocommerce_initwc-variation-images-pro.php:85
filterwcvip_upgrade_urlwc-variation-images-pro.php:91
actionplugins_loadedwc-variation-images-pro.php:109

Scheduled Events 1

wcvip_clean_security_logs
Maintenance & Trust

Dynamic Variation Images for WooCommerce Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedJan 2, 2026
PHP min version7.4
Downloads212

Community Trust

Rating0/100
Number of ratings0
Active installs0
Developer Profile

Dynamic Variation Images for WooCommerce Developer Profile

shalconnects

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 Dynamic Variation Images 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/dynamic-variation-images/assets/css/admin.css/wp-content/plugins/dynamic-variation-images/assets/js/admin.js
Script Paths
/wp-content/plugins/dynamic-variation-images/assets/js/admin.js
Version Parameters
dynamic-variation-images/assets/css/admin.css?ver=dynamic-variation-images/assets/js/admin.js?ver=

HTML / DOM Fingerprints

CSS Classes
wcvip-designer-imagewcvip-designer-thumbnail
HTML Comments
<!-- Start: Dynamic Variation Images --><!-- End: Dynamic Variation Images --><!-- Dynamic Variation Images - Designer -->
Data Attributes
data-wcvip-designer-imagedata-wcvip-product-iddata-wcvip-variation-id
JS Globals
wcvipData
REST Endpoints
/wp-json/wcvip/v1/product/
FAQ

Frequently Asked Questions about Dynamic Variation Images for WooCommerce