Additional Variation Images Gallery for WooCommerce Security & Risk Analysis

wordpress.org/plugins/woo-variation-gallery

Allows inserting multiple images per variation to let your store customers to see different sets of images when WooCommerce product variations are swi …

20K active installs v1.3.28 PHP 7.4+ WP 5.7+ Updated Mar 5, 2025
additional-variation-image-galleryproduct-variation-imageproduct-variation-image-galleryvariation-images-gallerywoocommerce-variation-image-gallery
92
A · Safe
CVEs total1
Unpatched0
Last CVEAug 20, 2019
Safety Verdict

Is Additional Variation Images Gallery for WooCommerce Safe to Use in 2026?

Generally Safe

Score 92/100

Additional Variation Images Gallery for WooCommerce has a strong security track record. Known vulnerabilities have been patched promptly.

1 known CVELast CVE: Aug 20, 2019Updated 1yr ago
Risk Assessment

The static analysis of woo-variation-gallery v1.3.28 indicates a generally good security posture, with a notable lack of exploitable entry points like unprotected AJAX handlers, REST API routes, or shortcodes. The plugin also demonstrates strong practices in output escaping, with 93% of outputs being properly handled. Nonce and capability checks are present, and there are no identified dangerous functions or file operations that raise immediate red flags.

However, a significant concern lies in the SQL query handling. The presence of a single SQL query that is not using prepared statements presents a potential risk for SQL injection, even if the attack surface is otherwise limited. The external HTTP request also warrants attention, as it could be a vector for further vulnerabilities if not handled with extreme care regarding input validation and output sanitization. The vulnerability history, while not indicating any currently unpatched issues, shows a past medium severity Cross-Site Scripting vulnerability, which highlights the need for continued vigilance in secure coding practices.

In conclusion, while the plugin has made significant strides in securing its entry points and output handling, the unescaped SQL query and the external HTTP request represent clear areas for improvement. The past XSS vulnerability also suggests that ongoing security audits are beneficial to prevent future similar issues. Overall, the plugin is in a relatively good state but requires attention to the identified SQL and HTTP request risks.

Key Concerns

  • SQL queries not using prepared statements
  • External HTTP request without obvious sanitization
Vulnerabilities
1

Additional Variation Images Gallery for WooCommerce Security Vulnerabilities

CVEs by Year

1 CVE in 2019
2019
Patched Has unpatched

Severity Breakdown

Medium
1

1 total CVE

CVE-2019-15778medium · 6.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Additional Variation Images Gallery for WooCommerce <= 1.1.28 - Authenticated Stored Cross-Site Scripting

Aug 20, 2019 Patched in 1.2.29 (1617d)
Code Analysis
Analyzed Mar 16, 2026

Additional Variation Images Gallery for WooCommerce Code Analysis

Dangerous Functions
0
Raw SQL Queries
1
0 prepared
Unescaped Output
35
466 escaped
Nonce Checks
5
Capability Checks
3
File Operations
0
External Requests
1
Bundled Libraries
0

SQL Query Safety

0% prepared1 total queries

Output Escaping

93% escaped501 total outputs
Attack Surface

Additional Variation Images Gallery for WooCommerce Attack Surface

