Brandy Blocks Security & Risk Analysis

wordpress.org/plugins/brandy-blocks

30+ extra Gutenberg blocks, block enhancements, a pattern library, and e-commerce features for the Brandy WordPress theme.

40 active installs v1.3.2 PHP 5.7+ WP 3.0+ Updated Apr 14, 2026
blocksgutenbergpage-builderwishlistwoocommerce
100
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Brandy Blocks Safe to Use in 2026?

Generally Safe

Score 100/100

Brandy Blocks has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 1mo ago
Risk Assessment

The "brandy-blocks" v1.3.0 plugin demonstrates a generally good security posture with several strengths. Notably, the absence of any known CVEs and the exclusive use of prepared statements for SQL queries are significant positive indicators. The high percentage of properly escaped output and a substantial number of nonce checks suggest developers are aware of common web security best practices.

However, there are areas of concern that warrant attention. The presence of 6 AJAX handlers without authentication checks represents a potential attack surface that could be exploited if these handlers perform sensitive operations. While taint analysis shows no critical or high-severity issues, the lack of any taint flows analyzed is not necessarily a sign of perfect security but could indicate limited scope in the analysis itself or a lack of complex data manipulation within the plugin that would trigger such findings. The single file operation could also be a minor point of interest depending on its nature and context.

Given the plugin's history of zero recorded vulnerabilities, it suggests a diligent development team or a less complex functionality that hasn't attracted attacker attention. Overall, "brandy-blocks" v1.3.0 has a solid foundation, but the unprotected AJAX endpoints introduce a specific risk that needs to be addressed to further enhance its security.

Key Concerns

  • Unprotected AJAX handlers
Vulnerabilities
None known

Brandy Blocks Security Vulnerabilities

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

Brandy Blocks Release Timeline

v1.3.2Current
v1.3.1
v1.3.0
v1.2.4
v1.2.3
v1.2.2
v1.2.1
v1.2.0
v1.1.9
v1.1.8
v1.1.3
v1.1.2
v1.1
v1.0.9
v1.0.8
v1.0.6
v1.0.5
v1.0.4
v1.0.3
v1.0.2
Code Analysis
Analyzed Mar 16, 2026

Brandy Blocks Code Analysis

Dangerous Functions
0
Raw SQL Queries
0
0 prepared
Unescaped Output
18
171 escaped
Nonce Checks
14
Capability Checks
0
File Operations
1
External Requests
0
Bundled Libraries
0

Output Escaping

90% escaped189 total outputs
Attack Surface
6 unprotected

Brandy Blocks Attack Surface

Entry Points26
Unprotected6

AJAX Handlers 25

authwp_ajax_brandy_get_compare_list_itemsinc\CompareList.php:18
noprivwp_ajax_brandy_get_compare_list_itemsinc\CompareList.php:19
authwp_ajax_brandy_add_to_compare_listinc\CompareList.php:20
noprivwp_ajax_brandy_add_to_compare_listinc\CompareList.php:21
authwp_ajax_brandy_remove_compare_list_iteminc\CompareList.php:22
noprivwp_ajax_brandy_remove_compare_list_iteminc\CompareList.php:23
authwp_ajax_brandy_clear_compare_listinc\CompareList.php:24
noprivwp_ajax_brandy_clear_compare_listinc\CompareList.php:25
authwp_ajax_brandy_get_products_for_modalinc\CompareList.php:26
noprivwp_ajax_brandy_get_products_for_modalinc\CompareList.php:27
authwp_ajax_quick_view_productinc\Packages\Blocks\QuickViewProduct.php:23
noprivwp_ajax_quick_view_productinc\Packages\Blocks\QuickViewProduct.php:24
authwp_ajax_brandy_blocks_update_compare_products_settingsinc\Services\CompareProducts.php:14
authwp_ajax_brandy_blocks_update_google_map_settingsinc\Services\GoogleMap.php:13
authwp_ajax_brandy_blocks_get_size_chartsinc\Services\SizeChart.php:13
authwp_ajax_brandy_blocks_save_size_chartinc\Services\SizeChart.php:14
authwp_ajax_brandy_blocks_delete_size_chartinc\Services\SizeChart.php:15
authwp_ajax_brandy_blocks_search_productsinc\Services\SizeChart.php:16
authwp_ajax_brandy_blocks_search_categoriesinc\Services\SizeChart.php:17
authwp_ajax_brandy_add_to_wishlistinc\Wishlist.php:23
authwp_ajax_brandy_remove_wishlist_iteminc\Wishlist.php:24
noprivwp_ajax_brandy_add_to_wishlistinc\Wishlist.php:25
noprivwp_ajax_brandy_remove_wishlist_iteminc\Wishlist.php:26
authwp_ajax_brandy_get_wishlist_itemsinc\Wishlist.php:27
noprivwp_ajax_brandy_get_wishlist_itemsinc\Wishlist.php:28

