Smart Blocks – WordPress Gutenberg Blocks Security & Risk Analysis

wordpress.org/plugins/smart-blocks

Collection of advanced blocks to be used with WordPress Gutenberg Pagebuilder

1K active installs v2.8 PHP 7.2+ WP 6.3+ Updated Dec 7, 2025
blockblocksgutenberggutenberg-blockswordpress-blocks
98
A · Safe
CVEs total2
Unpatched0
Last CVESep 22, 2025
Download
Safety Verdict

Is Smart Blocks – WordPress Gutenberg Blocks Safe to Use in 2026?

Generally Safe

Score 98/100

Smart Blocks – WordPress Gutenberg Blocks has a strong security track record. Known vulnerabilities have been patched promptly.

2 known CVEsLast CVE: Sep 22, 2025Updated 3mo ago
Risk Assessment

The "smart-blocks" plugin v2.8 exhibits a mixed security posture. On the positive side, the static analysis reveals good practices in handling SQL queries with prepared statements and a high percentage of properly escaped output, minimizing the risk of Cross-Site Scripting vulnerabilities in general output. The plugin also implements nonces and capability checks for some of its entry points, and importantly, there are no currently unpatched known CVEs.

However, significant concerns arise from the attack surface analysis. Two of the four identified entry points, specifically two REST API routes, lack permission callbacks. This represents a direct security risk as unauthenticated users could potentially interact with these endpoints, leading to unintended actions or information disclosure if any logic within them is vulnerable. While the taint analysis shows no critical or high severity unsanitized flows, the lack of authorization on REST API routes creates a potential pathway for exploitation that is not immediately obvious from taint flows alone.

The vulnerability history indicates a past of medium-severity issues, including Missing Authorization and Cross-Site Scripting. The presence of these past vulnerabilities, even if currently patched, suggests a tendency for such issues to arise in this plugin. The fact that two medium vulnerabilities were recorded, even if no longer present, warrants continued vigilance, especially in conjunction with the newly identified lack of authorization on REST API routes. The overall conclusion is that while the plugin has made progress in some areas of secure coding, the critical gap in REST API authentication presents a notable risk that requires immediate attention.

Key Concerns

  • REST API routes without permission callbacks
  • Previous medium vulnerabilities (Missing Authorization)
  • Previous medium vulnerabilities (XSS)
Vulnerabilities
2

Smart Blocks – WordPress Gutenberg Blocks Security Vulnerabilities

CVEs by Year

1 CVE in 2024
2024
1 CVE in 2025
2025
Patched Has unpatched

Severity Breakdown

Medium
2

2 total CVEs

CVE-2025-59561medium · 4.3Missing Authorization

Smart Blocks <= 2.4 - Missing Authorization

Sep 22, 2025 Patched in 2.5 (5d)
CVE-2024-49270medium · 6.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Smart Blocks <= 2.0 - Authenticated (Contributor+) Stored Cross-Site Scripting

Oct 14, 2024 Patched in 2.1 (5d)
Code Analysis
Analyzed Mar 16, 2026

Smart Blocks – WordPress Gutenberg Blocks Code Analysis

Dangerous Functions
0
Raw SQL Queries
0
2 prepared
Unescaped Output
5
175 escaped
Nonce Checks
3
Capability Checks
6
File Operations
3
External Requests
3
Bundled Libraries
0

SQL Query Safety

100% prepared2 total queries

Output Escaping

97% escaped180 total outputs
Data Flows
All sanitized

Data Flow Analysis

2 flows
sb_blocks_save (smart-blocks.php:103)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
2 unprotected

Smart Blocks – WordPress Gutenberg Blocks Attack Surface

Entry Points4
Unprotected2

AJAX Handlers 2

authwp_ajax_admin_settings_savesmart-blocks.php:69
authwp_ajax_sb_blocks_savesmart-blocks.php:70

REST API Routes 2

GET/wp-json/smart-blocks/v1/fetch_templatesinc\template-library.php:10
GET/wp-json/smart-blocks/v1/import_templateinc\template-library.php:20
WordPress Hooks 25
actionwpinc\generate-css.php:24
actionrender_blockinc\generate-css.php:27
filterwidget_block_contentinc\generate-css.php:31
actionwp_footerinc\generate-css.php:35
actionrest_api_initinc\template-library.php:6
actiondelete_fonts_folderinc\wptt-webfont-loader.php:128
actioninitsmart-blocks.php:36
actioninitsmart-blocks.php:37
actionenqueue_block_editor_assetssmart-blocks.php:39
actioninitsmart-blocks.php:42
actionplugins_loadedsmart-blocks.php:45
filterblock_categories_allsmart-blocks.php:48
actionrest_api_initsmart-blocks.php:51
filterrest_post_collection_paramssmart-blocks.php:54
actionwp_loadedsmart-blocks.php:57
actionadmin_initsmart-blocks.php:58
actionadmin_enqueue_scriptssmart-blocks.php:59
actionenqueue_block_editor_assetssmart-blocks.php:61
filteradmin_body_classsmart-blocks.php:64
actionadmin_menusmart-blocks.php:67
actionwp_headsmart-blocks.php:72
actionadmin_headsmart-blocks.php:73
actioninitsmart-blocks.php:75
actionadmin_noticessmart-blocks.php:293
filterpage_templatesmart-blocks.php:423

Scheduled Events 1

delete_fonts_folder
Maintenance & Trust

Smart Blocks – WordPress Gutenberg Blocks Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedDec 7, 2025
PHP min version7.2
Downloads34K

Community Trust

Rating100/100
Number of ratings3
Active installs1K
Developer Profile

Smart Blocks – WordPress Gutenberg Blocks Developer Profile

hashthemes

19 plugins · 66K total installs

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

How We Detect Smart Blocks – WordPress Gutenberg Blocks

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/smart-blocks/inc/assets/css/owl.carousel.css/wp-content/plugins/smart-blocks/inc/assets/css/materialdesignicons.css/wp-content/plugins/smart-blocks/inc/assets/css/smart-blocks-icons.css/wp-content/plugins/smart-blocks/inc/assets/css/sb-style.css/wp-content/plugins/smart-blocks/inc/assets/css/editor.css/wp-content/plugins/smart-blocks/inc/assets/js/owl.carousel.js/wp-content/plugins/smart-blocks/inc/assets/js/sb-script.js/wp-content/plugins/smart-blocks/build/index.js
Script Paths
/wp-content/plugins/smart-blocks/build/index.js
Version Parameters
/wp-content/plugins/smart-blocks/inc/assets/css/owl.carousel.css?ver=/wp-content/plugins/smart-blocks/inc/assets/css/materialdesignicons.css?ver=/wp-content/plugins/smart-blocks/inc/assets/css/smart-blocks-icons.css?ver=/wp-content/plugins/smart-blocks/inc/assets/css/sb-style.css?ver=/wp-content/plugins/smart-blocks/inc/assets/css/editor.css?ver=/wp-content/plugins/smart-blocks/inc/assets/js/owl.carousel.js?ver=/wp-content/plugins/smart-blocks/inc/assets/js/sb-script.js?ver=/wp-content/plugins/smart-blocks/build/index.js?ver=

HTML / DOM Fingerprints

CSS Classes
sb-block-editorsb-style
Data Attributes
data-blocks-editordata-settings-editor
JS Globals
smartblocks
REST Endpoints
/wp-json/smart-blocks/v1/blocks
FAQ

Frequently Asked Questions about Smart Blocks – WordPress Gutenberg Blocks