Entry Points0
Unprotected0
WordPress Hooks 66
filtergetwooplugins_get_settings_pagesincludes\class-woo-variation-gallery-backend.php:37
filterplugin_row_metaincludes\class-woo-variation-gallery-backend.php:39
actionadmin_enqueue_scriptsincludes\class-woo-variation-gallery-backend.php:43
actionadmin_footerincludes\class-woo-variation-gallery-backend.php:44
actionwoocommerce_save_product_variationincludes\class-woo-variation-gallery-backend.php:46
actionwoocommerce_product_after_variable_attributesincludes\class-woo-variation-gallery-backend.php:47
actionafter_switch_themeincludes\class-woo-variation-gallery-backend.php:49
actionadmin_initincludes\class-woo-variation-gallery-backend.php:51
actionwoocommerce_initincludes\class-woo-variation-gallery-compatibility.php:30
actionwoocommerce_initincludes\class-woo-variation-gallery-compatibility.php:31
filterwoo_variation_gallery_default_widthincludes\class-woo-variation-gallery-compatibility.php:32
actionwoo_variation_duplicator_variation_saveincludes\class-woo-variation-gallery-compatibility.php:34
actionwoo_variation_duplicator_image_saved_toincludes\class-woo-variation-gallery-compatibility.php:35
actionwoo_variation_duplicator_image_saved_fromincludes\class-woo-variation-gallery-compatibility.php:36
filterwoo_variation_swatches_get_available_preview_variationincludes\class-woo-variation-gallery-compatibility.php:41
actionwp_enqueue_scriptsincludes\class-woo-variation-gallery-compatibility.php:44
actionwp_footerincludes\class-woo-variation-gallery-compatibility.php:46
actiondokan_product_after_variable_attributesincludes\class-woo-variation-gallery-compatibility.php:49
actionmvx_frontend_product_after_variable_attributesincludes\class-woo-variation-gallery-compatibility.php:52
actionmvx_frontend_enqueue_scriptsincludes\class-woo-variation-gallery-compatibility.php:53
actionwoocommerce_before_single_product_summaryincludes\class-woo-variation-gallery-compatibility.php:296
actionwoocommerce_before_single_product_summaryincludes\class-woo-variation-gallery-compatibility.php:305
filteroxygen_woocommerce_use_custom_product_image_gallery_layoutincludes\class-woo-variation-gallery-compatibility.php:312
filterwoocommerce_csv_product_import_mapping_optionsincludes\class-woo-variation-gallery-export-import.php:48
filterwoocommerce_csv_product_import_mapping_default_columnsincludes\class-woo-variation-gallery-export-import.php:49
actionwoocommerce_product_import_inserted_product_objectincludes\class-woo-variation-gallery-export-import.php:53
filterbody_classincludes\class-woo-variation-gallery-frontend.php:31
actionwp_enqueue_scriptsincludes\class-woo-variation-gallery-frontend.php:32
filterwoocommerce_post_classincludes\class-woo-variation-gallery-frontend.php:33
filterwoocommerce_available_variationincludes\class-woo-variation-gallery-frontend.php:34
actionwc_ajax_get_default_galleryincludes\class-woo-variation-gallery-frontend.php:36
actionwc_ajax_get_variation_galleryincludes\class-woo-variation-gallery-frontend.php:37
filterdisable_woo_variation_galleryincludes\class-woo-variation-gallery-frontend.php:39
filterwoo_variation_product_gallery_inline_styleincludes\class-woo-variation-gallery-frontend.php:40
actionafter_setup_themeincludes\class-woo-variation-gallery-frontend.php:42
actionwp_footerincludes\class-woo-variation-gallery-frontend.php:43
filterwc_get_templateincludes\class-woo-variation-gallery-frontend.php:45
filterwc_get_template_partincludes\class-woo-variation-gallery-frontend.php:46
filterwoo_variation_gallery_migration_listincludes\class-woo-variation-gallery-migrate.php:29
filterwoocommerce_debug_toolsincludes\class-woo-variation-gallery-migrate.php:30
filterwoo_variation_gallery_migrate_imagesincludes\class-woo-variation-gallery-migrate.php:31
actioninitincludes\class-woo-variation-gallery-migrate.php:32
actionadmin_initincludes\class-woo-variation-gallery-migration.php:29
actionwoocommerce_hide_woo_variation_gallery_migrate_noticeincludes\class-woo-variation-gallery-migration.php:33
actionrest_api_initincludes\class-woo-variation-gallery-rest-api.php:30
actiongetwooplugins_after_delete_optionsincludes\class-woo-variation-gallery-settings.php:32
actiongetwooplugins_sidebarincludes\class-woo-variation-gallery-settings.php:33
filtershow_getwooplugins_save_buttonincludes\class-woo-variation-gallery-settings.php:34
filtershow_getwooplugins_sidebarincludes\class-woo-variation-gallery-settings.php:35
actioninitincludes\class-woo-variation-gallery.php:31
actionadmin_menuincludes\getwooplugins\class-getwooplugins-admin-menus.php:34
actionadmin_menuincludes\getwooplugins\class-getwooplugins-admin-menus.php:35
actionadmin_menuincludes\getwooplugins\class-getwooplugins-admin-menus.php:36
filtersubmenu_fileincludes\getwooplugins\class-getwooplugins-admin-menus.php:37
actionwp_loadedincludes\getwooplugins\class-getwooplugins-admin-menus.php:40
actionadmin_enqueue_scriptsincludes\getwooplugins\class-getwooplugins-admin-menus.php:42
actionadmin_footerincludes\getwooplugins\class-getwooplugins-plugin-deactivate-feedback.php:13
actionadmin_enqueue_scriptsincludes\getwooplugins\class-getwooplugins-plugin-deactivate-feedback.php:15
filtergetwooplugins_settings_tabs_arrayincludes\getwooplugins\class-getwooplugins-settings-page.php:10
actiongetwooplugins_sectionsincludes\getwooplugins\class-getwooplugins-settings-page.php:11
actiongetwooplugins_settingsincludes\getwooplugins\class-getwooplugins-settings-page.php:12
actiongetwooplugins_settings_saveincludes\getwooplugins\class-getwooplugins-settings-page.php:13
actiongetwooplugins_settings_actionincludes\getwooplugins\class-getwooplugins-settings-page.php:14
actionadmin_noticeswoo-variation-gallery.php:51
actionplugins_loadedwoo-variation-gallery.php:70
actionbefore_woocommerce_initwoo-variation-gallery.php:79
Maintenance & Trust

