CVE-2026-15780
Deferred Deferred - Pending Action

Stored XSS in WP Statistics WordPress Plugin

Vulnerability report for CVE-2026-15780, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-08-19

Last updated on: 2026-08-19

Assigner: Wordfence

Description

The WP Statistics – Simple, privacy-friendly Google Analytics alternative plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'utm_campaign' parameter in all versions up to, and including, 14.16.8 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. The payload can be planted without authentication via the public /wp-statistics/v2/hit REST endpoint, because the required signature is exposed on the public homepage and a base64-encoded page_uri POST parameter overrides the previously sanitized REQUEST_URI, allowing the malicious utm_campaign value to bypass sanitization and be stored in the database.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-08-19
Last Modified
2026-08-19
Generated
2026-09-08
AI Q&A
2026-08-19
EPSS Evaluated
2026-09-07
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
wp_statistics wp_statistics to 14.16.8 (inc)

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-79 The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability is a Stored Cross-Site Scripting (XSS) issue in the WP Statistics WordPress plugin. It allows unauthenticated attackers to inject malicious scripts via the 'utm_campaign' parameter due to insufficient input sanitization and output escaping. The payload is stored in the database and executes when users access infected pages through a public REST endpoint.

Detection Guidance

Check for suspicious entries in your WordPress database under the wp_statistics tables, particularly in the utm_campaign parameter. Review server access logs for unusual requests to /wp-statistics/v2/hit with base64-encoded page_uri parameters. Use WordPress security plugins to scan for stored XSS payloads in visitor or referral data.

Impact Analysis

An attacker could steal user sessions, redirect users to malicious sites, or perform actions on their behalf. Since the payload executes without authentication, any visitor to an infected page could be compromised. The attack is persistent as the malicious script remains stored in the database.

Compliance Impact

This vulnerability could lead to unauthorized data access or modification, violating GDPR's data protection principles and HIPAA's security requirements. It may result in data breaches, unauthorized processing of personal data, and failure to maintain integrity and confidentiality of sensitive information.

Mitigation Strategies

Update the WP Statistics plugin to version 14.16.9 or later immediately. Remove any suspicious scripts from the utm_campaign parameter in your database. Implement additional input sanitization at the server level for all user-supplied parameters in REST endpoints.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-15780. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart