Description
The WP Visitor Statistics (Real Time Traffic) plugin for WordPress is vulnerable to SQL Injection via the 'from' (and sibling 'to'/'first'/'second') shortcode attribute of the [wsm_showTrafficStatsList] shortcode in versions up to, and including, 8.8 This is due to insufficient escaping on the user-supplied attribute and lack of sufficient preparation on the existing SQL query: `shortcode_atts()` returns attacker-supplied shortcode attributes verbatim (WP core performs no sanitization), only `$atts['id']` is re-sanitized afterward, and the raw value is then concatenated into a double-quoted SQL string literal inside `fnGetHourlyReportByDateNameTimeZone()` (`includes/wsm_db.php:1449`) and executed via `$wpdb->get_results()`. This makes it possible for authenticated attackers, with Contributor-level access and above, to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database.
Published: 2026-10-28
Score: 6.5 Medium
EPSS: n/a
KEV: No
Impact: Data Exposure via SQL Injection
Action: Apply Patch
AI Analysis

Impact

The WP Visitor Statistics (Real Time Traffic) plugin for WordPress allows authenticated users with Contributor level or higher to trigger a SQL Injection via the ’from’ attribute of the [wsm_showTrafficStatsList] shortcode. The issue stems from insufficient escaping and concatenation of the raw attribute value into a double‑quoted SQL string, enabling attackers to inject arbitrary SQL into queries executed by $wpdb->get_results(). As a result, a malicious contributor can extract sensitive database contents, including user credentials, posts, or other private data. This flaw does not provide remote code execution, but it does allow data exfiltration and potential privilege escalation if exploitation leads to further compromise.

Affected Systems

The vulnerability affects the WP Visitor Statistics (Real Time Traffic) plugin, version 8.8 and prior. The plugin is authored by osamaesh and distributed through the WordPress plugin repository. Any WordPress installation running this plugin up to 8.8 with a contributor‑level or higher account is susceptible.

Risk and Exploitability

The CVSS score of 6.5 indicates moderate severity, and the EPSS score is not available, so the current probability of exploitation is unknown. The vulnerability is not listed in the CISA KEV catalog. Attackers must first authenticate to the WordPress site with a contributor or higher role, then craft malicious values for the ’from’ attribute to append rogue SQL fragments. Once the injection succeeds, the attacker can read arbitrary tables. Given the lack of publicly released exploit code and the requirement for authenticated access, the risk is moderate but still significant for sites with exposed contributor accounts.

Generated by OpenCVE AI on October 28, 2026 at 08:41 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade to the latest version of WP Visitor Statistics (version 8.9 or later) to eliminate the flaw
  • If an upgrade is not possible, immediately disable the [wsm_showTrafficStatsList] shortcode or remove the plugin to block the vulnerable functionality
  • Restrict or remove Contributor roles from users who do not need them, and monitor database logs for suspicious query activity

Generated by OpenCVE AI on October 28, 2026 at 08:41 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 28 Oct 2026 07:00:00 +0000

Type Values Removed Values Added
Description The WP Visitor Statistics (Real Time Traffic) plugin for WordPress is vulnerable to SQL Injection via the 'from' (and sibling 'to'/'first'/'second') shortcode attribute of the [wsm_showTrafficStatsList] shortcode in versions up to, and including, 8.8 This is due to insufficient escaping on the user-supplied attribute and lack of sufficient preparation on the existing SQL query: `shortcode_atts()` returns attacker-supplied shortcode attributes verbatim (WP core performs no sanitization), only `$atts['id']` is re-sanitized afterward, and the raw value is then concatenated into a double-quoted SQL string literal inside `fnGetHourlyReportByDateNameTimeZone()` (`includes/wsm_db.php:1449`) and executed via `$wpdb->get_results()`. This makes it possible for authenticated attackers, with Contributor-level access and above, to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database.
Title WP Visitor Statistics (Real Time Traffic) <= 8.8 - Authenticated (Contributor+) SQL Injection via 'from' Shortcode Attribute
Weaknesses CWE-89
References
Metrics cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: Wordfence

Published:

Updated: 2026-10-28T06:45:04.986Z

Reserved: 2026-10-26T16:14:14.866Z

Link: CVE-2026-116609

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-28T07:16:47.287

Modified: 2026-10-28T07:16:47.287

Link: CVE-2026-116609

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-28T08:45:14Z

Weaknesses
  • CWE-89

    Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')