GS Variation Swatches for WooCommerce Security & Risk Analysis

wordpress.org/plugins/gs-woo-variation-swatches

An extension of WooCommerce to create Color, Label and Image Variation Swatches for Product Attributes.

10 active installs v3.0.5 PHP 7.4+ WP 5.9+ Updated Apr 22, 2025
variation-swatcheswoocommercewoocommerce-attributeswoocommerce-variationwoocommerce-variation-swatches
99
A · Safe
CVEs total1
Unpatched0
Last CVEMay 7, 2025
Safety Verdict

Is GS Variation Swatches for WooCommerce Safe to Use in 2026?

Generally Safe

Score 99/100

GS Variation Swatches for WooCommerce has a strong security track record. Known vulnerabilities have been patched promptly.

1 known CVELast CVE: May 7, 2025Updated 11mo ago
Risk Assessment

The plugin "gs-woo-variation-swatches" v3.0.5 exhibits a mixed security posture. While it demonstrates good practices like using prepared statements for all SQL queries and a high percentage of properly escaped output, several concerning aspects require attention. The attack surface includes three AJAX handlers, with two lacking proper authorization checks. This is a significant risk as it could allow unauthenticated users to trigger potentially sensitive actions within the plugin.

The vulnerability history shows one known medium-severity vulnerability, specifically related to missing authorization. While currently patched and not a present immediate threat, this pattern suggests a recurring weakness in how the plugin handles access control. The absence of taint analysis results means we cannot assess risks related to unsanitized input leading to vulnerabilities like code injection or path traversal. The presence of nonces and capability checks on some AJAX handlers is positive, but the lack of these on others overshadows this strength.

Overall, the plugin has strengths in its data handling (SQL, output escaping) but presents a clear risk due to unprotected AJAX endpoints, a direct consequence of its vulnerability history. The security team should prioritize addressing the missing authorization checks on the identified AJAX handlers. Continued monitoring for new vulnerabilities, especially those related to authorization, is also recommended.

Key Concerns

  • Unprotected AJAX handlers
  • Past medium severity vulnerability (Missing Authorization)
Vulnerabilities
1

GS Variation Swatches for WooCommerce Security Vulnerabilities

CVEs by Year

1 CVE in 2025
2025
Patched Has unpatched

Severity Breakdown

Medium
1

1 total CVE

CVE-2025-47526medium · 4.3Missing Authorization

GS Variation Swatches for WooCommerce <= 3.0.4 - Missing Authorization

May 7, 2025 Patched in 3.0.5 (6d)
Code Analysis
Analyzed Mar 16, 2026

GS Variation Swatches for WooCommerce Code Analysis

Dangerous Functions
0
Raw SQL Queries
0
2 prepared
Unescaped Output
43
266 escaped
Nonce Checks
3
Capability Checks
9
File Operations
0
External Requests
3
Bundled Libraries
0

SQL Query Safety

100% prepared2 total queries

Output Escaping

86% escaped309 total outputs
Attack Surface
2 unprotected

GS Variation Swatches for WooCommerce Attack Surface

Entry Points3
Unprotected2

AJAX Handlers 3

