CVE-2025-30813 Overview
CVE-2025-30813 is a stored cross-site scripting (XSS) vulnerability in the Listamester WordPress plugin. The flaw affects all versions of Listamester up to and including 2.3.5. An authenticated attacker with low privileges can inject malicious JavaScript that persists in the application and executes in the browsers of users who view the affected pages.
The vulnerability falls under [CWE-79] (Improper Neutralization of Input During Web Page Generation). Because the injected payload is stored server-side, exploitation requires only that a victim load a page rendering the tainted content.
Critical Impact
An authenticated attacker can execute arbitrary JavaScript in the context of any user visiting affected pages, enabling session theft, forced administrative actions, and content defacement.
Affected Products
- Listamester WordPress plugin versions through 2.3.5
- WordPress installations with the plugin activated
- Any site rendering Listamester-generated content to authenticated administrators or visitors
Discovery Timeline
- 2025-03-27 - CVE-2025-30813 published to the National Vulnerability Database
- 2026-06-17 - Last updated in NVD database
Technical Details for CVE-2025-30813
Vulnerability Analysis
The vulnerability stems from improper neutralization of user-supplied input before it is written into web pages generated by the Listamester plugin. The plugin accepts input from a low-privileged authenticated user and stores it without adequate sanitization or output encoding. When another user renders the affected view, the browser interprets the stored payload as executable JavaScript.
Exploitation requires user interaction, and the impact crosses a security boundary because scripts run in the origin of the WordPress site. A successful attack can hijack sessions, perform actions on behalf of authenticated users, exfiltrate sensitive form data, or pivot toward administrator account compromise if an admin views the poisoned content.
Root Cause
The plugin fails to apply WordPress sanitization functions such as sanitize_text_field() on input and appropriate escaping helpers such as esc_html(), esc_attr(), or wp_kses_post() on output. As a result, HTML and script tags submitted by an attacker are persisted verbatim and rendered as active markup.
Attack Vector
The attack vector is network-based and requires an authenticated contributor-level or higher account, depending on which plugin feature exposes the vulnerable input field. The attacker submits a payload containing script tags or event handler attributes through a plugin form. The payload is stored in the WordPress database and later delivered to any user who views the rendered page.
No verified proof-of-concept code is publicly available. See the Patchstack XSS Vulnerability Advisory for additional technical details.
Detection Methods for CVE-2025-30813
Indicators of Compromise
- Unexpected <script> tags, javascript: URIs, or DOM event handlers such as onerror and onload stored in Listamester-related database tables
- Outbound requests from browser sessions to attacker-controlled domains following visits to Listamester-rendered pages
- New or modified WordPress administrator accounts created shortly after admins accessed plugin pages
Detection Strategies
- Query the WordPress database for Listamester post meta and options containing HTML tags or script keywords
- Review web server access logs for POST requests to Listamester endpoints containing encoded script payloads
- Deploy a web application firewall rule set that flags XSS patterns targeting plugin-specific parameters
Monitoring Recommendations
- Enable WordPress audit logging to capture content changes made by contributor and author roles
- Monitor browser Content Security Policy (CSP) violation reports for inline script execution on plugin pages
- Alert on administrative account changes, role escalations, and new user creation events
How to Mitigate CVE-2025-30813
Immediate Actions Required
- Update the Listamester plugin to a version above 2.3.5 once a patched release is available from the vendor
- Deactivate and remove the plugin if a patched version is not yet published and the functionality is not essential
- Audit contributor, author, and editor accounts and remove any that are unused or unrecognized
Patch Information
No fixed version is documented in the enriched data at time of publication. Consult the Patchstack XSS Vulnerability Advisory for the latest remediation status and vendor guidance.
Workarounds
- Restrict Listamester plugin capabilities to trusted administrators only through role management
- Deploy a web application firewall with rules that block script tags and event handler injection in plugin request parameters
- Enforce a strict Content Security Policy that disallows inline scripts to limit stored XSS execution
# Example restrictive Content-Security-Policy header for WordPress
Header set Content-Security-Policy "default-src 'self'; script-src 'self'; object-src 'none'; base-uri 'self'; frame-ancestors 'self'"
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

