User Switcher Security & Risk Analysis

wordpress.org/plugins/userswitcher

A helper tool to help you switch between user account without logging in and out.

100 active installs v2.0.0 PHP + WP 3.4+ Updated Dec 3, 2016
capabilitiesguestrolesuserusers
85
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is User Switcher Safe to Use in 2026?

Generally Safe

Score 85/100

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

No known CVEs Updated 9yr ago
Risk Assessment

The "userswitcher" v2.0.0 plugin exhibits a mixed security posture. On the positive side, it demonstrates good practices regarding SQL queries, exclusively using prepared statements, and ensures all output is properly escaped. It also appears to handle file operations and external HTTP requests securely, with no identified taint flows of critical or high severity. The lack of any recorded vulnerabilities or CVEs in its history is also a strong indicator of a well-maintained and secure codebase over time.

However, a significant concern arises from the unprotected AJAX handlers. With a total of 4 AJAX handlers, all of which lack authentication checks, this presents a substantial attack surface. Any user, regardless of their logged-in status or role, can trigger these actions, potentially leading to unauthorized operations. While the code signals don't explicitly show dangerous functions or raw SQL, the absence of capability checks on these AJAX endpoints is a critical oversight that could be exploited if the AJAX actions perform sensitive operations.

In conclusion, while "userswitcher" v2.0.0 excels in data handling and output sanitization, its security is severely compromised by the presence of multiple unprotected AJAX endpoints. This weakness outweighs the strengths, making it a high-risk plugin despite its clean vulnerability history and good SQL/output practices.

Key Concerns

  • Unprotected AJAX handlers
  • Lack of capability checks on AJAX
  • Large unprotected attack surface
Vulnerabilities
None known

User Switcher Security Vulnerabilities

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

User Switcher Code Analysis

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

SQL Query Safety

100% prepared3 total queries
Data Flows
All sanitized

Data Flow Analysis

1 flows
<userswitcher> (userswitcher.php:0)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
4 unprotected

User Switcher Attack Surface

Entry Points4
Unprotected4

AJAX Handlers 4

authwp_ajax_us_requestuserswitcher.php:115
noprivwp_ajax_us_requestuserswitcher.php:116
authwp_ajax_us_restore_accountuserswitcher.php:119
noprivwp_ajax_us_restore_accountuserswitcher.php:120
WordPress Hooks 10
actionplugins_loadeduserswitcher.php:81
actioninituserswitcher.php:86
actionwp_loginuserswitcher.php:89
actioncustomize_registeruserswitcher.php:92
actionadmin_bar_menuuserswitcher.php:102
actionwp_enqueue_scriptsuserswitcher.php:105
actionadmin_enqueue_scriptsuserswitcher.php:106
actionadmin_footeruserswitcher.php:109
actionwp_footeruserswitcher.php:110
filterwp_die_handleruserswitcher.php:112
Maintenance & Trust

User Switcher Maintenance & Trust

Maintenance Signals

WordPress version tested4.6.30
Last updatedDec 3, 2016
PHP min version
Downloads8K

Community Trust

Rating92/100
Number of ratings7
Active installs100
Developer Profile

User Switcher Developer Profile

irenem

1 plugin · 100 total installs

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

How We Detect User Switcher

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/userswitcher/style.min.css/wp-content/plugins/userswitcher/switch.min.js
Script Paths
/wp-content/plugins/userswitcher/switch.min.js
Version Parameters
userswitcher/style.min.css?ver=userswitcher/switch.min.js?ver=

HTML / DOM Fingerprints

CSS Classes
us-iconus-main-menuus-guest-userus-switch-backus-search-usersuser-switcher-contentus-close-iconus-search-key+11 more
Data Attributes
id="user-switcher-window"id="us-no-admin-bar"id="us-no-admin-bar-admin"type="text/template"
JS Globals
userSwitcher
REST Endpoints
/wp-json/us_request
FAQ

Frequently Asked Questions about User Switcher