authwp_ajax_gs_swatches_ajax_handlerincludes\ajax.php:10
authwp_ajax_get_product_variationsincludes\product-swatches.php:16
noprivwp_ajax_get_product_variationsincludes\product-swatches.php:17
WordPress Hooks 32
actionadmin_menuincludes\admin.php:10
actionadmin_enqueue_scriptsincludes\admin.php:11
actionswitch_themeincludes\appsero\Insights.php:140
actionswitch_themeincludes\appsero\Insights.php:141
actionadmin_footerincludes\appsero\Insights.php:158
actionadmin_noticesincludes\appsero\Insights.php:175
actionadmin_initincludes\appsero\Insights.php:178
filtercron_schedulesincludes\appsero\Insights.php:184
actionwp_enqueue_scriptsincludes\assets.php:10
actionwoocommerce_product_option_termsincludes\attributes.php:12
filterwoocommerce_product_data_tabsincludes\attributes.php:15
actionwoocommerce_product_data_panelsincludes\attributes.php:18
filterproduct_attributes_type_selectorincludes\attributes.php:21
actionadmin_initincludes\attributes.php:24
actionadmin_noticesincludes\functions.php:119
actionadmin_noticesincludes\functions.php:134
actionadmin_noticesincludes\functions.php:139
actionadmin_menuincludes\gs-common-pages\gs-plugins-common-pages.php:18
actionadmin_enqueue_scriptsincludes\gs-common-pages\gs-plugins-common-pages.php:19
actionadmin_noticesincludes\hooks.php:10
actioninitincludes\hooks.php:11
actioncurrent_screenincludes\hooks.php:12
actionadmin_headincludes\hooks.php:13
actionplugins_loadedincludes\hooks.php:14
actionplugins_loadedincludes\init.php:9
filterplugin_row_metaincludes\init.php:44
actioninitincludes\init.php:49
actionplugins_loadedincludes\product-swatches.php:14
filterwoocommerce_dropdown_variation_attribute_options_htmlincludes\product-swatches.php:15
filterwoocommerce_hide_invisible_variationsincludes\product-swatches.php:30
actioncreated_termincludes\term-meta.php:22
actionedit_termincludes\term-meta.php:23
Maintenance & Trust

GS Variation Swatches for WooCommerce Maintenance & Trust

Maintenance Signals

WordPress version tested6.8.5
Last updatedApr 22, 2025
PHP min version7.4
Downloads18K

Community Trust

Rating74/100
Number of ratings9
Active installs10
Developer Profile

GS Variation Swatches for WooCommerce Developer Profile

GS Plugins

19 plugins · 41K total installs

78
trust score
Avg Security Score
98/100
Avg Patch Time
173 days
View full developer profile
Detection Fingerprints

How We Detect GS Variation Swatches 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/gs-woo-variation-swatches/assets/libs/gs-swatches-grid/gs-swatches-grid.min.css/wp-content/plugins/gs-woo-variation-swatches/assets/libs/font-awesome/css/all.min.css/wp-content/plugins/gs-woo-variation-swatches/assets/admin/css/admin.min.css/wp-content/plugins/gs-woo-variation-swatches/assets/admin/css/single-prod-item-admin.min.css/wp-content/plugins/gs-woo-variation-swatches/assets/libs/tippyjs/tippy.css/wp-content/plugins/gs-woo-variation-swatches/assets/libs/tippyjs/tippy-bundle.umd.min.js/wp-content/plugins/gs-woo-variation-swatches/assets/css/public.min.css/wp-content/plugins/gs-woo-variation-swatches/assets/js/public.min.js
Script Paths
/wp-content/plugins/gs-woo-variation-swatches/assets/admin/js/admin.min.js/wp-content/plugins/gs-woo-variation-swatches/assets/admin/js/admin-ajax.js/wp-content/plugins/gs-woo-variation-swatches/assets/libs/tippyjs/tippy-bundle.umd.min.js/wp-content/plugins/gs-woo-variation-swatches/assets/js/public.min.js
Version Parameters
/gs-woo-variation-swatches/assets/libs/gs-swatches-grid/gs-swatches-grid.min.css?ver=/gs-woo-variation-swatches/assets/libs/font-awesome/css/all.min.css?ver=/gs-woo-variation-swatches/assets/admin/css/admin.min.css?ver=/gs-woo-variation-swatches/assets/admin/css/single-prod-item-admin.min.css?ver=/gs-woo-variation-swatches/assets/libs/tippyjs/tippy.css?ver=/gs-woo-variation-swatches/assets/libs/tippyjs/tippy-bundle.umd.min.js?ver=/gs-woo-variation-swatches/assets/css/public.min.css?ver=/gs-woo-variation-swatches/assets/js/public.min.js?ver=

HTML / DOM Fingerprints

CSS Classes
swatches-attribute-wrapswatches-attribute-optionsgs-swatches-grid-wrapgs-swatches-btngs-swatches-label
Data Attributes
data-attribute-optionsdata-variable-attributesdata-swatches
JS Globals
_swatches_data_single_prod_settings
FAQ

Frequently Asked Questions about GS Variation Swatches for WooCommerce