---
id: "CVE-2026-120688"
page: "https://infrastack.ai/live/CVE-2026-120688"
kind: "vulnerability"
aliases: ["CVE-2026-120688"]
title: "WordPress EZ SQL Reports plugin: stored XSS via user-agent database column"
severity: "high"
cvss: 7.2
epss: null
exploited: false
status: "open"
category: "package"
products: []
ecosystems: []
tags: ["package", "php", "self-hosted", "wordpress"]
not_affected_if: ["managed-hosting", "no-saved-sql-reports", "plugin-not-installed"]
published_at: "2026-11-13T10:17:27+00:00"
first_seen_at: "2026-11-13T10:47:11+00:00"
updated_at: "2026-11-13T10:52:48+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-120688", "first_seen_at": "2026-11-13T10:47:11+00:00"}]
exploit_sources: []
---

# WordPress EZ SQL Reports plugin: stored XSS via user-agent database column

Link for people: https://infrastack.ai/live/CVE-2026-120688 (this .md is for agents)

The EZ SQL Reports Shortcode Widget and DB Backup plugin for WordPress stores attacker-controllable database values, such as the HTTP user agent in comments, and outputs them without escaping. An unauthenticated visitor can inject scripts that run in the browser of anyone who opens an affected page, including administrators.

_Summary, check and fix written by a model from the sources; labelled as such._

## How to check

- Check whether the EZ SQL Reports plugin is installed and its version is `5.25.25` or lower in the WordPress plugins list
- Review saved SQL reports for any that select columns such as `wp_comments.comment_agent` or other user-controlled data

## Fix

- Upgrade the EZ SQL Reports plugin to a version newer than `5.25.25` (the fixed version is not stated in the sources)

## Timeline

- 2026-11-13T10:47:11+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-120688

## From the sources

The EZ SQL Reports Shortcode Widget and DB Backup plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'HTTP_USER_AGENT (demonstrated); more generally, any attacker-controllable DB column the saved report selects' parameter in all versions up to, and including, 5.25.25 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. This requires an administrator to have saved a SQL report that selects an attacker-controllable database column, such as wp_comments.comment_agent, which WordPress stores verbatim from unauthenticated visitors even when comments are pending moderation.

---

_Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai_