Shortcodes 1

[brandy_wishlist_items] inc\Wishlist.php:34
WordPress Hooks 91
actionplugins_loadedbrandy-blocks.php:51
filtercustomize_loaded_componentsbrandy-blocks.php:62
actionadmin_menuinc\Admin\SettingsMenu.php:13
filterplugin_row_metainc\Admin\SettingsMenu.php:15
filteradmin_body_classinc\Admin\SettingsMenu.php:16
actionwp_enqueue_scriptsinc\CompareList.php:28
actionelementor/elements/categories_registeredinc\Elementor\ElementorSetup.php:16
actionelementor/widgets/registerinc\Elementor\ElementorSetup.php:17
actionenqueue_block_editor_assetsinc\Externals\Settings\BlockSlider\Caller.php:14
filterblock_type_metadata_settingsinc\Externals\Settings\BlockSlider\Caller.php:15
actionenqueue_block_editor_assetsinc\Externals\Settings\CustomBoxShadow\Caller.php:68
actionenqueue_block_assetsinc\Externals\Settings\CustomBoxShadow\Caller.php:69
filterrender_block_woocommerce/product-buttoninc\Externals\Settings\CustomBoxShadow\Caller.php:70
filterrender_blockinc\Externals\Settings\CustomBoxShadow\Caller.php:71
actionenqueue_block_editor_assetsinc\Externals\Settings\DisplayAnimation\Caller.php:27
filterrender_blockinc\Externals\Settings\DisplayAnimation\Caller.php:28
actionenqueue_block_editor_assetsinc\Externals\Settings\DisplaySettings\Caller.php:19
actionenqueue_block_assetsinc\Externals\Settings\DisplaySettings\Caller.php:20
filterrender_blockinc\Externals\Settings\DisplaySettings\Caller.php:21
filterblock_type_metadata_settingsinc\Externals\Settings\DisplaySettings\Caller.php:22
actionenqueue_block_editor_assetsinc\Externals\Settings\GridResponsiveLayout\Caller.php:44
filterblock_type_metadata_settingsinc\Externals\Settings\GridResponsiveLayout\Caller.php:45
filterblock_type_metadata_settingsinc\Externals\Settings\GridResponsiveLayout\Caller.php:46
filterrender_blockinc\Externals\Settings\GridResponsiveLayout\Caller.php:52
actionenqueue_block_editor_assetsinc\Externals\Settings\HoverSettings\Caller.php:18
actionenqueue_block_assetsinc\Externals\Settings\HoverSettings\Caller.php:19
filterrender_block_woocommerce/product-buttoninc\Externals\Settings\HoverSettings\Caller.php:20
filterrender_blockinc\Externals\Settings\HoverSettings\Caller.php:21
actionenqueue_block_editor_assetsinc\Externals\Settings\OverrideProductButton\Caller.php:13
actionenqueue_block_assetsinc\Externals\Settings\OverrideProductButton\Caller.php:14
filterrender_block_woocommerce/product-buttoninc\Externals\Settings\OverrideProductButton\Caller.php:15
actionenqueue_block_editor_assetsinc\Externals\Settings\ResponsiveConditions\Caller.php:20
actionenqueue_block_assetsinc\Externals\Settings\ResponsiveConditions\Caller.php:21
filterblock_type_metadata_settingsinc\Externals\Settings\ResponsiveConditions\Caller.php:22
filterrender_blockinc\Externals\Settings\ResponsiveConditions\Caller.php:23
actionenqueue_block_editor_assetsinc\Externals\Settings\StyleProductOriginalPrice\Caller.php:12
filterrender_block_woocommerce/product-priceinc\Externals\Settings\StyleProductOriginalPrice\Caller.php:13
actionenqueue_block_editor_assetsinc\Externals\Settings\TextGradientColor\Caller.php:11
filterblock_type_metadata_settingsinc\Externals\Settings\VisibilityConditions\Caller.php:14
actionenqueue_block_editor_assetsinc\Externals\Settings\VisibilityConditions\Caller.php:15
filterrender_blockinc\Externals\Settings\VisibilityConditions\Caller.php:16
actionenqueue_block_assetsinc\Initialize.php:39
filterrender_blockinc\Initialize.php:40
filterwp_theme_json_data_themeinc\Initialize.php:41
filterscript_loader_taginc\Initialize.php:44
actionadmin_enqueue_scriptsinc\Modules\BlockConfigs\Controller.php:21
actionenqueue_block_editor_assetsinc\Modules\PatternsLibrary\Controller.php:14
filter__experimental_woocommerce_blocks_add_data_attributes_to_blockinc\Packages\Abstracts\AbstractBlock.php:14
actionwp_headinc\Packages\Blocks\Button.php:16
filterblock_editor_settings_allinc\Packages\Blocks\Button.php:18
filterquery_loop_block_query_varsinc\Packages\Blocks\CompareProducts.php:17
filterrest_product_queryinc\Packages\Blocks\CompareProducts.php:24
filterrender_block_brandy/countdowninc\Packages\Blocks\CountDown.php:46
actionwoocommerce_login_failedinc\Packages\Blocks\Form.php:21
actionbrandy_blocks_before_form_contentinc\Packages\Blocks\Form.php:28
actionbrandy_blocks_after_form_contentinc\Packages\Blocks\Form.php:29
actiontemplate_redirectinc\Packages\Blocks\Form.php:30
filterrender_block_contextinc\Packages\Blocks\PostTemplate.php:95
filterrender_block_brandy/quick-view-product-blockinc\Packages\Blocks\QuickViewProduct.php:27
actionwp_footerinc\Packages\Blocks\QuickViewProduct.php:263
filterquery_loop_block_query_varsinc\Packages\Blocks\RecentViewedProducts.php:17
filterrest_product_queryinc\Packages\Blocks\RecentViewedProducts.php:25
filtersidebars_widgetsinc\Packages\Blocks\RecentViewedProducts.php:33
actionenqueue_block_editor_assetsinc\Packages\Blocks\Swatches.php:64
filterquery_loop_block_query_varsinc\Packages\Blocks\WishlistItems.php:17
filterrest_product_queryinc\Packages\Blocks\WishlistItems.php:24
actioninitinc\Packages\PackagesLoader.php:13
actioninitinc\Packages\PackagesLoader.php:15
actioninitinc\Packages\PackagesLoader.php:17
actionwp_enqueue_scriptsinc\Packages\PackagesLoader.php:20
actionenqueue_block_editor_assetsinc\Packages\PackagesLoader.php:21
actionenqueue_block_editor_assetsinc\Packages\PackagesLoader.php:22
actionenqueue_block_assetsinc\Packages\PackagesLoader.php:24
filterblock_categories_allinc\Packages\PackagesLoader.php:28
filterblock_type_metadatainc\Packages\PackagesLoader.php:30
filter__experimental_woocommerce_blocks_add_data_attributes_to_namespaceinc\Packages\PackagesLoader.php:32
filterscript_loader_taginc\Packages\PackagesLoader.php:41
actionwp_loadedinc\Patterns\PatternsLoader.php:12
actioninitinc\Patterns\PatternsLoader.php:13
actionadmin_footerinc\Register\RegisterDev.php:15
actioninitinc\Register\RegisterDev.php:17
filterscript_loader_taginc\Register\RegisterFacade.php:16
actioninitinc\Register\RegisterFacade.php:17
actioninitinc\Register\RegisterProd.php:13
actionwp_enqueue_scriptsinc\Services\CompareProducts.php:15
actionwp_footerinc\Services\CompareProducts.php:16
filterrender_blockinc\Services\IconCssService.php:1573
actionwp_footerinc\Services\IconCssService.php:1576
actionwp_enqueue_scriptsinc\Wishlist.php:30
filterbrandy_wishlist_items_countinc\Wishlist.php:32
actionbrandy_wishlist_itemsinc\Wishlist.php:36
Maintenance & Trust

