
XMPP Statistics Security & Risk Analysis
wordpress.org/plugins/xmpp-statisticsDisplays the statistics from ejabberd XMPP server through ReST API.
Is XMPP Statistics Safe to Use in 2026?
Generally Safe
Score 92/100XMPP Statistics has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.
The "xmpp-statistics" plugin version 1.12 presents a significant security risk primarily due to its extensive unprotected REST API routes. With 26 out of 26 REST API routes lacking permission callbacks, any unauthenticated user can potentially interact with these endpoints, leading to unauthorized data access or manipulation. The lack of nonce checks, capability checks, and dangerously low output escaping (8%) further exacerbates this vulnerability. The plugin also exhibits poor SQL query practices, with 51 queries entirely lacking prepared statements, which opens it up to SQL injection attacks. Despite a clean vulnerability history with no recorded CVEs, this does not negate the inherent risks posed by the code's current state. The plugin's static analysis reveals a large attack surface with a high proportion of unprotected entry points (26 out of 52). While no critical taint flows or dangerous functions were identified, the identified weaknesses represent a substantial security concern. The plugin needs immediate attention to implement proper authentication and authorization for its REST API, as well as address its SQL query and output escaping vulnerabilities.
Key Concerns
- Unprotected REST API routes
- No capability checks
- Low output escaping percentage
- Raw SQL queries without prepared statements
- Unprotected AJAX handlers
- No nonce checks
XMPP Statistics Security Vulnerabilities
XMPP Statistics Code Analysis
SQL Query Safety
Output Escaping
Data Flow Analysis
XMPP Statistics Attack Surface
REST API Routes 26
Shortcodes 26
WordPress Hooks 33
Scheduled Events 1
Maintenance & Trust
XMPP Statistics Maintenance & Trust
Maintenance Signals
Community Trust
XMPP Statistics Alternatives
Ejabberd Account Tools
ejabberd-account-tools
Provides a set of useful tools for the ejabberd server, both for the frontend and backend spaces
ConverseJS
conversejs
Converse.js is an open source webchat client, that runs in the browser and can be integrated into any website.
P3chat
p3chat
This plugin provides support for p3chat.com online chat service on Your wordpress website.
XMPP Authentication
xmpp-auth
Allows users to authenticate without password via XMPP and for visitors to be filtered by XMPP verification.
Custom Google Talk Chatback
custom-google-talk-chatback
Easily embed Goole Talk Chatback on your site for online chat support. Widget, Shortcode and Template Tag support!
XMPP Statistics Developer Profile
7 plugins · 420 total installs
How We Detect XMPP Statistics
Patterns used to identify this plugin on WordPress sites during automated security audits and web crawling.
Asset Fingerprints
/wp-content/plugins/xmpp-statistics/css/style.min.css/wp-content/plugins/xmpp-statistics/js/flot/jquery.canvaswrapper.js/wp-content/plugins/xmpp-statistics/js/flot/jquery.colorhelpers.js/wp-content/plugins/xmpp-statistics/js/flot/jquery.flot.js/wp-content/plugins/xmpp-statistics/js/flot/jquery.flot.browser.js/wp-content/plugins/xmpp-statistics/js/flot/jquery.flot.drawSeries.js/wp-content/plugins/xmpp-statistics/js/flot/jquery.flot.hover.js/wp-content/plugins/xmpp-statistics/js/flot/jquery.flot.resize.js+4 morejs/flot/jquery.canvaswrapper.jsjs/flot/jquery.colorhelpers.jsjs/flot/jquery.flot.jsjs/flot/jquery.flot.browser.jsjs/flot/jquery.flot.drawSeries.jsjs/flot/jquery.flot.hover.js+5 morexmpp-statistics/css/style.min.css?ver=xmpp-statistics/js/flot/jquery.canvaswrapper.js?ver=xmpp-statistics/js/flot/jquery.colorhelpers.js?ver=xmpp-statistics/js/flot/jquery.flot.js?ver=xmpp-statistics/js/flot/jquery.flot.browser.js?ver=xmpp-statistics/js/flot/jquery.flot.drawSeries.js?ver=xmpp-statistics/js/flot/jquery.flot.hover.js?ver=xmpp-statistics/js/flot/jquery.flot.resize.js?ver=xmpp-statistics/js/flot/jquery.flot.saturated.js?ver=xmpp-statistics/js/flot/jquery.flot.time.js?ver=xmpp-statistics/js/flot/jquery.flot.uiConstants.js?ver=xmpp-statistics/js/jquery.xmpp-stats-charts.min.js?ver=HTML / DOM Fingerprints
xmpp-stats-chart-titlexmpp-stats-chartloaderdata-action="online-users-daily-chart"data-action="online-users-weekly-chart"data-action="registered-users-daily-chart"data-action="registered-users-weekly-chart"data-action="uptime-daily-chart"data-action="uptime-weekly-chart"+10 morexmpp_stats/wp-json/xmpp-statistics/online-users-daily-chart/wp-json/xmpp-statistics/online-users-weekly-chart/wp-json/xmpp-statistics/registered-users-daily-chart/wp-json/xmpp-statistics/registered-users-weekly-chart/wp-json/xmpp-statistics/uptime-daily-chart/wp-json/xmpp-statistics/uptime-weekly-chart/wp-json/xmpp-statistics/system-uptime-daily-chart/wp-json/xmpp-statistics/system-uptime-weekly-chart/wp-json/xmpp-statistics/memory-usage-daily-chart/wp-json/xmpp-statistics/memory-usage-weekly-chart/wp-json/xmpp-statistics/disk-usage-daily-chart/wp-json/xmpp-statistics/disk-usage-weekly-chart/wp-json/xmpp-statistics/xmpp-s2s-out-daily-chart/wp-json/xmpp-statistics/xmpp-s2s-out-weekly-chart/wp-json/xmpp-statistics/xmpp-s2s-in-daily-chart/wp-json/xmpp-statistics/xmpp-s2s-in-weekly-chart<div class="xmpp-stats-chart-title">__('Logged in users', 'xmpp-statistics') - __('by day', 'xmpp-statistics')</div><div data-action="online-users-daily-chart" class="xmpp-stats-chart" style="max-width:<div class="xmpp-stats-chart-title">__('Logged in users', 'xmpp-statistics') - __('by week', 'xmpp-statistics')</div><div data-action="online-users-weekly-chart" class="xmpp-stats-chart" style="max-width:<div class="xmpp-stats-chart-title">__('Registered users', 'xmpp-statistics') - __('by day', 'xmpp-statistics')</div><div data-action="registered-users-daily-chart" class="xmpp-stats-chart" style="max-width:<div class="xmpp-stats-chart-title">__('Registered users', 'xmpp-statistics') - __('by week', 'xmpp-statistics')</div><div data-action="registered-users-weekly-chart" class="xmpp-stats-chart" style="max-width: