WP-UserOnline Security & Risk Analysis

wordpress.org/plugins/wp-useronline

Enable you to display how many users are online on your Wordpress blog with detailed statistics.

10K active installs v2.88.9 PHP + WP 4.6+ Updated Jan 11, 2025
onlineuseronlineusersonlinewidgetwp-useronline
89
A · Safe
CVEs total4
Unpatched0
Last CVENov 6, 2023
Safety Verdict

Is WP-UserOnline Safe to Use in 2026?

Generally Safe

Score 89/100

WP-UserOnline has a strong security track record. Known vulnerabilities have been patched promptly.

4 known CVEsLast CVE: Nov 6, 2023Updated 1yr ago
Risk Assessment

The wp-useronline plugin v2.88.9 presents a moderate security risk due to a combination of static analysis findings and its historical vulnerability pattern. While it shows some positive signs like zero critical unpatched CVEs and a relatively low percentage of SQL queries without prepared statements, several areas raise significant concerns. The presence of two unprotected AJAX handlers creates a substantial attack surface that could be exploited by unauthenticated users. Furthermore, the taint analysis reveals six high-severity flows with unsanitized paths, indicating a strong potential for serious vulnerabilities if these flows are not properly handled. The plugin's history of four CVEs, including two high and two medium severity vulnerabilities, with the most recent in late 2023, suggests a recurring pattern of security weaknesses that have required patching.

Despite the absence of dangerous functions and file operations, the high number of unsanitized paths in the taint analysis coupled with unprotected entry points points towards a need for more robust input validation and output escaping. The fact that 68% of outputs are not properly escaped, combined with high-severity taint flows, creates a significant risk of cross-site scripting (XSS) or other injection attacks. While the plugin has a history of addressing vulnerabilities, the ongoing discovery of high-severity issues indicates that the development practices may not consistently prioritize security. Overall, the plugin's security posture is concerning due to the combination of exploitable entry points, critical taint flows, and a history of security flaws, requiring careful attention and potential mitigation.

Key Concerns

  • Unprotected AJAX handlers
  • High severity taint flows
  • Poor output escaping
  • Vulnerability history (High severity)
  • Vulnerability history (Medium severity)
Vulnerabilities
4

WP-UserOnline Security Vulnerabilities

CVEs by Year

1 CVE in 2010
2010
2 CVEs in 2022
2022
1 CVE in 2023
2023
Patched Has unpatched

Severity Breakdown

High
2
Medium
2

4 total CVEs

CVE-2023-5560high · 7.2Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP-UserOnline <= 2.88.2 - Unauthenticated Stored Cross-Site Scripting

Nov 6, 2023 Patched in 2.88.3 (78d)
CVE-2022-2941medium · 5.5Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP-UserOnline <= 2.88.0 - Authenticated (Admin+) Stored Cross-Site Scripting

Aug 22, 2022 Patched in 2.88.1 (519d)
CVE-2022-2473medium · 5.5Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP-UserOnline <= 2.87.6 - Authenticated (Admin+) Stored Cross-Site Scripting

Jul 19, 2022 Patched in 2.88.0 (553d)
WF-c79587d8-56a9-4c1c-99dc-bc66194ffe52-wp-useronlinehigh · 7.2Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP-UserOnline < 2.70 - Cross-Site Scripting

Jul 1, 2010 Patched in 2.70 (4954d)
Code Analysis
Analyzed Mar 16, 2026

WP-UserOnline Code Analysis

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

SQL Query Safety

38% prepared16 total queries

Output Escaping

32% escaped66 total outputs
Data Flows
7 unsanitized

Data Flow Analysis

7 flows7 with unsanitized paths
ajax (core.php:158)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
2 unprotected

WP-UserOnline Attack Surface

Entry Points3
Unprotected2

AJAX Handlers 2

authwp_ajax_useronlinecore.php:32
noprivwp_ajax_useronlinecore.php:33

Shortcodes 1

[page_useronline] core.php:35
WordPress Hooks 22
actionrightnow_endadmin.php:17
actionplugins_loadedcore.php:25
actionadmin_headcore.php:27
actionwp_headcore.php:28
actionwp_footercore.php:30
filteruseronline_display_usercore.php:38
action_admin_menuscb\AdminPage.php:62
actionadmin_initscb\AdminPage.php:135
actionadmin_menuscb\AdminPage.php:138
actionadmin_noticesscb\AdminPage.php:245
filtercron_schedulesscb\Cron.php:61
actionactivate_pluginscb\load.php:39
actioninitscb\load.php:45
actionload-post.phpscb\PostMetabox.php:64
actionload-post-new.phpscb\PostMetabox.php:65
actionadd_meta_boxesscb\PostMetabox.php:86
actionsave_postscb\PostMetabox.php:87
actionwidgets_initscb\Widget.php:31
actionplugins_loadedwp-stats.php:20
filterwp_stats_page_admin_pluginswp-stats.php:44
filterwp_stats_page_pluginswp-stats.php:45
actionplugins_loadedwp-useronline.php:94
Maintenance & Trust

WP-UserOnline Maintenance & Trust

Maintenance Signals

WordPress version tested6.7.5
Last updatedJan 11, 2025
PHP min version
Downloads959K

Community Trust

Rating92/100
Number of ratings37
Active installs10K
Developer Profile

WP-UserOnline Developer Profile

Lester Chan

20 plugins · 889K total installs

71
trust score
Avg Security Score
89/100
Avg Patch Time
1377 days
View full developer profile
Detection Fingerprints

How We Detect WP-UserOnline

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/wp-useronline/scb/JS/scb.js/wp-content/plugins/wp-useronline/useronline.js
Script Paths
/wp-content/plugins/wp-useronline/scb/JS/scb.js/wp-content/plugins/wp-useronline/useronline.js
Version Parameters
wp-useronline/useronline.js?ver=

HTML / DOM Fingerprints

JS Globals
useronlineL10n
Shortcode Output
[page_useronline]
FAQ

Frequently Asked Questions about WP-UserOnline