Brandy Blocks Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedApr 14, 2026
PHP min version5.7
Downloads6K

Community Trust

Rating0/100
Number of ratings0
Active installs40
Developer Profile

Brandy Blocks Developer Profile

YayCommerce

16 plugins · 78K total installs

77
trust score
Avg Security Score
97/100
Avg Patch Time
126 days
View full developer profile
Detection Fingerprints

How We Detect Brandy Blocks

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/brandy-blocks/assets/js/product-list-state.js/wp-content/plugins/brandy-blocks/assets/js/compare-state.js/wp-content/plugins/brandy-blocks/assets/js/compare-add-product-modal.js/wp-content/plugins/brandy-blocks/assets/js/compare-list.js/wp-content/plugins/brandy-blocks/inc/Packages/build/blocks/CompareTable/style-index.css
Script Paths
/wp-content/plugins/brandy-blocks/assets/js/product-list-state.js/wp-content/plugins/brandy-blocks/assets/js/compare-state.js/wp-content/plugins/brandy-blocks/assets/js/compare-add-product-modal.js/wp-content/plugins/brandy-blocks/assets/js/compare-list.js
Version Parameters
brandy-blocks/assets/js/product-list-state.js?ver=brandy-blocks/assets/js/compare-state.js?ver=brandy-blocks/assets/js/compare-add-product-modal.js?ver=brandy-blocks/assets/js/compare-list.js?ver=brandy-blocks/inc/Packages/build/blocks/CompareTable/style-index.css?ver=

HTML / DOM Fingerprints

CSS Classes
compare-table
Data Attributes
data-brandy-compare-list
JS Globals
brandyCompareList
REST Endpoints
/wp-json/brandy-blocks/v1/compare
FAQ

Frequently Asked Questions about Brandy Blocks