Additional Variation Images Gallery for WooCommerce Maintenance & Trust

Maintenance Signals

WordPress version tested6.7.5
Last updatedMar 5, 2025
PHP min version7.4
Downloads971K

Community Trust

Rating94/100
Number of ratings157
Active installs20K
Developer Profile

Additional Variation Images Gallery for WooCommerce Developer Profile

Emran Ahmed

6 plugins · 324K total installs

73
trust score
Avg Security Score
92/100
Avg Patch Time
1617 days
View full developer profile
Detection Fingerprints

How We Detect Additional Variation Images Gallery 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/woo-variation-gallery/assets/css/woo-variation-gallery-frontend.css/wp-content/plugins/woo-variation-gallery/assets/js/woo-variation-gallery-frontend.js/wp-content/plugins/woo-variation-gallery/assets/css/woo-variation-gallery-admin.css/wp-content/plugins/woo-variation-gallery/assets/js/woo-variation-gallery-admin.js
Script Paths
/wp-content/plugins/woo-variation-gallery/assets/js/woo-variation-gallery-frontend.js/wp-content/plugins/woo-variation-gallery/assets/js/woo-variation-gallery-admin.js
Version Parameters
woo-variation-gallery/assets/css/woo-variation-gallery-frontend.css?ver=woo-variation-gallery/assets/js/woo-variation-gallery-frontend.js?ver=woo-variation-gallery/assets/css/woo-variation-gallery-admin.css?ver=woo-variation-gallery/assets/js/woo-variation-gallery-admin.js?ver=

HTML / DOM Fingerprints

CSS Classes
woo-variation-gallery-wrapperwoo-variation-gallery-postboxwoo-variation-gallery-insidewoo-variation-gallery-image-containerwoo-variation-gallery-imagesadd-woo-variation-gallery-image-wrapperadd-woo-variation-gallery-imagewoo-variation-gallery-pro-button
Data Attributes
data-product_variation_iddata-product_variation_loop
JS Globals
woo_variation_gallery
REST Endpoints
/wp-json/woo-variation-gallery/v1/settings
FAQ

Frequently Asked Questions about Additional Variation Images Gallery for WooCommerce