Material Design for WordPress Security & Risk Analysis

wordpress.org/plugins/material-design

The official Material Design plugin for WordPress. Customize your site’s navigation, colors, typography, and shapes, use Material Components, and choo …

800 active installs v0.7.0 PHP + WP 5.9+ Updated Dec 12, 2022
blocksgooglegutenbergmaterial-designmaterial-theming
85
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Material Design for WordPress Safe to Use in 2026?

Generally Safe

Score 85/100

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

No known CVEs Updated 3yr ago
Risk Assessment

The 'material-design' plugin version 0.7.0 exhibits a generally good security posture, adhering to several best practices. The static analysis shows a high percentage of properly escaped outputs and a complete absence of raw SQL queries, indicating robust data handling. Furthermore, the plugin has no recorded vulnerabilities or CVEs, suggesting a history of stable and secure development. However, there are two AJAX handlers that lack authentication checks, creating a potential entry point for unauthorized actions. While no critical or high-severity taint flows were identified, the presence of unprotected AJAX endpoints warrants attention.

Key Concerns

  • AJAX handlers without authentication
Vulnerabilities
None known

Material Design for WordPress Security Vulnerabilities

No known vulnerabilities — this is a good sign.
Code Analysis
Analyzed Mar 16, 2026

Material Design for WordPress Code Analysis

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

SQL Query Safety

100% prepared2 total queries

Output Escaping

97% escaped292 total outputs
Data Flows
All sanitized

Data Flow Analysis

2 flows
manage_recaptcha_api_credentials (php\blocks\class-contact-form-block.php:250)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
2 unprotected

Material Design for WordPress Attack Surface

Entry Points6
Unprotected2

AJAX Handlers 6

authwp_ajax_material_design_submit_contact_formphp\blocks\class-contact-form-block.php:50
noprivwp_ajax_material_design_submit_contact_formphp\blocks\class-contact-form-block.php:51
authwp_ajax_material_design_manage_recaptcha_api_credentialsphp\blocks\class-contact-form-block.php:52
authwp_ajax_m3_migrate_colorsphp\class-migration.php:53
authwp_ajax_material_m3_noticephp\class-migration.php:54
authwp_ajax_material_design_notification_dismissphp\customizer\class-controls.php:82
WordPress Hooks 39
actionplugins_loadedmaterial-design.php:60
actionadmin_noticesmaterial-design.php:79
actionadmin_initphp\admin\class-admin-updates.php:47
actioninitphp\blocks\class-blocks.php:52
filterrest_post_collection_paramsphp\blocks\class-posts-list-block.php:66
actioninitphp\blocks\class-posts-list-block.php:67
actionadmin_initphp\class-admin.php:41
actionadmin_menuphp\class-admin.php:42
actionadmin_enqueue_scriptsphp\class-admin.php:43
actionswitch_themephp\class-admin.php:44
actionadmin_noticesphp\class-admin.php:45
actionadmin_noticesphp\class-admin.php:46
actioninitphp\class-block-patterns.php:53
actioninitphp\class-block-types.php:76
actionenqueue_block_editor_assetsphp\class-block-types.php:77
filterblock_categories_allphp\class-block-types.php:80
filterblock_categoriesphp\class-block-types.php:82
actionwp_enqueue_scriptsphp\class-blocks-frontend.php:40
actionwp_headphp\class-frontend.php:39
filtersafe_style_cssphp\class-importer.php:657
actionadmin_initphp\class-migration.php:48
actionadmin_initphp\class-migration.php:49
actionadmin_initphp\class-migration.php:50
actionadmin_noticesphp\class-migration.php:51
actionadmin_enqueue_scriptsphp\class-migration.php:178
actionwp_enqueue_scriptsphp\class-plugin.php:210
actionwp_enqueue_scriptsphp\class-plugin.php:211
actionwp_headphp\class-plugin.php:212
actionadmin_headphp\class-plugin.php:213
actionplugin_row_metaphp\class-plugin.php:214
actioncustomize_registerphp\customizer\class-controls.php:77
actioncustomize_controls_enqueue_scriptsphp\customizer\class-controls.php:78
actioncustomize_preview_initphp\customizer\class-controls.php:79
actioncustomize_controls_print_footer_scriptsphp\customizer\class-controls.php:80
actioncustomize_sanitize_js_material_design_notifyphp\customizer\class-controls.php:81
filtermaterial_design_customizer_section_argsphp\customizer\class-controls.php:84
actionrest_api_initphp\rest\class-api-base.php:64
actionrest_api_initphp\rest\class-design-assets-rest-controller.php:62
filterwp_insert_post_dataphp\rest\class-reset-card-style-rest-controller.php:93
Maintenance & Trust

Material Design for WordPress Maintenance & Trust

Maintenance Signals

WordPress version tested6.0.11
Last updatedDec 12, 2022
PHP min version
Downloads31K

Community Trust

Rating82/100
Number of ratings8
Active installs800
Developer Profile

Material Design for WordPress Developer Profile

XWP

16 plugins · 118K total installs

74
trust score
Avg Security Score
93/100
Avg Patch Time
482 days
View full developer profile
Detection Fingerprints

How We Detect Material Design for WordPress

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/material-design/build/css/material-design-global.css/wp-content/plugins/material-design/build/js/material-design-global.js

HTML / DOM Fingerprints

CSS Classes
mdc-buttonmdc-text-fieldmdc-cardmaterial-iconsmdc-toolbarmdc-drawer
HTML Comments
<!-- Site Heading --><!-- Main Navigation --><!-- Footer -->
Data Attributes
data-mdc-auto-initdata-material-theme
JS Globals
mdcMaterialDesign
Shortcode Output
[mdc_button][mdc_text_field][mdc_card]
FAQ

Frequently Asked Questions about Material Design for WordPress