Move User Roles Security & Risk Analysis

wordpress.org/plugins/move-user-roles

Move User Roles WordPress plugin allow site admin to change users roles easily. Move site users from one user role to another user role in two steps.

10 active installs v1.1.3 PHP 5.6+ WP 5.1+ Updated Jan 1, 2024
changemoverolesswitchuser
85
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Move User Roles Safe to Use in 2026?

Generally Safe

Score 85/100

Move User Roles has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 2yr ago
Risk Assessment

The "move-user-roles" plugin v1.1.3 presents a mixed security posture. On the positive side, it demonstrates good practices by exclusively using prepared statements for SQL queries, avoiding file operations and external HTTP requests, and not bundling any libraries. The absence of any known historical vulnerabilities is also a strong indicator of good development and maintenance. However, a significant concern arises from the static analysis, which reveals a single AJAX handler that lacks proper authentication checks. This creates an exploitable entry point if an attacker can trigger this handler.

The taint analysis indicates no flows with unsanitized paths, which is reassuring. However, the incomplete output escaping (56% properly escaped) suggests a potential for cross-site scripting (XSS) vulnerabilities if user-supplied data is not consistently sanitized before being outputted. The lack of capability checks in conjunction with the unprotected AJAX handler further amplifies the risk of unauthorized actions being performed.

Overall, while the plugin benefits from a clean vulnerability history and secure database practices, the unprotected AJAX endpoint is a critical flaw that needs immediate attention. The partially unescaped output also represents a latent risk. Addressing these specific issues would significantly improve the plugin's security.

Key Concerns

  • Unprotected AJAX handler
  • Incomplete output escaping
  • Missing capability checks on AJAX
Vulnerabilities
None known

Move User Roles Security Vulnerabilities

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

Move User Roles Code Analysis

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

SQL Query Safety

100% prepared1 total queries

Output Escaping

56% escaped9 total outputs
Attack Surface
1 unprotected

Move User Roles Attack Surface

Entry Points1
Unprotected1

AJAX Handlers 1

authwp_ajax_mur_search_usersclass-move-user-roles-admin.php:64
WordPress Hooks 4
actionadmin_menuclass-move-user-roles-admin.php:59
actionadmin_enqueue_scriptsclass-move-user-roles-admin.php:60
actionadmin_enqueue_scriptsclass-move-user-roles-admin.php:61
actionadmin_initclass-move-user-roles-admin.php:63
Maintenance & Trust

Move User Roles Maintenance & Trust

Maintenance Signals

WordPress version tested6.4.8
Last updatedJan 1, 2024
PHP min version5.6
Downloads3K

Community Trust

Rating0/100
Number of ratings0
Active installs10
Developer Profile

Move User Roles Developer Profile

Alsvin Tech

3 plugins · 1K total installs

91
trust score
Avg Security Score
95/100
Avg Patch Time
30 days
View full developer profile
Detection Fingerprints

How We Detect Move User Roles

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/move-user-roles/css/jquery-multi-select.css/wp-content/plugins/move-user-roles/css/move-user-role-admin.css/wp-content/plugins/move-user-roles/js/jquery-multi-select.js/wp-content/plugins/move-user-roles/js/move-user-role-admin.js
Script Paths
https://cdn.jsdelivr.net/npm/select2@4.0.13/dist/js/select2.min.js
Version Parameters
move-user-role-admin.css?ver=jquery-multi-select.css?ver=select2.min.css?ver=jquery-multi-select.js?ver=select2.min.js?ver=move-user-role-admin.js?ver=

HTML / DOM Fingerprints

CSS Classes
alsvin-mur-container
Data Attributes
data-setting-menu-slugdata-plugin-name
JS Globals
move_user_roles_ajax_object
REST Endpoints
/wp-json/mur/v1/search_users
FAQ

Frequently Asked Questions about Move User Roles